From Jim.A.Graham at Sun.COM Wed Oct 3 17:29:31 2007 From: Jim.A.Graham at Sun.COM (Jim Graham) Date: Wed, 03 Oct 2007 17:29:31 -0700 Subject: [OpenJDK Rasterizer] Open Source rasterizer Message-ID: <0JPD0093H2OJMI30@fe-sfbay-10.sun.com> As Roman mentioned earlier, I've culled together some code from another Java project into a replacement for the encumbered Ductus renderer in the production JDK. This rasterizer is built from all of our own code so we can release it as part of the Open JDK project. Unfortunately, it isn't as fast as the existing Ductus binary plugs so some work will be needed to improve its speed, but it covers the entire API that we used to rely on Ductus for so we've removed the binary plugs from the Open Source version. Here are some known issues with the new rasterizer that need to be addressed: - Performance, performance, performance - It uses fixed point without much overflow detection/handling - It does not honor the STROKE_CONTROL hints so thin lines are vague In terms of performance, someone who is good with a code analyzer could have a field day, but here are some ideas that would be reasonably easy to investigate to see if they make a noticeable improvement in the performance: - reusing the Renderer and associated objects vs. recreating them - A better storage format for the PiscesCache for generating tiles - Tighter integration between the pixelization code and the cache - use floats in the line widening which should go faster on desktops I'm attaching a zip file of the sources for a sneak peek. These sources should appear in the public repository in a few days (just barely beating the temporary freeze for the Mercurial transition). I'd recommend anyone interested in playing with this code to join the "Graphics-Rasterizer-Dev" list on openjdk: http://mail.openjdk.java.net/mailman/listinfo/graphics-rasterizer-dev ...jim -------------- next part -------------- A non-text attachment was scrubbed... Name: pisces.zip Type: application/zip Size: 32915 bytes Desc: not available Url : http://mail.openjdk.java.net/pipermail/graphics-rasterizer-dev/attachments/20071003/f2d8998c/attachment.zip