Class PDFTranscoder

java.lang.Object
org.apache.batik.transcoder.TranscoderSupport
org.apache.batik.transcoder.AbstractTranscoder
org.apache.batik.transcoder.XMLAbstractTranscoder
org.apache.batik.transcoder.SVGAbstractTranscoder
org.apache.fop.svg.AbstractFOPTranscoder
org.apache.fop.svg.PDFTranscoder
All Implemented Interfaces:
org.apache.batik.transcoder.Transcoder, Configurable

public class PDFTranscoder extends AbstractFOPTranscoder

This class enables to transcode an input to a PDF document.

Two transcoding hints (KEY_WIDTH and KEY_HEIGHT) can be used to respectively specify the image width and the image height. If only one of these keys is specified, the transcoder preserves the aspect ratio of the original image.

The KEY_BACKGROUND_COLOR defines the background color to use for opaque image formats, or the background color that may be used for image formats that support alpha channel.

The KEY_AOI represents the area of interest to paint in device space.

Three additional transcoding hints that act on the SVG processor can be specified:

KEY_LANGUAGE to set the default language to use (may be used by a <switch> SVG element for example), KEY_USER_STYLESHEET_URI to fix the URI of a user stylesheet, and KEY_PIXEL_TO_MM to specify the pixel to millimeter conversion factor.

KEY_AUTO_FONTS to disable the auto-detection of fonts installed in the system. The PDF Transcoder cannot use AWT's font subsystem and that's why the fonts have to be configured differently. By default, font auto-detection is enabled to match the behaviour of the other transcoders, but this may be associated with a price in the form of a small performance penalty. If font auto-detection is not desired, it can be disable using this key.

This work was authored by Keiron Liddle (keiron@aftexsw.com).

  • Field Details

  • Constructor Details

    • PDFTranscoder

      public PDFTranscoder()
      Constructs a new PDFTranscoder.
  • Method Details

    • createUserAgent

      protected AbstractFOPTranscoder.FOPTranscoderUserAgent createUserAgent()
      Creates and returns the default user agent for this transcoder. Override this method if you need non-default behaviour.
      Overrides:
      createUserAgent in class AbstractFOPTranscoder
      Returns:
      UserAgent the newly created user agent
    • transcode

      protected void transcode(Document document, String uri, org.apache.batik.transcoder.TranscoderOutput output) throws org.apache.batik.transcoder.TranscoderException
      Transcodes the specified Document as an image in the specified output.
      Overrides:
      transcode in class org.apache.batik.transcoder.SVGAbstractTranscoder
      Parameters:
      document - the document to transcode
      uri - the uri of the document or null if any
      output - the ouput where to transcode
      Throws:
      org.apache.batik.transcoder.TranscoderException - if an error occured while transcoding
    • createBridgeContext

      protected org.apache.batik.bridge.BridgeContext createBridgeContext()
      Overrides:
      createBridgeContext in class org.apache.batik.transcoder.SVGAbstractTranscoder
    • createBridgeContext

      public org.apache.batik.bridge.BridgeContext createBridgeContext(String version)
      Overrides:
      createBridgeContext in class org.apache.batik.transcoder.SVGAbstractTranscoder