py5_tools.screenshot()#
Take a screenshot of a running Sketch.
Examples#
import time
import py5_tools
py5.run_sketch(block=False)
# take a screenshot of the running sketch after a two second delay
time.sleep(2)
img = py5_tools.screenshot()
img.save('image.png')
Description#
Take a screenshot of a running Sketch.
The returned image is a PIL.Image
object. It can be assigned to a variable or embedded in the notebook.
By default the Sketch will be the currently running Sketch, as returned by get_current_sketch(). Use the sketch
parameter to specify a different running Sketch, such as a Sketch created using class mode.
This function will not work on a Sketch with no draw()
function that uses an OpenGL renderer such as P2D
or P3D
. Either add a token draw()
function or switch to the default JAVA2D
renderer.
If your Sketch has a post_draw()
method, use the hook_post_draw
parameter to make this function run after post_draw()
instead of draw()
. This is important when using Processing libraries that support post_draw()
such as Camera3D or ColorBlindness.
Signatures#
screenshot(
*,
sketch: Sketch = None, # running Sketch
hook_post_draw: bool = False # attach hook to Sketch's post_draw method instead of draw
) -> PIL_Image
Updated on March 18, 2024 05:08:14am UTC