Class PSDocumentHandler
java.lang.Object
org.apache.fop.render.intermediate.AbstractIFDocumentHandler
org.apache.fop.render.intermediate.AbstractBinaryWritingIFDocumentHandler
org.apache.fop.render.ps.PSDocumentHandler
- All Implemented Interfaces:
IFDocumentHandler
IFDocumentHandler implementation
that produces PostScript.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interfaceclassprivate static final class -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final intprivate static final intprivate static final intprivate Collection[]This is a collection holding all document header commentsprivate PSDocumentHandler.PageDefinitionprivate intprivate Rectangle2DIs used to determine the document's bounding boxprivate PSEventProducerprivate FontResourceCacheThis is a cache of PSResource instances of all fonts definedprivate MapThis is a map of PSResource instances of all forms (key: uri)(package private) org.apache.xmlgraphics.ps.PSGeneratorThe PostScript generator used to output the PostScriptprivate static org.apache.commons.logging.Loglogging instanceprivate static final intprivate org.apache.xmlgraphics.ps.PSPageDeviceDictionaryencapsulation of dictionary used in setpagedevice instructionprivate PSRenderingUtilUtility class which enables all sorts of features that are not directly connected to the normal rendering process.private ListUsed to temporarily store PSSetupCode instance until they can be written.private static final org.apache.xmlgraphics.io.TempResourceURIGeneratorprivate URIthe temporary file in case of two-pass processingFields inherited from class AbstractBinaryWritingIFDocumentHandler
fontInfo, outputStream -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidIndicates the end of a document.voidIndicates the end of the document header.voidendPage()Indicates the end of a pagevoidIndicates the end of the page content.voidIndicates the end of the page header.voidIndicates the end of a page sequence.voidIndicates the end of the page trailer.Returns the configurator for this document handler, if any.org.apache.xmlgraphics.ps.PSResourcegetFormForImage(String uri) Returns a PSResource instance representing a image as a PostScript form.(package private) org.apache.xmlgraphics.ps.PSGeneratorReturns the MIME type of the output format that is generated by this implementation.protected PSFontResourceReturns the PSResource for the given font key.voidhandleExtensionObject(Object extension) Handles an extension object.private booleaninPage()private voidUsed for two-pass production.voidIndicates the start of a document.voidIndicates the start of a new page.Indicates the start of the page content.voidIndicates the start of the page header.voidIndicates the start of a new page sequence.voidIndicates the start of the page trailer.booleanIndicates whether the painter supports to handle the pages in mixed order rather than ascending order.private voidwriteExtensions(int which) private voidMethods inherited from class AbstractBinaryWritingIFDocumentHandler
getFontInfo, setDefaultFontInfo, setFontInfo, setResult
-
Field Details
-
log
private static org.apache.commons.logging.Log loglogging instance -
psUtil
Utility class which enables all sorts of features that are not directly connected to the normal rendering process. -
gen
org.apache.xmlgraphics.ps.PSGenerator genThe PostScript generator used to output the PostScript -
tempURI
the temporary file in case of two-pass processing -
TEMP_URI_GENERATOR
private static final org.apache.xmlgraphics.io.TempResourceURIGenerator TEMP_URI_GENERATOR -
currentPageNumber
private int currentPageNumber -
currentPageDefinition
-
documentBoundingBox
Is used to determine the document's bounding box -
setupCodeList
Used to temporarily store PSSetupCode instance until they can be written. -
fontResources
This is a cache of PSResource instances of all fonts defined -
formResources
This is a map of PSResource instances of all forms (key: uri) -
pageDeviceDictionary
private org.apache.xmlgraphics.ps.PSPageDeviceDictionary pageDeviceDictionaryencapsulation of dictionary used in setpagedevice instruction -
comments
This is a collection holding all document header comments -
COMMENT_DOCUMENT_HEADER
private static final int COMMENT_DOCUMENT_HEADER- See Also:
-
COMMENT_DOCUMENT_TRAILER
private static final int COMMENT_DOCUMENT_TRAILER- See Also:
-
COMMENT_PAGE_TRAILER
private static final int COMMENT_PAGE_TRAILER- See Also:
-
PAGE_TRAILER_CODE_BEFORE
private static final int PAGE_TRAILER_CODE_BEFORE- See Also:
-
eventProducer
-
-
Constructor Details
-
PSDocumentHandler
Default constructor.
-
-
Method Details
-
supportsPagesOutOfOrder
public boolean supportsPagesOutOfOrder()Indicates whether the painter supports to handle the pages in mixed order rather than ascending order.- Returns:
- true if out-of-order handling is supported
-
getMimeType
Returns the MIME type of the output format that is generated by this implementation.- Returns:
- the MIME type
-
getGenerator
org.apache.xmlgraphics.ps.PSGenerator getGenerator() -
getConfigurator
Returns the configurator for this document handler, if any.- Returns:
- the configurator or null if there's no configurator
-
getPSUtil
-
startDocument
Indicates the start of a document. This method may only be called once before any other event method.- Specified by:
startDocumentin interfaceIFDocumentHandler- Overrides:
startDocumentin classAbstractBinaryWritingIFDocumentHandler- Throws:
IFException- if an error occurs while handling this event
-
writeHeader
- Throws:
IOException
-
endDocumentHeader
Indicates the end of the document header. This method is called before the first page sequence.- Specified by:
endDocumentHeaderin interfaceIFDocumentHandler- Overrides:
endDocumentHeaderin classAbstractIFDocumentHandler- Throws:
IFException- if an error occurs while handling this event
-
endDocument
Indicates the end of a document. This method may only be called once after the whole document has been handled. Implementations can release resources (close streams). It is an error to call any event method after this method.- Specified by:
endDocumentin interfaceIFDocumentHandler- Overrides:
endDocumentin classAbstractBinaryWritingIFDocumentHandler- Throws:
IFException- if an error occurs while handling this event
-
rewritePostScriptFile
Used for two-pass production. This will rewrite the PostScript file from the temporary file while adding all needed resources.- Throws:
IOException- In case of an I/O error.
-
startPageSequence
Indicates the start of a new page sequence.- Parameters:
id- the page sequence's identifier (or null if none is available)- Throws:
IFException- if an error occurs while handling this event
-
endPageSequence
Indicates the end of a page sequence.- Throws:
IFException- if an error occurs while handling this event
-
startPage
public void startPage(int index, String name, String pageMasterName, Dimension size) throws IFException Indicates the start of a new page.- Parameters:
index- the index of the page (0-based)name- the page name (usually the formatted page number)pageMasterName- the name of the simple-page-master that generated this pagesize- the size of the page (equivalent to the MediaBox in PDF)- Throws:
IFException- if an error occurs while handling this event
-
startPageHeader
Indicates the start of the page header.- Specified by:
startPageHeaderin interfaceIFDocumentHandler- Overrides:
startPageHeaderin classAbstractIFDocumentHandler- Throws:
IFException- if an error occurs while handling this event
-
endPageHeader
Indicates the end of the page header.- Specified by:
endPageHeaderin interfaceIFDocumentHandler- Overrides:
endPageHeaderin classAbstractIFDocumentHandler- Throws:
IFException- if an error occurs while handling this event
-
writeExtensions
- Throws:
IOException
-
startPageContent
Indicates the start of the page content. The method returns anIFPainterinterface which is used to paint the page contents.- Returns:
- the IFPainter for the page content
- Throws:
IFException- if an error occurs while handling this event
-
endPageContent
Indicates the end of the page content. Calls to theIFPainterreturned by the respectiveIFDocumentHandler.startPageContent()method are illegal.- Throws:
IFException- if an error occurs while handling this event
-
startPageTrailer
Indicates the start of the page trailer. The page trailer is used for writing down page elements which are only know after handling the page itself (like PDF targets).- Specified by:
startPageTrailerin interfaceIFDocumentHandler- Overrides:
startPageTrailerin classAbstractIFDocumentHandler- Throws:
IFException- if an error occurs while handling this event
-
endPageTrailer
Indicates the end of the page trailer.- Specified by:
endPageTrailerin interfaceIFDocumentHandler- Overrides:
endPageTrailerin classAbstractIFDocumentHandler- Throws:
IFException- if an error occurs while handling this event
-
endPage
Indicates the end of a page- Throws:
IFException- if an error occurs while handling this event
-
inPage
private boolean inPage() -
handleExtensionObject
Handles an extension object. This can be a DOM document or any arbitrary object. If an implementation doesn't know how to handle a particular extension it is simply ignored.- Parameters:
extension- the extension object- Throws:
IFException- if an error occurs while handling this event
-
getPSResourceForFontKey
Returns the PSResource for the given font key.- Parameters:
key- the font key ("F*")- Returns:
- the matching PSResource
-
getFormForImage
Returns a PSResource instance representing a image as a PostScript form.- Parameters:
uri- the image URI- Returns:
- a PSResource instance
-