I have seen projects where people are working on rendering the DOM
into a canvas:
http://html2canvas.hertzen.com/screenshots.html
(try the Google one - it's pretty impressive)
...and i wonder what would happen if you tried it on a jsPlumb page.
well, I tried it myself and got nothing, but that's because the UI is
initialised via JS. I mean if you tried it on an initialised page...i
think what would happen is that it would ignore the SVG elements but
possibly paint the DOM stuff.
It's possible that you could use that coupled with fabric.js:
https://github.com/kangax/fabric.js/
http://www.ernestdelgado.com/public-tests/canvasphoto/demo/canvas.html
..er, somehow. You'd obviously want them both to use the same canvas
so there'd have to be some rewriting of the code by you.
Anyway that's just a thought. I havent tried either of these things
myself. I'd like to sit down with them and try but I haven't got the
time right now.
Not possible right now. The way i do it is generate the report in another browser window and leave the exporting/printing to the user.
This is something that has been on the cards for a while but I'm kind of busy and it's not a priority.
i'm not sure what you mean about being worried about overlaps and how to deal with them. jsplumb does that for you. but i can see the appeal of a single canvas since you can export it to base64 easily. however, dont forget you dont get the nodes with that export. you'd still have to render a node representation into the canvas yourself.
also dont forget that not all browsers support canvas - ie8 still has a large user base - so relying purely on a client-side rendering solution is not necessarily an option for most people.