I notice that in your dual_canvas demo you have a utility function for generating a png from a canvas, with an example usage here invoked from a button click here.
Generating images from a canvas in the widget could be quite a common requirement, so would it make sense to for jp_proxy_widget, or a plugin to it, to offer a utility function supporting that natively?
I also have a use case where I am overlaying several canvases and want to grab a single image from those. The recipe here suggests one way of doing that; this suggests in turn an additional helper utility to make it easier grabbing a png from one or more canvases by way of a function that combines multiple canvases on one, and then saves the one as a png.