fop 1.0

org.apache.fop.render.intermediate
Interface IFDocumentHandler

All Known Implementing Classes:
AbstractBinaryWritingIFDocumentHandler, AbstractBitmapDocumentHandler, AbstractIFDocumentHandler, AbstractSVGDocumentHandler, AbstractXMLWritingIFDocumentHandler, AFPDocumentHandler, IFDocumentHandlerProxy, IFSerializer, PCLDocumentHandler, PDFDocumentHandler, PNGDocumentHandler, PSDocumentHandler, SVGDocumentHandler, SVGPrintDocumentHandler, TIFFDocumentHandler

public interface IFDocumentHandler

Interface used to paint whole documents layouted by Apache FOP.

Call sequence:

 startDocument()
   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
 void endDocument()
          Indicates the end of a document.
 void endDocumentHeader()
          Indicates the end of the document header.
 void endDocumentTrailer()
          Indicates the end of the document trailer.
 void endPage()
          Indicates the end of a page
 void endPageContent()
          Indicates the end of the page content.
 void endPageHeader()
          Indicates the end of the page header.
 void endPageSequence()
          Indicates the end of a page sequence.
 void endPageTrailer()
          Indicates the end of the page trailer.
 IFDocumentHandlerConfigurator getConfigurator()
          Returns the configurator for this document handler, if any.
 IFContext getContext()
          Returns the associated intermediate format context object.
 IFDocumentNavigationHandler getDocumentNavigationHandler()
          Returns a document navigation handler if this feature is supported.
 FontInfo getFontInfo()
          Returns the font set to work with.
 java.lang.String getMimeType()
          Returns the MIME type of the output format that is generated by this implementation.
 void handleExtensionObject(java.lang.Object extension)
          Handles an extension object.
 void setContext(IFContext context)
          Sets the intermediate format context object.
 void setDefaultFontInfo(FontInfo fontInfo)
          Sets the default font set (with no custom configuration).
 void setFontInfo(FontInfo fontInfo)
          Sets the font set to work with.
 void setResult(javax.xml.transform.Result result)
          Sets the JAXP Result object to receive the generated content.
 void startDocument()
          Indicates the start of a document.
 void startDocumentHeader()
          Indicates the start of the document header.
 void startDocumentTrailer()
          Indicates the start of the document trailer.
 void startPage(int index, java.lang.String name, java.lang.String pageMasterName, java.awt.Dimension size)
          Indicates the start of a new page.
 IFPainter startPageContent()
          Indicates the start of the page content.
 void startPageHeader()
          Indicates the start of the page header.
 void startPageSequence(java.lang.String id)
          Indicates the start of a new page sequence.
 void startPageTrailer()
          Indicates the start of the page trailer.
 boolean supportsPagesOutOfOrder()
          Indicates whether the painter supports to handle the pages in mixed order rather than ascending order.
 

Method Detail

setContext

void setContext(IFContext context)
Sets the intermediate format context object.

Parameters:
context - the context object

getContext

IFContext getContext()
Returns the associated intermediate format context object.

Returns:
the context object

setResult

void setResult(javax.xml.transform.Result result)
               throws IFException
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

void setFontInfo(FontInfo fontInfo)
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

void setDefaultFontInfo(FontInfo fontInfo)
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

getDocumentNavigationHandler

IFDocumentNavigationHandler getDocumentNavigationHandler()
Returns a document navigation handler if this feature is supported.

Returns:
the document navigation handler or null if not supported

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

java.lang.String getMimeType()
Returns the MIME type of the output format that is generated by this implementation.

Returns:
the MIME type

startDocument

void startDocument()
                   throws IFException
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

void endDocument()
                 throws IFException
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

startDocumentHeader

void startDocumentHeader()
                         throws IFException
Indicates the start of the document header. This method is called right after the startDocument() method. Extensions sent to this painter between startDocumentHeader() and endDocumentHeader() apply to the document as a whole (like document metadata).

Throws:
IFException - if an error occurs while handling this event

endDocumentHeader

void endDocumentHeader()
                       throws IFException
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

void startDocumentTrailer()
                          throws IFException
Indicates the start of the document trailer. This method is called after the last page sequence. Extensions sent to the painter between startDocumentTrailer() and endDocumentTrailer() 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

void endDocumentTrailer()
                        throws IFException
Indicates the end of the document trailer. This method is called right before the endDocument() method.

Throws:
IFException - if an error occurs while handling this event

startPageSequence

void startPageSequence(java.lang.String id)
                       throws IFException
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

void endPageSequence()
                     throws IFException
Indicates the end of a page sequence.

Throws:
IFException - if an error occurs while handling this event

startPage

void startPage(int index,
               java.lang.String name,
               java.lang.String pageMasterName,
               java.awt.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 page
size - the size of the page (equivalent to the MediaBox in PDF)
Throws:
IFException - if an error occurs while handling this event

endPage

void endPage()
             throws IFException
Indicates the end of a page

Throws:
IFException - if an error occurs while handling this event

startPageHeader

void startPageHeader()
                     throws IFException
Indicates the start of the page header.

Throws:
IFException - if an error occurs while handling this event

endPageHeader

void endPageHeader()
                   throws IFException
Indicates the end of the page header.

Throws:
IFException - if an error occurs while handling this event

startPageContent

IFPainter startPageContent()
                           throws IFException
Indicates the start of the page content. The method returns an IFPainter 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

void endPageContent()
                    throws IFException
Indicates the end of the page content. Calls to the IFPainter returned by the respective startPageContent() method are illegal.

Throws:
IFException - if an error occurs while handling this event

startPageTrailer

void startPageTrailer()
                      throws IFException
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

void endPageTrailer()
                    throws IFException
Indicates the end of the page trailer.

Throws:
IFException - if an error occurs while handling this event

handleExtensionObject

void handleExtensionObject(java.lang.Object extension)
                           throws IFException
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

fop 1.0

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