fop 0.95

org.apache.fop.render.ps
Class PSSVGHandler

java.lang.Object
  extended by org.apache.fop.render.ps.PSSVGHandler
All Implemented Interfaces:
PSRendererContextConstants, RendererContextConstants, XMLHandler

public class PSSVGHandler
extends java.lang.Object
implements XMLHandler, PSRendererContextConstants

PostScript XML handler for SVG. Uses Apache Batik for SVG processing. This handler handles XML for foreign objects when rendering to PostScript. It renders SVG to the PostScript document using the PSGraphics2D. The properties from the PostScript renderer are subject to change.

Version:
$Id: PSSVGHandler.java 557337 2007-07-18 17:37:14Z adelmelle $

Nested Class Summary
static class PSSVGHandler.PSInfo
          PostScript information structure for drawing the XML document.
 
Field Summary
 
Fields inherited from interface org.apache.fop.render.XMLHandler
HANDLE_ALL
 
Fields inherited from interface org.apache.fop.render.ps.PSRendererContextConstants
PS_FONT_INFO, PS_GENERATOR
 
Fields inherited from interface org.apache.fop.render.RendererContextConstants
FOREIGN_ATTRIBUTES, HANDLER_CONFIGURATION, HEIGHT, OUTPUT_STREAM, PAGE_VIEWPORT, WIDTH, XPOS, YPOS
 
Constructor Summary
PSSVGHandler()
          Create a new PostScript XML handler for use by the PostScript renderer.
 
Method Summary
 java.lang.String getNamespace()
          
static PSSVGHandler.PSInfo getPSInfo(RendererContext context)
          Get the pdf information from the render context.
 void handleXML(RendererContext context, org.w3c.dom.Document doc, java.lang.String ns)
          Handle an external xml document inside a Foreign Object Area.
protected  void renderSVGDocument(RendererContext context, org.w3c.dom.Document doc, PSSVGHandler.PSInfo psInfo)
          Render the svg document.
 boolean supportsRenderer(Renderer renderer)
          Checks if this XMLHandler supports handling an XML namespace for a particular renderer.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PSSVGHandler

public PSSVGHandler()
Create a new PostScript XML handler for use by the PostScript renderer.

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
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.

getPSInfo

public static PSSVGHandler.PSInfo getPSInfo(RendererContext context)
Get the pdf information from the render context.

Parameters:
context - the renderer context
Returns:
the pdf information retrieved from the context

renderSVGDocument

protected void renderSVGDocument(RendererContext context,
                                 org.w3c.dom.Document doc,
                                 PSSVGHandler.PSInfo psInfo)
Render the svg document.

Parameters:
context - the renderer context
doc - the svg document
psInfo - the pdf information of the current context

supportsRenderer

public boolean supportsRenderer(Renderer renderer)
Checks if this XMLHandler supports handling an XML namespace for a particular renderer.

Specified by:
supportsRenderer in interface XMLHandler
Parameters:
renderer - the renderer for which to check.
Returns:
true if this XML handler supports a particular renderer

getNamespace

public java.lang.String getNamespace()

Specified by:
getNamespace in interface XMLHandler
Returns:
the XML namespace for the XML dialect this XMLHandler supports, null if all XML content is handled by this instance.

fop 0.95

Copyright 1999-2008 The Apache Software Foundation. All Rights Reserved.