Interface IFDocumentHandler
- All Known Implementing Classes:
AbstractBinaryWritingIFDocumentHandler
,AbstractBitmapDocumentHandler
,AbstractIFDocumentHandler
,AbstractXMLWritingIFDocumentHandler
,AFPDocumentHandler
,EventProducingFilter
,IFDocumentHandlerProxy
,IFSerializer
,Java2DDocumentHandler
,PCLDocumentHandler
,PDFDocumentHandler
,PNGDocumentHandler
,PSDocumentHandler
,TIFFDocumentHandler
public interface IFDocumentHandler
Interface used to paint whole documents layouted by Apache FOP.
Call sequence:
startDocument() [setDocumentLocale()] startDocumentHeader() [handleExtension()]* endDocumentHeader() [ startPageSequence() [ startPage() startPageHeader() [handleExtension()]* endPageHeader() startPageContent() (#box)+ endPageContent() startPageTrailer() (addTarget())* endPageTrailer() endPage() ]* endPageSequence() ]* startDocumentTrailer() [handleExtension()]* endDocumentTrailer() endDocument() #box: startBox() (#pageContent)+ endBox() | startViewport() (#pageContext)+ endViewport() #pageContent: ( setFont() | drawText() | drawRect() | drawImage() | TODO etc. etc. | handleExtensionObject() )
-
Method Summary
Modifier and TypeMethodDescriptionvoid
Indicates the end of a document.void
Indicates the end of the document header.void
Indicates the end of the document trailer.void
endPage()
Indicates the end of a pagevoid
Indicates the end of the page content.void
Indicates the end of the page header.void
Indicates the end of a page sequence.void
Indicates the end of the page trailer.Returns the configurator for this document handler, if any.Returns the associated intermediate format context object.Returns a document navigation handler if this feature is supported.Returns the font set to work with.Returns the MIME type of the output format that is generated by this implementation.void
handleExtensionObject
(Object extension) Handles an extension object.void
setDefaultFontInfo
(FontInfo fontInfo) Sets the default font set (with no custom configuration).void
setDocumentLocale
(Locale locale) void
setFontInfo
(FontInfo fontInfo) Sets the font set to work with.void
Sets the JAXP Result object to receive the generated content.void
Indicates the start of a document.void
Indicates the start of the document header.void
Indicates the start of the document trailer.void
Indicates the start of a new page.Indicates the start of the page content.void
Indicates the start of the page header.void
Indicates the start of a new page sequence.void
Indicates the start of the page trailer.boolean
Indicates whether the painter supports to handle the pages in mixed order rather than ascending order.
-
Method Details
-
getContext
IFContext getContext()Returns the associated intermediate format context object.- Returns:
- the context object
-
setResult
Sets the JAXP Result object to receive the generated content.- Parameters:
result
- the JAXP Result object to receive the generated content- Throws:
IFException
- if an error occurs setting up the output
-
setFontInfo
Sets the font set to work with.- Parameters:
fontInfo
- the font info object
-
getFontInfo
FontInfo getFontInfo()Returns the font set to work with.- Returns:
- the font info object
-
setDefaultFontInfo
Sets the default font set (with no custom configuration).- Parameters:
fontInfo
- the font info object to populate
-
getConfigurator
IFDocumentHandlerConfigurator getConfigurator()Returns the configurator for this document handler, if any.- Returns:
- the configurator or null if there's no configurator
-
getStructureTreeEventHandler
StructureTreeEventHandler getStructureTreeEventHandler()- Returns:
- the structure tree builder
-
supportsPagesOutOfOrder
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
String getMimeType()Returns the MIME type of the output format that is generated by this implementation.- Returns:
- the MIME type
-
startDocument
Indicates the start of a document. This method may only be called once before any other event method.- 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.- Throws:
IFException
- if an error occurs while handling this event
-
setDocumentLocale
- Parameters:
locale
- Locale of the document.
-
startDocumentHeader
Indicates the start of the document header. This method is called right after thestartDocument()
method. Extensions sent to this painter betweenstartDocumentHeader()
andendDocumentHeader()
apply to the document as a whole (like document metadata).- Throws:
IFException
- if an error occurs while handling this event
-
endDocumentHeader
Indicates the end of the document header. This method is called before the first page sequence.- Throws:
IFException
- if an error occurs while handling this event
-
startDocumentTrailer
Indicates the start of the document trailer. This method is called after the last page sequence. Extensions sent to the painter betweenstartDocumentTrailer()
andendDocumentTrailer()
apply to the document as a whole and is used for document-level content that is only known after all pages have been rendered (like named destinations or the bookmark tree).- Throws:
IFException
- if an error occurs while handling this event
-
endDocumentTrailer
Indicates the end of the document trailer. This method is called right before theendDocument()
method.- Throws:
IFException
- if an error occurs while handling this event
-
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
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
-
endPage
Indicates the end of a page- Throws:
IFException
- if an error occurs while handling this event
-
startPageHeader
Indicates the start of the page header.- Throws:
IFException
- if an error occurs while handling this event
-
endPageHeader
Indicates the end of the page header.- Throws:
IFException
- if an error occurs while handling this event
-
startPageContent
Indicates the start of the page content. The method returns anIFPainter
interface 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 theIFPainter
returned by the respectivestartPageContent()
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).- Throws:
IFException
- if an error occurs while handling this event
-
endPageTrailer
Indicates the end of the page trailer.- Throws:
IFException
- if an error occurs while handling this event
-
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
-