SVG Salamander
SVG Salamander is an SVG engine for Java that's designed to be small, fast, and allow programmers to use it with a minimum of fuss. It's in particular targeted for making it easy to integrate SVG into Java games and making it much easier for artists to design 2D game content - from rich interactive menus to charts and graphcs to complex animations.
Features
Ant task to allow easy conversion from SVG to images from within Ant scripts
SVGIcon class greatly simplifies loading and drawing images to screen
A much smaller code foot print than Batik, and only one JAR file to include
Direct access to the scene graph tree. You can use Java commands to manipulate it directly.
An index of all named shapes in the SVG graph is easily accessable.
Picking shapes given (x, y) coorinates is possible, and can be used to implement graphical buttons
selected by the mouse
Clip region sensitivity makes for fast rendering when only updating part of the image. This makes panning the camera quite efficient.
Easy rendering to any Graphics2D or BufferedImage. Unlike Batik, the SVG Salamander engine does not own the graphics context, so you can pass it whatever graphics context you like.
Internal and external links are implemented as URIs, which allows the
engine to automatically import linked documents - even if they're stored on a remote server.
SVG can be read from an InputStream, so you can create documents dynamicly from
an in-program XSLT transformation.
Status
In Progress
Animation is mostly implemented. You can use the player below to play SVG
with animation elements.
Wish List
JavaScript support needs to be added. This will likely dovetail with adding support for relative times.
Filters need to be added.
Current status
SalamanderSVG is part of the Salamander project hosted on kitfox.com.
http://www.kitfox.com
I can be contacted at mark at kitfox dot com.
Binaries
These programs provide the abiity to read SVG files from your hard drive or the internet. If you're worried about security, these restricted versions will not.
Run the SVG Viewer (no animation)
Run the SVG Player (animation)
Downloads
Complete: Download complete SVG Salamander JAR
Tiny: Download unsigned JAR without resources
Documentation
Download Javadoc
How to use SVG Salamander in your program
Participation
Please support the SVG Salamander project. I'm maintaining this code on my own,
and any support I receive helps me make the project even better.
Currently, I'm not accepting any developers, but would be interested in any comments or questions about the code. Please sign up as an observer and subscribe to one of the mailing lists!