Class SVGDocument
- java.lang.Object
-
- de.erichseifert.vectorgraphics2d.SizedDocument
-
- de.erichseifert.vectorgraphics2d.svg.SVGDocument
-
- All Implemented Interfaces:
Document
class SVGDocument extends SizedDocument
Represents aDocument
in the Scaled Vector Graphics (SVG) format.
-
-
Field Summary
Fields Modifier and Type Field Description private static java.lang.String
CHARSET
private java.util.Map<java.lang.Integer,org.w3c.dom.Element>
clippingPathElements
private org.w3c.dom.Element
defs
private org.w3c.dom.Document
doc
private org.w3c.dom.Element
group
private boolean
groupAdded
private static java.lang.String
PREFIX_CLIP
private org.w3c.dom.Element
root
private java.util.Stack<GraphicsState>
states
private static java.util.Map<java.lang.Integer,java.lang.String>
STROKE_ENDCAPS
Mapping of stroke endcap values from Java to SVG.private static java.util.Map<java.lang.Integer,java.lang.String>
STROKE_LINEJOIN
Mapping of line join values for path drawing from Java to SVG.private static java.lang.String
SVG_DOCTYPE_PUBLIC_ID
private static java.lang.String
SVG_DOCTYPE_QNAME
private static java.lang.String
SVG_DOCTYPE_SYSTEM_ID
private static java.lang.String
SVG_NAMESPACE_URI
private static java.lang.String
XLINK_NAMESPACE
private static java.lang.String
XLINK_NAMESPACE_URI
-
Constructor Summary
Constructors Constructor Description SVGDocument(CommandSequence commands, PageSize pageSize)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
addToGroup(org.w3c.dom.Element e)
private static void
appendStyle(java.lang.StringBuilder style, java.lang.String attribute, java.lang.Object value)
private void
applyStateCommands(java.util.List<Command<?>> commands)
private boolean
containsGroupCommand(java.util.List<Command<?>> commands)
private static java.lang.String
encodeImage(java.awt.image.BufferedImage bufferedImage, java.lang.String format)
private org.w3c.dom.Element
getClipElement(java.awt.Shape clip)
private GraphicsState
getCurrentState()
private org.w3c.dom.Element
getElement(java.awt.Image image, double x, double y, double width, double height)
private org.w3c.dom.Element
getElement(java.awt.Shape shape)
private org.w3c.dom.Element
getElement(java.lang.String text, double x, double y)
private static java.lang.String
getOutput(java.awt.Color color)
private static java.lang.String
getOutput(java.awt.Font font)
private static java.lang.String
getOutput(java.awt.geom.AffineTransform tx)
private static java.lang.String
getOutput(java.awt.Image image, boolean lossyAllowed)
private static java.lang.String
getOutput(java.awt.Shape shape)
private java.lang.String
getStyle(boolean filled)
private java.lang.String
getStyle(java.awt.Font font)
void
handle(Command<?> command)
private void
initRoot()
private void
newGroup()
java.lang.String
toString()
void
writeTo(java.io.OutputStream out)
-
Methods inherited from class de.erichseifert.vectorgraphics2d.SizedDocument
getPageSize, isCompressed
-
-
-
-
Field Detail
-
SVG_DOCTYPE_QNAME
private static final java.lang.String SVG_DOCTYPE_QNAME
- See Also:
- Constant Field Values
-
SVG_DOCTYPE_PUBLIC_ID
private static final java.lang.String SVG_DOCTYPE_PUBLIC_ID
- See Also:
- Constant Field Values
-
SVG_DOCTYPE_SYSTEM_ID
private static final java.lang.String SVG_DOCTYPE_SYSTEM_ID
- See Also:
- Constant Field Values
-
SVG_NAMESPACE_URI
private static final java.lang.String SVG_NAMESPACE_URI
- See Also:
- Constant Field Values
-
XLINK_NAMESPACE
private static final java.lang.String XLINK_NAMESPACE
- See Also:
- Constant Field Values
-
XLINK_NAMESPACE_URI
private static final java.lang.String XLINK_NAMESPACE_URI
- See Also:
- Constant Field Values
-
PREFIX_CLIP
private static final java.lang.String PREFIX_CLIP
- See Also:
- Constant Field Values
-
CHARSET
private static final java.lang.String CHARSET
- See Also:
- Constant Field Values
-
states
private final java.util.Stack<GraphicsState> states
-
doc
private final org.w3c.dom.Document doc
-
root
private final org.w3c.dom.Element root
-
group
private org.w3c.dom.Element group
-
groupAdded
private boolean groupAdded
-
defs
private org.w3c.dom.Element defs
-
clippingPathElements
private final java.util.Map<java.lang.Integer,org.w3c.dom.Element> clippingPathElements
-
STROKE_ENDCAPS
private static final java.util.Map<java.lang.Integer,java.lang.String> STROKE_ENDCAPS
Mapping of stroke endcap values from Java to SVG.
-
STROKE_LINEJOIN
private static final java.util.Map<java.lang.Integer,java.lang.String> STROKE_LINEJOIN
Mapping of line join values for path drawing from Java to SVG.
-
-
Constructor Detail
-
SVGDocument
public SVGDocument(CommandSequence commands, PageSize pageSize)
-
-
Method Detail
-
getCurrentState
private GraphicsState getCurrentState()
-
initRoot
private void initRoot()
-
writeTo
public void writeTo(java.io.OutputStream out) throws java.io.IOException
- Throws:
java.io.IOException
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
newGroup
private void newGroup()
-
getClipElement
private org.w3c.dom.Element getClipElement(java.awt.Shape clip)
-
addToGroup
private void addToGroup(org.w3c.dom.Element e)
-
handle
public void handle(Command<?> command)
-
applyStateCommands
private void applyStateCommands(java.util.List<Command<?>> commands)
-
containsGroupCommand
private boolean containsGroupCommand(java.util.List<Command<?>> commands)
-
getStyle
private java.lang.String getStyle(boolean filled)
-
getStyle
private java.lang.String getStyle(java.awt.Font font)
-
appendStyle
private static void appendStyle(java.lang.StringBuilder style, java.lang.String attribute, java.lang.Object value)
-
getOutput
private static java.lang.String getOutput(java.awt.geom.AffineTransform tx)
-
getOutput
private static java.lang.String getOutput(java.awt.Color color)
-
getOutput
private static java.lang.String getOutput(java.awt.Shape shape)
-
getOutput
private static java.lang.String getOutput(java.awt.Font font)
-
getOutput
private static java.lang.String getOutput(java.awt.Image image, boolean lossyAllowed)
-
encodeImage
private static java.lang.String encodeImage(java.awt.image.BufferedImage bufferedImage, java.lang.String format)
-
getElement
private org.w3c.dom.Element getElement(java.awt.Shape shape)
-
getElement
private org.w3c.dom.Element getElement(java.lang.String text, double x, double y)
-
getElement
private org.w3c.dom.Element getElement(java.awt.Image image, double x, double y, double width, double height)
-
-