1) Get pyglet to render to an image instead of a screen. This seems
like the nicest approach, but I don't know if pyglet offers the
possibility of rendering to a PNG instead of an actual screen.
2) Display the slides with Bruce to the screen, and screen-grab to get
the image. I've looked into writing a plugin that simply uses PIL to
grab the screen. It would be added as the last element of each page, so
that when it is placed, it takes the grab. I can modify the slides to
add the plugin, and drive bruce to show each slide one at a time, and I
think I can even use win32 to find the location of the window to drive
PIL to get the right bits (whew!), but maybe there's a short-cut here?
3) Maybe there's another possibility?
I'm willing to hack almost any layer of the bruce stack to get the best
solution, but I'm a n00b at this code base, so don't know where the
grain of the wood lies.
--Ned.
--
Ned Batchelder, http://nedbatchelder.com
Hit control-S when you want a screenshot and a file screenshot-<random
number>.png will be written.
I'll add this to the README.txt :)
Richard
pyglet.image.get_buffer_manager().get_color_buffer().save('slide.png')looks really good, but when I try putting it in a plug-in, I get a number of blank PNGs, so it's clear that the place() method in a plugin is not the right point in the pipeline to capture the look of the slide.