org.apache.fop.render

Class AbstractRenderer

Implemented Interfaces:
Constants, Renderer
Known Direct Subclasses:
PrintRenderer

public abstract class AbstractRenderer
extends java.lang.Object
implements Renderer, Constants

Abstract base class for all renderers. The Abstract renderer does all the top level processing of the area tree and adds some abstract methods to handle viewports. This keeps track of the current block and inline position.

Field Summary

protected int
containingBPPosition
the block progression position of the containing block used for absolutely positioned blocks
protected int
containingIPPosition
the inline progression position of the containing block used for absolutely positioned blocks
protected int
currentBPPosition
block progression position
protected int
currentIPPosition
inline progression position
protected PageViewport
currentPageViewport
the currently active PageViewport
protected static Log
log
logging instance
protected FOUserAgent
userAgent
user agent

Fields inherited from interface org.apache.fop.fo.Constants

COMPOUND_COUNT, COMPOUND_MASK, COMPOUND_SHIFT, CP_BLOCK_PROGRESSION_DIRECTION, CP_CONDITIONALITY, CP_INLINE_PROGRESSION_DIRECTION, CP_LENGTH, CP_MAXIMUM, CP_MINIMUM, CP_OPTIMUM, CP_PRECEDENCE, CP_WITHIN_COLUMN, CP_WITHIN_LINE, CP_WITHIN_PAGE, ENUM_COUNT, EN_100, EN_200, EN_300, EN_400, EN_500, EN_600, EN_700, EN_800, EN_900, EN_ABSOLUTE, EN_ABSOLUTE_COLORMETRIC, EN_AFTER, EN_AFTER_EDGE, EN_ALL, EN_ALPHABETIC, EN_ALWAYS, EN_ANY, EN_AUTO, EN_AUTO_EVEN, EN_AUTO_ODD, EN_AVOID, EN_BACKSLANT, EN_BASELINE, EN_BEFORE, EN_BEFORE_EDGE, EN_BIDI_OVERRIDE, EN_BLANK, EN_BLINK, EN_BLOCK, EN_BOLDER, EN_BOTH, EN_BOTTOM, EN_BOUNDED_IN_ONE_DIMENSION, EN_CAPITALIZE, EN_CAPTION, EN_CENTER, EN_CENTRAL, EN_CHARACTER_BY_CHARACTER, EN_COLLAPSE, EN_COLLAPSE_WITH_PRECEDENCE, EN_COLUMN, EN_CONDENSED, EN_CONSIDER_SHIFTS, EN_DASHED, EN_DISCARD, EN_DISREGARD_SHIFTS, EN_DOCUMENT, EN_DOTS, EN_DOTTED, EN_DOUBLE, EN_EMBED, EN_END, EN_END_ON_EVEN, EN_END_ON_ODD, EN_ERROR_IF_OVERFLOW, EN_EVEN, EN_EVEN_PAGE, EN_EXPANDED, EN_EXTRA_CONDENSED, EN_EXTRA_EXPANDED, EN_FALSE, EN_FIC, EN_FIRST, EN_FIXED, EN_FONT_HEIGHT, EN_FORCE, EN_FSWP, EN_GROOVE, EN_HANGING, EN_HIDDEN, EN_HIDE, EN_ICON, EN_IDEOGRAPHIC, EN_IGNORE, EN_IGNORE_IF_AFTER_LINEFEED, EN_IGNORE_IF_BEFORE_LINEFEED, EN_IGNORE_IF_SURROUNDING_LINEFEED, EN_INDEFINITE, EN_INDENT, EN_INHERIT, EN_INSET, EN_INSIDE, EN_INTEGER_PIXELS, EN_ITALIC, EN_JUSTIFY, EN_LARGER, EN_LAST, EN_LEFT, EN_LEWP, EN_LIGHTER, EN_LINE, EN_LINE_HEIGHT, EN_LINE_THROUGH, EN_LOWERCASE, EN_LR_TB, EN_LSWP, EN_LTR, EN_MATHEMATICAL, EN_MAX_HEIGHT, EN_MENU, EN_MESSAGE_BOX, EN_MIDDLE, EN_NARROWER, EN_NONE, EN_NON_UNIFORM, EN_NOREPEAT, EN_NORMAL, EN_NOT_BLANK, EN_NO_BLINK, EN_NO_CHANGE, EN_NO_FORCE, EN_NO_LIMIT, EN_NO_LINE_THROUGH, EN_NO_OVERLINE, EN_NO_UNDERLINE, EN_NO_WRAP, EN_OBLIQUE, EN_ODD, EN_ODD_PAGE, EN_ONLY, EN_OUTSET, EN_OUTSIDE, EN_OVERLINE, EN_PAGE, EN_PAGE_SEQUENCE, EN_PAGINATE, EN_PERCEPTUAL, EN_PRE, EN_PRESERVE, EN_REFERENCE_AREA, EN_RELATIVE, EN_RELATIVE_COLOMETRIC, EN_REPEAT, EN_REPEATX, EN_REPEATY, EN_RESAMPLE_ANY_METHOD, EN_RESET_SIZE, EN_REST, EN_RETAIN, EN_RIDGE, EN_RIGHT, EN_RL_TB, EN_RTL, EN_RULE, EN_SATURATION, EN_SCALE_DOWN_TO_FIT, EN_SCALE_TO_FIT, EN_SCALE_UP_TO_FIT, EN_SCROLL, EN_SEMI_CONDENSED, EN_SEMI_EXPANDED, EN_SEPARATE, EN_SHOW, EN_SMALLER, EN_SMALL_CAPS, EN_SMALL_CAPTION, EN_SOLID, EN_SPACE, EN_START, EN_STATIC, EN_STATUS_BAR, EN_SUB, EN_SUPER, EN_SUPPRESS, EN_TB_RL, EN_TEXT_AFTER_EDGE, EN_TEXT_BEFORE_EDGE, EN_TEXT_BOTTOM, EN_TEXT_TOP, EN_TOP, EN_TRADITIONAL, EN_TREAT_AS_SPACE, EN_TREAT_AS_ZERO_WIDTH_SPACE, EN_TRUE, EN_ULTRA_CONDENSED, EN_ULTRA_EXPANDED, EN_UNBOUNDED, EN_UNDERLINE, EN_UNIFORM, EN_UPPERCASE, EN_USECONTENT, EN_USE_FONT_METRICS, EN_USE_SCRIPT, EN_VISIBLE, EN_WIDER, EN_WRAP, EN_X_DISTRIBUTE, EN_X_FILL, FO_BASIC_LINK, FO_BIDI_OVERRIDE, FO_BLOCK, FO_BLOCK_CONTAINER, FO_BOOKMARK, FO_BOOKMARK_TITLE, FO_BOOKMARK_TREE, FO_CHARACTER, FO_COLOR_PROFILE, FO_CONDITIONAL_PAGE_MASTER_REFERENCE, FO_DECLARATIONS, FO_EXTERNAL_GRAPHIC, FO_FLOAT, FO_FLOW, FO_FOOTNOTE, FO_FOOTNOTE_BODY, FO_INITIAL_PROPERTY_SET, FO_INLINE, FO_INLINE_CONTAINER, FO_INSTREAM_FOREIGN_OBJECT, FO_LAYOUT_MASTER_SET, FO_LEADER, FO_LIST_BLOCK, FO_LIST_ITEM, FO_LIST_ITEM_BODY, FO_LIST_ITEM_LABEL, FO_MARKER, FO_MULTI_CASE, FO_MULTI_PROPERTIES, FO_MULTI_PROPERTY_SET, FO_MULTI_SWITCH, FO_MULTI_TOGGLE, FO_PAGE_NUMBER, FO_PAGE_NUMBER_CITATION, FO_PAGE_NUMBER_CITATION_LAST, FO_PAGE_SEQUENCE, FO_PAGE_SEQUENCE_MASTER, FO_PAGE_SEQUENCE_WRAPPER, FO_REGION_AFTER, FO_REGION_BEFORE, FO_REGION_BODY, FO_REGION_END, FO_REGION_START, FO_REPEATABLE_PAGE_MASTER_ALTERNATIVES, FO_REPEATABLE_PAGE_MASTER_REFERENCE, FO_RETRIEVE_MARKER, FO_ROOT, FO_SIMPLE_PAGE_MASTER, FO_SINGLE_PAGE_MASTER_REFERENCE, FO_STATIC_CONTENT, FO_TABLE, FO_TABLE_AND_CAPTION, FO_TABLE_BODY, FO_TABLE_CAPTION, FO_TABLE_CELL, FO_TABLE_COLUMN, FO_TABLE_FOOTER, FO_TABLE_HEADER, FO_TABLE_ROW, FO_TITLE, FO_UNKNOWN_NODE, FO_WRAPPER, FRM_OBJ_COUNT, NOT_SET, PROPERTY_COUNT, PROPERTY_MASK, PR_ABSOLUTE_POSITION, PR_ACTIVE_STATE, PR_ALIGNMENT_ADJUST, PR_ALIGNMENT_BASELINE, PR_AUTO_RESTORE, PR_AZIMUTH, PR_BACKGROUND, PR_BACKGROUND_ATTACHMENT, PR_BACKGROUND_COLOR, PR_BACKGROUND_IMAGE, PR_BACKGROUND_POSITION, PR_BACKGROUND_POSITION_HORIZONTAL, PR_BACKGROUND_POSITION_VERTICAL, PR_BACKGROUND_REPEAT, PR_BASELINE_SHIFT, PR_BLANK_OR_NOT_BLANK, PR_BLOCK_PROGRESSION_DIMENSION, PR_BORDER, PR_BORDER_AFTER_COLOR, PR_BORDER_AFTER_PRECEDENCE, PR_BORDER_AFTER_STYLE, PR_BORDER_AFTER_WIDTH, PR_BORDER_BEFORE_COLOR, PR_BORDER_BEFORE_PRECEDENCE, PR_BORDER_BEFORE_STYLE, PR_BORDER_BEFORE_WIDTH, PR_BORDER_BOTTOM, PR_BORDER_BOTTOM_COLOR, PR_BORDER_BOTTOM_STYLE, PR_BORDER_BOTTOM_WIDTH, PR_BORDER_COLLAPSE, PR_BORDER_COLOR, PR_BORDER_END_COLOR, PR_BORDER_END_PRECEDENCE, PR_BORDER_END_STYLE, PR_BORDER_END_WIDTH, PR_BORDER_LEFT, PR_BORDER_LEFT_COLOR, PR_BORDER_LEFT_STYLE, PR_BORDER_LEFT_WIDTH, PR_BORDER_RIGHT, PR_BORDER_RIGHT_COLOR, PR_BORDER_RIGHT_STYLE, PR_BORDER_RIGHT_WIDTH, PR_BORDER_SEPARATION, PR_BORDER_SPACING, PR_BORDER_START_COLOR, PR_BORDER_START_PRECEDENCE, PR_BORDER_START_STYLE, PR_BORDER_START_WIDTH, PR_BORDER_STYLE, PR_BORDER_TOP, PR_BORDER_TOP_COLOR, PR_BORDER_TOP_STYLE, PR_BORDER_TOP_WIDTH, PR_BORDER_WIDTH, PR_BOTTOM, PR_BREAK_AFTER, PR_BREAK_BEFORE, PR_CAPTION_SIDE, PR_CASE_NAME, PR_CASE_TITLE, PR_CHARACTER, PR_CLEAR, PR_CLIP, PR_COLOR, PR_COLOR_PROFILE_NAME, PR_COLUMN_COUNT, PR_COLUMN_GAP, PR_COLUMN_NUMBER, PR_COLUMN_WIDTH, PR_CONTENT_HEIGHT, PR_CONTENT_TYPE, PR_CONTENT_WIDTH, PR_COUNTRY, PR_CUE, PR_CUE_AFTER, PR_CUE_BEFORE, PR_DESTINATION_PLACEMENT_OFFSET, PR_DIRECTION, PR_DISPLAY_ALIGN, PR_DOMINANT_BASELINE, PR_ELEVATION, PR_EMPTY_CELLS, PR_ENDS_ROW, PR_END_INDENT, PR_EXTENT, PR_EXTERNAL_DESTINATION, PR_FLOAT, PR_FLOW_NAME, PR_FONT, PR_FONT_FAMILY, PR_FONT_SELECTION_STRATEGY, PR_FONT_SIZE, PR_FONT_SIZE_ADJUST, PR_FONT_STRETCH, PR_FONT_STYLE, PR_FONT_VARIANT, PR_FONT_WEIGHT, PR_FORCE_PAGE_COUNT, PR_FORMAT, PR_GLYPH_ORIENTATION_HORIZONTAL, PR_GLYPH_ORIENTATION_VERTICAL, PR_GROUPING_SEPARATOR, PR_GROUPING_SIZE, PR_HEIGHT, PR_HYPHENATE, PR_HYPHENATION_CHARACTER, PR_HYPHENATION_KEEP, PR_HYPHENATION_LADDER_COUNT, PR_HYPHENATION_PUSH_CHARACTER_COUNT, PR_HYPHENATION_REMAIN_CHARACTER_COUNT, PR_ID, PR_INDEX_CLASS, PR_INDEX_KEY, PR_INDICATE_DESTINATION, PR_INITIAL_PAGE_NUMBER, PR_INLINE_PROGRESSION_DIMENSION, PR_INTERNAL_DESTINATION, PR_INTRUSION_DISPLACE, PR_KEEP_TOGETHER, PR_KEEP_WITH_NEXT, PR_KEEP_WITH_PREVIOUS, PR_LANGUAGE, PR_LAST_LINE_END_INDENT, PR_LEADER_ALIGNMENT, PR_LEADER_LENGTH, PR_LEADER_PATTERN, PR_LEADER_PATTERN_WIDTH, PR_LEFT, PR_LETTER_SPACING, PR_LETTER_VALUE, PR_LINEFEED_TREATMENT, PR_LINE_HEIGHT, PR_LINE_HEIGHT_SHIFT_ADJUSTMENT, PR_LINE_STACKING_STRATEGY, PR_MARGIN, PR_MARGIN_BOTTOM, PR_MARGIN_LEFT, PR_MARGIN_RIGHT, PR_MARGIN_TOP, PR_MARKER_CLASS_NAME, PR_MASTER_NAME, PR_MASTER_REFERENCE, PR_MAXIMUM_REPEATS, PR_MAX_HEIGHT, PR_MAX_WIDTH, PR_MEDIA_USAGE, PR_MIN_HEIGHT, PR_MIN_WIDTH, PR_NUMBER_COLUMNS_REPEATED, PR_NUMBER_COLUMNS_SPANNED, PR_NUMBER_ROWS_SPANNED, PR_ODD_OR_EVEN, PR_ORPHANS, PR_OVERFLOW, PR_PADDING, PR_PADDING_AFTER, PR_PADDING_BEFORE, PR_PADDING_BOTTOM, PR_PADDING_END, PR_PADDING_LEFT, PR_PADDING_RIGHT, PR_PADDING_START, PR_PADDING_TOP, PR_PAGE_BREAK_AFTER, PR_PAGE_BREAK_BEFORE, PR_PAGE_BREAK_INSIDE, PR_PAGE_HEIGHT, PR_PAGE_POSITION, PR_PAGE_WIDTH, PR_PAUSE, PR_PAUSE_AFTER, PR_PAUSE_BEFORE, PR_PITCH, PR_PITCH_RANGE, PR_PLAY_DURING, PR_POSITION, PR_PRECEDENCE, PR_PROVISIONAL_DISTANCE_BETWEEN_STARTS, PR_PROVISIONAL_LABEL_SEPARATION, PR_REFERENCE_ORIENTATION, PR_REF_ID, PR_REGION_NAME, PR_RELATIVE_ALIGN, PR_RELATIVE_POSITION, PR_RENDERING_INTENT, PR_RETRIEVE_BOUNDARY, PR_RETRIEVE_CLASS_NAME, PR_RETRIEVE_POSITION, PR_RICHNESS, PR_RIGHT, PR_ROLE, PR_RULE_STYLE, PR_RULE_THICKNESS, PR_SCALING, PR_SCALING_METHOD, PR_SCORE_SPACES, PR_SCRIPT, PR_SHOW_DESTINATION, PR_SIZE, PR_SOURCE_DOCUMENT, PR_SPACE_AFTER, PR_SPACE_BEFORE, PR_SPACE_END, PR_SPACE_START, PR_SPAN, PR_SPEAK, PR_SPEAK_HEADER, PR_SPEAK_NUMERAL, PR_SPEAK_PUNCTUATION, PR_SPEECH_RATE, PR_SRC, PR_STARTING_STATE, PR_STARTS_ROW, PR_START_INDENT, PR_STRESS, PR_SUPPRESS_AT_LINE_BREAK, PR_SWITCH_TO, PR_TABLE_LAYOUT, PR_TABLE_OMIT_FOOTER_AT_BREAK, PR_TABLE_OMIT_HEADER_AT_BREAK, PR_TARGET_PRESENTATION_CONTEXT, PR_TARGET_PROCESSING_CONTEXT, PR_TARGET_STYLESHEET, PR_TEXT_ALIGN, PR_TEXT_ALIGN_LAST, PR_TEXT_ALTITUDE, PR_TEXT_DECORATION, PR_TEXT_DEPTH, PR_TEXT_INDENT, PR_TEXT_SHADOW, PR_TEXT_TRANSFORM, PR_TOP, PR_TREAT_AS_WORD_SPACE, PR_UNICODE_BIDI, PR_VERTICAL_ALIGN, PR_VISIBILITY, PR_VOICE_FAMILY, PR_VOLUME, PR_WHITE_SPACE, PR_WHITE_SPACE_COLLAPSE, PR_WHITE_SPACE_TREATMENT, PR_WIDOWS, PR_WIDTH, PR_WORD_SPACING, PR_WRAP_OPTION, PR_WRITING_MODE, PR_XML_LANG, PR_X_BLOCK_PROGRESSION_UNIT, PR_X_ORPHAN_CONTENT_LIMIT, PR_X_WIDOW_CONTENT_LIMIT, PR_Z_INDEX

Fields inherited from interface org.apache.fop.render.Renderer

ROLE

Method Summary

protected String
convertTitleToString(LineArea title)
Utility method to convert a page sequence title to a string.
protected abstract void
endVParea()
Signals exit from a viewport area.
protected PageViewport
getCurrentPageViewport()
Graphics2DAdapter
getGraphics2DAdapter()
ImageAdapter
getImageAdapter()
String
getMimeType()
Get the MIME type of the renderer.
FOUserAgent
getUserAgent()
protected void
handleBlockTraits(Block block)
Handle block traits.
protected void
handleRegionTraits(RegionViewport rv)
Handle the traits for a region This is used to draw the traits for the given page region.
protected AffineTransform
mptToPt(AffineTransform at)
Converts a millipoint-based transformation matrix to points.
void
preparePage(PageViewport page)
void
processOffDocumentItem(OffDocumentItem odi)
protected AffineTransform
ptToMpt(AffineTransform at)
Converts a point-based transformation matrix to millipoints.
protected void
renderBeforeFloat(BeforeFloat bf)
Renders a before float area.
protected void
renderBlock(Block block)
Renders a block area.
protected void
renderBlockViewport(BlockViewport bv, List children)
Renders a block viewport.
protected void
renderBlocks(Block parent, List blocks)
Renders a list of block areas.
protected void
renderBodyRegion(BodyRegion region)
Renders a body region area.
protected void
renderCharacter(Character ch)
Deprecated. Only TextArea should be used.
protected void
renderContainer(Container cont)
Tells the renderer to render an inline container.
protected void
renderFlow(NormalFlow flow)
Renders a flow reference area.
protected void
renderFootnote(Footnote footnote)
Renders a footnote
void
renderForeignObject(ForeignObject fo, Rectangle2D pos)
Renders a foreign object area.
void
renderImage(Image image, Rectangle2D pos)
Renders an image area.
protected void
renderInlineArea(InlineArea inlineArea)
Render the given InlineArea.
protected abstract void
renderInlineAreaBackAndBorders(InlineArea area)
Common method to render the background and borders for any inline area.
protected void
renderInlineBlockParent(InlineBlockParent ibp)
Render the given InlineBlockParent.
protected void
renderInlineParent(InlineParent ip)
Render the given InlineParent.
protected void
renderInlineSpace(Space space)
Render the given Space.
protected void
renderLeader(Leader area)
Render the given Leader.
protected void
renderLineArea(LineArea line)
Renders a line area.
protected void
renderMainReference(MainReference mr)
Renders the main reference area.
void
renderPage(PageViewport page)
protected void
renderPageAreas(Page page)
Renders page areas.
protected void
renderRegion(RegionReference region)
Renders a region reference area.
protected void
renderRegionViewport(RegionViewport port)
Renders a region viewport.
protected void
renderSpace(SpaceArea space)
Render the given SpaceArea.
protected void
renderText(TextArea text)
Render the given TextArea.
protected void
renderViewport(Viewport viewport)
Render the given Viewport.
protected void
renderWord(WordArea word)
Render the given WordArea.
void
renderXML(RendererContext ctx, Document doc, String namespace)
Render the xml document with the given xml namespace.
void
setUserAgent(FOUserAgent agent)
abstract void
setupFontInfo(FontInfo fontInfo)
void
startPageSequence(LineArea seqTitle)
void
startPageSequence(PageSequence pageSequence)
void
startRenderer(OutputStream outputStream)
protected abstract void
startVParea(CTM ctm, Rectangle2D clippingRect)
Establishes a new viewport area.
void
stopRenderer()
boolean
supportsOutOfOrder()
Check if this renderer supports out of order rendering.

Field Details

containingBPPosition

protected int containingBPPosition
the block progression position of the containing block used for absolutely positioned blocks

containingIPPosition

protected int containingIPPosition
the inline progression position of the containing block used for absolutely positioned blocks

currentBPPosition

protected int currentBPPosition
block progression position

currentIPPosition

protected int currentIPPosition
inline progression position

currentPageViewport

protected PageViewport currentPageViewport
the currently active PageViewport

log

protected static Log log
logging instance

userAgent

protected FOUserAgent userAgent
user agent

Method Details

convertTitleToString

protected String convertTitleToString(LineArea title)
Utility method to convert a page sequence title to a string. Some renderers may only be able to use a string title. A title is a sequence of inline areas that this method attempts to convert to an equivalent string.
Parameters:
title - The Title to convert
Returns:
An expanded string representing the title

endVParea

protected abstract void endVParea()
Signals exit from a viewport area. Subclasses can restore transformation matrices valid before the viewport area was started.

getCurrentPageViewport

protected PageViewport getCurrentPageViewport()
Returns:
the current PageViewport or null, if none is active

getGraphics2DAdapter

public Graphics2DAdapter getGraphics2DAdapter()
Specified by:
getGraphics2DAdapter in interface Renderer

getImageAdapter

public ImageAdapter getImageAdapter()
Specified by:
getImageAdapter in interface Renderer

getMimeType

public String getMimeType()
Get the MIME type of the renderer.
Specified by:
getMimeType in interface Renderer
Returns:
The MIME type of the renderer

getUserAgent

public FOUserAgent getUserAgent()
Returns:
the associated FOUserAgent

handleBlockTraits

protected void handleBlockTraits(Block block)
Handle block traits. This method is called when the correct ip and bp posiiton is set. This should be overridden to draw border and background traits for the block area.
Parameters:
block - the block area

handleRegionTraits

protected void handleRegionTraits(RegionViewport rv)
Handle the traits for a region This is used to draw the traits for the given page region. (See Sect. 6.4.1.2 of XSL-FO spec.)
Parameters:
rv - the RegionViewport whose region is to be drawn

mptToPt

protected AffineTransform mptToPt(AffineTransform at)
Converts a millipoint-based transformation matrix to points.
Parameters:
at - a millipoint-based transformation matrix
Returns:
a point-based transformation matrix

preparePage

public void preparePage(PageViewport page)
Specified by:
preparePage in interface Renderer

processOffDocumentItem

public void processOffDocumentItem(OffDocumentItem odi)
Specified by:
processOffDocumentItem in interface Renderer

ptToMpt

protected AffineTransform ptToMpt(AffineTransform at)
Converts a point-based transformation matrix to millipoints.
Parameters:
at - a point-based transformation matrix
Returns:
a millipoint-based transformation matrix

renderBeforeFloat

protected void renderBeforeFloat(BeforeFloat bf)
Renders a before float area.
Parameters:
bf - The before float area

renderBlock

protected void renderBlock(Block block)
Renders a block area.
Parameters:
block - The block area

renderBlockViewport

protected void renderBlockViewport(BlockViewport bv,
                                   List children)
Renders a block viewport.
Parameters:
bv - The block viewport
children - The children to render within the block viewport

renderBlocks

protected void renderBlocks(Block parent,
                            List blocks)
Renders a list of block areas.
Parameters:
parent - the parent block if the parent is a block, otherwise a null value.
blocks - The block areas

renderBodyRegion

protected void renderBodyRegion(BodyRegion region)
Renders a body region area.
Parameters:
region - The body region

renderCharacter

protected void renderCharacter(Character ch)

Deprecated. Only TextArea should be used. This method will be removed eventually.

Render the given Character.
Parameters:
ch - the character to render

renderContainer

protected void renderContainer(Container cont)
Tells the renderer to render an inline container.
Parameters:
cont - The inline container area

renderFlow

protected void renderFlow(NormalFlow flow)
Renders a flow reference area.
Parameters:
flow - The flow reference area

renderFootnote

protected void renderFootnote(Footnote footnote)
Renders a footnote
Parameters:
footnote - The footnote

renderForeignObject

public void renderForeignObject(ForeignObject fo,
                                Rectangle2D pos)
Renders a foreign object area.
Parameters:
fo - The foreign object area
pos - The target position of the foreign object (todo) Make renderForeignObject() protected

renderImage

public void renderImage(Image image,
                        Rectangle2D pos)
Renders an image area.
Parameters:
image - The image
pos - The target position of the image (todo) Make renderImage() protected

renderInlineArea

protected void renderInlineArea(InlineArea inlineArea)
Render the given InlineArea.
Parameters:
inlineArea - inline area text to render

renderInlineAreaBackAndBorders

protected abstract void renderInlineAreaBackAndBorders(InlineArea area)
Common method to render the background and borders for any inline area. The all borders and padding are drawn outside the specified area.
Parameters:
area - the inline area for which the background, border and padding is to be rendered

renderInlineBlockParent

protected void renderInlineBlockParent(InlineBlockParent ibp)
Render the given InlineBlockParent.
Parameters:
ibp - the inline block parent to render

renderInlineParent

protected void renderInlineParent(InlineParent ip)
Render the given InlineParent.
Parameters:
ip - the inline parent to render

renderInlineSpace

protected void renderInlineSpace(Space space)
Render the given Space.
Parameters:
space - the space to render

renderLeader

protected void renderLeader(Leader area)
Render the given Leader.
Parameters:
area - the leader to render

renderLineArea

protected void renderLineArea(LineArea line)
Renders a line area.

A line area may have grouped styling for its children such as underline, background.

Parameters:
line - The line area

renderMainReference

protected void renderMainReference(MainReference mr)
Renders the main reference area.

The main reference area contains a list of spans that are stacked on the page. The spans contain a list of normal flow reference areas that are positioned into columns.

Parameters:
mr - The main reference area

renderPage

public void renderPage(PageViewport page)
            throws IOException,
                   FOPException
Specified by:
renderPage in interface Renderer

renderPageAreas

protected void renderPageAreas(Page page)
Renders page areas.
Parameters:
page - The page whos page areas are to be rendered

renderRegion

protected void renderRegion(RegionReference region)
Renders a region reference area.
Parameters:
region - The region reference area

renderRegionViewport

protected void renderRegionViewport(RegionViewport port)
Renders a region viewport.

The region may clip the area and it establishes a position from where the region is placed.

Parameters:
port - The region viewport to be rendered

renderSpace

protected void renderSpace(SpaceArea space)
Render the given SpaceArea.
Parameters:
space - the space to render

renderText

protected void renderText(TextArea text)
Render the given TextArea.
Parameters:
text - the text to render

renderViewport

protected void renderViewport(Viewport viewport)
Render the given Viewport.
Parameters:
viewport - the viewport to render

renderWord

protected void renderWord(WordArea word)
Render the given WordArea.
Parameters:
word - the word to render

renderXML

public void renderXML(RendererContext ctx,
                      Document doc,
                      String namespace)
Render the xml document with the given xml namespace. The Render Context is by the handle to render into the current rendering target.
Parameters:
ctx - rendering context
doc - DOM Document containing the source document
namespace - Namespace URI of the document

setUserAgent

public void setUserAgent(FOUserAgent agent)
Specified by:
setUserAgent in interface Renderer

setupFontInfo

public abstract void setupFontInfo(FontInfo fontInfo)
Specified by:
setupFontInfo in interface Renderer

startPageSequence

public void startPageSequence(LineArea seqTitle)
Specified by:
startPageSequence in interface Renderer

startPageSequence

public void startPageSequence(PageSequence pageSequence)
Specified by:
startPageSequence in interface Renderer

startRenderer

public void startRenderer(OutputStream outputStream)
            throws IOException
Specified by:
startRenderer in interface Renderer

startVParea

protected abstract void startVParea(CTM ctm,
                                    Rectangle2D clippingRect)
Establishes a new viewport area.
Parameters:
ctm - the coordinate transformation matrix to use
clippingRect - the clipping rectangle if the viewport should be clipping, null if no clipping is performed.

stopRenderer

public void stopRenderer()
            throws IOException
Specified by:
stopRenderer in interface Renderer

supportsOutOfOrder

public boolean supportsOutOfOrder()
Check if this renderer supports out of order rendering. If this renderer supports out of order rendering then it means that the pages that are not ready will be prepared and a future page will be rendered.
Specified by:
supportsOutOfOrder in interface Renderer
Returns:
True if the renderer supports out of order rendering

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