org.apache.fop.render
Interface Renderer
- AbstractPathOrientedRenderer, AbstractRenderer, AFPRenderer, AWTRenderer, Java2DRenderer, PCLRenderer, PDFRenderer, PNGRenderer, PNGRenderer_onthefly, PrintRenderer, PrintRenderer, PSRenderer, SVGRenderer, TIFFRenderer, TXTRenderer, XMLRenderer
public interface Renderer
Interface implemented by all renderers. This interface is used to control
the rendering of pages and to let block and inline level areas call the
appropriate method to render themselves.
A Renderer implementation takes areas/spaces and produces output in some
format.
Typically, most renderers are subclassed from FOP's abstract implementations
(
AbstractRenderer
,
PrintRenderer
) which already handle a lot
of things letting you concentrate on the details of the output format.
static String | ROLE - Role constant for Avalon.
|
ROLE
public static final String ROLE
Role constant for Avalon.
getGraphics2DAdapter
public Graphics2DAdapter getGraphics2DAdapter()
- the adapter for painting Java2D images (or null if not supported)
getImageAdapter
public ImageAdapter getImageAdapter()
- the adapter for painting RenderedImages (or null if not supported)
getMimeType
public String getMimeType()
Get the MIME type of the renderer.
- The MIME type of the renderer, may return null if not applicable.
preparePage
public void preparePage(PageViewport page)
This is called if the renderer supports out of order rendering. The
renderer should prepare the page so that a page further on in the set of
pages can be rendered. The body of the page should not be rendered. The
page will be rendered at a later time by the call to
renderPage(PageViewport)
.
page
- The page viewport to use
processOffDocumentItem
public void processOffDocumentItem(OffDocumentItem odi)
Tells the renderer to process an item not explicitly placed on the
document (e.g., PDF bookmarks). Note - not all renderers will process
all off-document items.
odi
- The off-document item to be rendered
renderPage
public void renderPage(PageViewport page)
throws IOException,
FOPException
Tells the renderer to render a particular page. A renderer typically
reponds by packing up the current page and writing it immediately to the
output device.
page
- The page to be rendered
setUserAgent
public void setUserAgent(FOUserAgent agent)
Set the User Agent.
setupFontInfo
public void setupFontInfo(FontInfo fontInfo)
Set up the given FontInfo.
fontInfo
- The font information
startPageSequence
public void startPageSequence(LineArea seqTitle)
Use startPageSequence(PageSequence) instead
Tells the renderer that a new page sequence starts.
seqTitle
- The title of the page sequence
startPageSequence
public void startPageSequence(PageSequence pageSequence)
Tells the renderer that a new page sequence starts.
pageSequence
- the page sequence
startRenderer
public void startRenderer(OutputStream outputStream)
throws IOException
Initiates the rendering phase.
This must only be called once for a rendering. If
stopRenderer is called then this may be called again
for a new document rendering.
outputStream
- The OutputStream to use for output
stopRenderer
public void stopRenderer()
throws IOException
Signals the end of the rendering phase.
The renderer should reset to an initial state and dispose of
any resources for the completed rendering.
supportsOutOfOrder
public boolean supportsOutOfOrder()
Reports if out of order rendering is supported.
Normally, all pages of a document are rendered in their natural order
(page 1, page 2, page 3 etc.). Some output formats (such as PDF) allow
pages to be output in random order. This is helpful to reduce resource
strain on the system because a page that cannot be fully resolved
doesn't block subsequent pages that are already fully resolved.
- True if this renderer supports out of order rendering.
Copyright 1999-2008 The Apache Software Foundation. All Rights Reserved.