Best of both worlds capture
There is no longer the need to make a choice about the way Screengrab! goes about its daily business. It used to be that if you wanted to capture Flash, you would use the Java setting, but Canvas for everything else. What a tedious chore!
Screengrab! now does all of the thinking itself. If it finds Flash or Java on a webpage, it will scroll that element into view and then capture just that bit with Java, seamlessly merging all of the pieces together with the main capture that it took with Canvas.
It works when copying to the clipboard too!
A bit of background
Screengrab! originally used Java to do all of its grabs, before the days of the Canvas element and, more importantly, the “toDataUrl” method. The complexity in doing it this way was, and still is, quite high – though more because of Firefox’s idiosynchracies than Java’s.
Using Java has a few negatives – for one, it requires you to have Java installed. I personally don’t see this as a problem. If you don’t have Java installed and configured in your browser then you might as well not have JavaScript enabled, or Flash working. Hell, you may as well just go get Netscape 4 or use Lynx.
The bigger problem is that the Java implementation had large memory requirements if the page was really long, to the point where it could exhaust its allocation and run out. That’s why it was troublesome previously. Now that it’s only ever used for tiny bits, the benefit of using it far outweighs any negatives.