Class ResourceHandler

java.lang.Object
org.apache.fop.render.ps.ResourceHandler
All Implemented Interfaces:
PSSupportedFlavors, org.apache.xmlgraphics.ps.dsc.DSCParserConstants

public class ResourceHandler extends Object implements org.apache.xmlgraphics.ps.dsc.DSCParserConstants, PSSupportedFlavors
This class is used when two-pass production is used to generate the PostScript file (setting "optimize-resources"). It uses the DSC parser from XML Graphics Commons to go over the temporary file generated by the PSRenderer and adds all used fonts and images as resources to the PostScript file.
  • Constructor Details

    • ResourceHandler

      public ResourceHandler(FOUserAgent userAgent, PSEventProducer eventProducer, FontInfo fontInfo, org.apache.xmlgraphics.ps.dsc.ResourceTracker resTracker, Map formResources)
      Main constructor.
      Parameters:
      userAgent - the FO user agent
      eventProducer - the event producer
      fontInfo - the font information
      resTracker - the resource tracker to use
      formResources - Contains all forms used by this document (maintained by PSRenderer)
  • Method Details

    • process

      public void process(InputStream in, OutputStream out, int pageCount, Rectangle2D documentBoundingBox, PSRenderingUtil psUtil) throws org.apache.xmlgraphics.ps.dsc.DSCException, IOException
      Rewrites the temporary PostScript file generated by PSRenderer adding all needed resources (fonts and images).
      Parameters:
      in - the InputStream for the temporary PostScript file
      out - the OutputStream to write the finished file to
      pageCount - the number of pages (given here because PSRenderer writes an "(atend)")
      documentBoundingBox - the document's bounding box (given here because PSRenderer writes an "(atend)")
      psUtil -
      Throws:
      org.apache.xmlgraphics.ps.dsc.DSCException - If there's an error in the DSC structure of the PS file
      IOException - In case of an I/O error