Class AFPSVGHandler

    • Field Detail

      • paintAsBitmap

        private boolean paintAsBitmap
    • Constructor Detail

      • AFPSVGHandler

        public AFPSVGHandler()
    • Method Detail

      • handleXML

        public void handleXML​(RendererContext context,
                              org.w3c.dom.Document doc,
                              java.lang.String ns)
                       throws java.lang.Exception

        Handle an external xml document inside a Foreign Object Area.

        This may throw an exception if for some reason it cannot be handled. The caller is expected to deal with this exception.

        The implementation may convert the XML document internally to another XML dialect (SVG, for example) and call renderXML() on the AbstractRenderer again (which can be retrieved through the RendererContext).

        Specified by:
        handleXML in interface XMLHandler
        Overrides:
        handleXML in class AbstractGenericSVGHandler
        Parameters:
        context - The RendererContext (contains the user agent)
        doc - A DOM containing the foreign object to be processed
        ns - The Namespace of the foreign object
        Throws:
        java.lang.Exception - If an error occurs during processing.
      • renderSVGDocument

        protected void renderSVGDocument​(RendererContext rendererContext,
                                         org.w3c.dom.Document doc)
                                  throws java.io.IOException
        Render the SVG document.
        Overrides:
        renderSVGDocument in class AbstractGenericSVGHandler
        Parameters:
        rendererContext - the renderer context
        doc - the SVG document
        Throws:
        java.io.IOException - In case of an I/O error while painting the image
      • createObjectAreaInfo

        private AFPObjectAreaInfo createObjectAreaInfo​(AFPPaintingState paintingState,
                                                       int x,
                                                       int y,
                                                       int width,
                                                       int height,
                                                       int resolution)
      • createBridgeContext

        public static org.apache.batik.bridge.BridgeContext createBridgeContext​(FOUserAgent userAgent,
                                                                                AFPGraphics2D g2d)
        Parameters:
        userAgent - a user agent instance
        g2d - a graphics context
        Returns:
        a bridge context
      • supportsRenderer

        public boolean supportsRenderer​(Renderer renderer)
        Checks if this XMLHandler supports handling an XML namespace for a particular renderer.
        Parameters:
        renderer - the renderer for which to check.
        Returns:
        true if this XML handler supports a particular renderer
      • updateRendererContext

        protected void updateRendererContext​(RendererContext context)
        Override this method to update the renderer context if it needs special settings for certain conditions.
        Overrides:
        updateRendererContext in class AbstractGenericSVGHandler
        Parameters:
        context - the renderer context
      • createGraphics2DImagePainter

        private org.apache.xmlgraphics.java2d.Graphics2DImagePainter createGraphics2DImagePainter​(org.apache.batik.bridge.BridgeContext ctx,
                                                                                                  org.apache.batik.gvt.GraphicsNode root,
                                                                                                  java.awt.Dimension imageSize)
      • paintAsBitmap

        private boolean paintAsBitmap()
        Returns true if the SVG is to be painted as a bitmap
        Returns:
        true if the SVG is to be painted as a bitmap