

























|
The SVG DOM (Document Object Model) defines the API that programming
languages use to interact with SVG documents. There are different 'bindings'
of the DOM API for different languages. For example, there is an ECMAScript
binding which allows SVG scripts to access or modify SVG document, for example
in reaction to events. There is also a Java technology binding which allows
Java programs to dynamically interact with SVG documents. The Java binding
and the ECMA Script binding are both used in Batik.
|
The SVG Generator is a component of Batik that allows Java applications
to create SVG content without needing specific knowledge of SVG. Applications
doing graphics in Java use an API, embodied by the Graphics2D class, to
do all their rendering operations. They use the same code, but different
implementations of that API, to render to various outputs such as a screen
or a printer. The SVG Generator is another implementation of that API that
instead of drawing to a screen or a printer generates SVG content. Because
it implements the same API as for printing or drawing to the screen, the
same code that does screen rendering and printing can be used with the
generator to generate SVG content. For an example of how to use this
module, follow this link
|
The SVG Parser is the module that is able to receive an SVG document
and build an internal representation of that document. Batik contains
'micro parsers' specific to SVG to convert SVG specific attributes,
such as path data, transforms or color values into equivalent Java
objects such as java.awt.geom.GeneralPath, java.awt.geom.AffineTransform
or java.awt.Color.
|
|
|