Class IFRenderer
java.lang.Object
org.apache.fop.render.AbstractRenderer
org.apache.fop.render.PrintRenderer
org.apache.fop.render.AbstractPathOrientedRenderer
org.apache.fop.render.intermediate.IFRenderer
This renderer implementation is an adapter to the
IFPainter interface. It is used
to generate content using FOP's intermediate format.-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringXML MIME typeprotected static final org.apache.commons.logging.Loglogging instanceprotected RendererIf not null, the XMLRenderer will mimic another renderer by using its font setup.protected MapMaps unique PageViewport key to page indices (for link target handling)Fields inherited from class org.apache.fop.render.AbstractPathOrientedRenderer
FOX_TRANSFORMFields inherited from class org.apache.fop.render.PrintRenderer
embedFontInfoList, fontInfoFields inherited from class org.apache.fop.render.AbstractRenderer
bindingOnEndEdge, bindingOnStartEdge, blockProgressionDirection, columnCount, columnEndIPPosition, columnGap, columnIndex, columnLeftIPPosition, columnRightIPPosition, columnStartIPPosition, columnWidth, containingBPPosition, containingIPPosition, currentBPPosition, currentIPPosition, currentPageViewport, inlineProgressionDirection, userAgentFields 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, 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_ALTERNATE, 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_BT, 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_FIRST_INCLUDING_CARRYOVER, EN_FIRST_STARTING, 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_LAST_ENDING, EN_LAST_STARTING, EN_LEAVE_SEPARATE, EN_LEFT, EN_LEWP, EN_LIGHTER, EN_LINE, EN_LINE_HEIGHT, EN_LINE_THROUGH, EN_LINK, EN_LOWERCASE, EN_LR, EN_LR_TB, EN_LSWP, EN_LTR, EN_MATHEMATICAL, EN_MAX_HEIGHT, EN_MENU, EN_MERGE, EN_MESSAGE_BOX, EN_MIDDLE, EN_NARROWER, EN_NEW, EN_NO_BLINK, EN_NO_CHANGE, EN_NO_FORCE, EN_NO_LIMIT, EN_NO_LINE_THROUGH, EN_NO_LINK, EN_NO_OVERLINE, EN_NO_UNDERLINE, EN_NO_WRAP, EN_NON_UNIFORM, EN_NONE, EN_NOREPEAT, EN_NORMAL, EN_NOT_BLANK, 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_REPLACE, EN_RESAMPLE_ANY_METHOD, EN_RESET_SIZE, EN_REST, EN_RETAIN, EN_RIDGE, EN_RIGHT, EN_RL, 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_SELECT_FIRST_FITTING, EN_SEMI_CONDENSED, EN_SEMI_EXPANDED, EN_SEPARATE, EN_SHOW, EN_SMALL_CAPS, EN_SMALL_CAPTION, EN_SMALLER, EN_SOLID, EN_SPACE, EN_START, EN_STATIC, EN_STATUS_BAR, EN_SUB, EN_SUPER, EN_SUPPRESS, EN_TABLE, EN_TABLE_FRAGMENT, EN_TB, EN_TB_LR, 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_USE_FONT_METRICS, EN_USE_SCRIPT, EN_USECONTENT, EN_VISIBLE, EN_WIDER, EN_WRAP, ENUM_COUNT, FO_BASIC_LINK, FO_BIDI_OVERRIDE, FO_BLOCK, FO_BLOCK_CONTAINER, FO_BOOKMARK, FO_BOOKMARK_TITLE, FO_BOOKMARK_TREE, FO_CHANGE_BAR_BEGIN, FO_CHANGE_BAR_END, FO_CHARACTER, FO_COLOR_PROFILE, FO_CONDITIONAL_PAGE_MASTER_REFERENCE, FO_DECLARATIONS, FO_EXTERNAL_GRAPHIC, FO_FLOAT, FO_FLOW, FO_FLOW_ASSIGNMENT, FO_FLOW_MAP, FO_FLOW_NAME_SPECIFIER, FO_FLOW_SOURCE_LIST, FO_FLOW_TARGET_LIST, FO_FOLIO_PREFIX, FO_FOLIO_SUFFIX, FO_FOOTNOTE, FO_FOOTNOTE_BODY, FO_INDEX_KEY_REFERENCE, FO_INDEX_PAGE_CITATION_LIST, FO_INDEX_PAGE_CITATION_LIST_SEPARATOR, FO_INDEX_PAGE_CITATION_RANGE_SEPARATOR, FO_INDEX_PAGE_NUMBER_PREFIX, FO_INDEX_PAGE_NUMBER_SUFFIX, FO_INDEX_RANGE_BEGIN, FO_INDEX_RANGE_END, 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_NAME_SPECIFIER, FO_REGION_START, FO_REPEATABLE_PAGE_MASTER_ALTERNATIVES, FO_REPEATABLE_PAGE_MASTER_REFERENCE, FO_RETRIEVE_MARKER, FO_RETRIEVE_TABLE_MARKER, FO_ROOT, FO_SCALING_VALUE_CITATION, 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, 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_CHANGE_BAR_CLASS, PR_CHANGE_BAR_COLOR, PR_CHANGE_BAR_OFFSET, PR_CHANGE_BAR_PLACEMENT, PR_CHANGE_BAR_STYLE, PR_CHANGE_BAR_WIDTH, 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_END_INDENT, PR_ENDS_ROW, PR_EXTENT, PR_EXTERNAL_DESTINATION, PR_FLOAT, PR_FLOW_MAP_NAME, PR_FLOW_MAP_REFERENCE, PR_FLOW_NAME, PR_FLOW_NAME_REFERENCE, 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_INTRINSIC_SCALE_VALUE, 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_LINE_HEIGHT, PR_LINE_HEIGHT_SHIFT_ADJUSTMENT, PR_LINE_STACKING_STRATEGY, PR_LINEFEED_TREATMENT, 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_MAX_HEIGHT, PR_MAX_WIDTH, PR_MAXIMUM_REPEATS, PR_MEDIA_USAGE, PR_MERGE_PAGES_ACROSS_INDEX_KEY_REFERENCES, PR_MERGE_RANGES_ACROSS_INDEX_KEY_REFERENCES, PR_MERGE_SEQUENTIAL_PAGE_NUMBERS, 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_CITATION_STRATEGY, PR_PAGE_HEIGHT, PR_PAGE_NUMBER_TREATMENT, 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_REF_ID, PR_REF_INDEX_KEY, PR_REFERENCE_ORIENTATION, PR_REGION_NAME, PR_REGION_NAME_REFERENCE, PR_RELATIVE_ALIGN, PR_RELATIVE_POSITION, PR_RENDERING_INTENT, PR_RETRIEVE_BOUNDARY, PR_RETRIEVE_BOUNDARY_WITHIN_TABLE, PR_RETRIEVE_CLASS_NAME, PR_RETRIEVE_POSITION, PR_RETRIEVE_POSITION_WITHIN_TABLE, 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_START_INDENT, PR_STARTING_STATE, PR_STARTS_ROW, 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_X_ABBREVIATION, PR_X_ALT_TEXT, PR_X_AUTO_TOGGLE, PR_X_BACKGROUND_IMAGE_HEIGHT, PR_X_BACKGROUND_IMAGE_WIDTH, PR_X_BORDER_AFTER_END_RADIUS, PR_X_BORDER_AFTER_RADIUS_END, PR_X_BORDER_AFTER_RADIUS_START, PR_X_BORDER_AFTER_START_RADIUS, PR_X_BORDER_BEFORE_END_RADIUS, PR_X_BORDER_BEFORE_RADIUS_END, PR_X_BORDER_BEFORE_RADIUS_START, PR_X_BORDER_BEFORE_START_RADIUS, PR_X_BORDER_END_RADIUS_AFTER, PR_X_BORDER_END_RADIUS_BEFORE, PR_X_BORDER_RADIUS, PR_X_BORDER_START_RADIUS_AFTER, PR_X_BORDER_START_RADIUS_BEFORE, PR_X_DISABLE_COLUMN_BALANCING, PR_X_HEADER_COLUMN, PR_X_LAYER, PR_X_NUMBER_CONVERSION_FEATURES, PR_X_ORPHAN_CONTENT_LIMIT, PR_X_WIDOW_CONTENT_LIMIT, PR_X_XML_BASE, PR_XML_LANG, PR_Z_INDEX, PROPERTY_COUNT, PROPERTY_MASK -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidIndicates the beginning of a text object.protected ListBreaks out of the state stack to handle fixed block-containers.protected voidclip()Clip using the current path.protected voidclipBackground(float startx, float starty, float width, float height, BorderProps bpsBefore, BorderProps bpsAfter, BorderProps bpsStart, BorderProps bpsEnd) TODO represent border related parameters in a class Clip the background to the inner border.protected voidclipRect(float x, float y, float width, float height) Clip using a rectangular area.protected voidCloses the current subpath by appending a straight line segment from the current point to the starting point of the subpath.protected voidConcatenates the current transformation matrix with the given one, therefore establishing a new coordinate system.protected IFDocumentHandlerCreates a defaultIFDocumentHandlerwhen none has been set.protected voiddrawBackground(float startx, float starty, float width, float height, Trait.Background back, BorderProps bpsBefore, BorderProps bpsAfter, BorderProps bpsStart, BorderProps bpsEnd) Draw the background.protected voiddrawBorderLine(float x1, float y1, float x2, float y2, boolean horz, boolean startOrBefore, int style, Color col) Draw a border segment of an XSL-FO style border.protected voiddrawBorders(float startx, float starty, float width, float height, BorderProps bpsBefore, BorderProps bpsAfter, BorderProps bpsStart, BorderProps bpsEnd, int level, Color innerBackgroundColor) Draw the borders.protected voiddrawImage(String uri, Rectangle2D pos, Map foreignAttributes) Draw an image at the indicated location.protected voidendLayer()Finish current optional content group layer.protected voidIndicates the end of a text object.protected voidSignals exit from a viewport area.protected voidfillRect(float x, float y, float width, float height) Fill a rectangular area.protected IFDocumentNavigationHandlerReturns the document navigation handler if available/supported.Get the MIME type of the renderer.protected booleanIndicates whether document navigation features are supported by the document handler.protected voidlineTo(float x, float y) Appends a straight line segment from the current point to (x, y).protected voidmoveTo(float x, float y) Moves the current point to (x, y), omitting any connecting line segment.voidpreparePage(PageViewport page) This is called if the renderer supports out of order rendering.voidTells the renderer to process an item not explicitly placed on the document (e.g., PDF bookmarks).protected voidrenderBlock(Block block) Renders a block area.protected voidrenderBlockViewport(BlockViewport bv, List children) Renders a block viewport.protected voidrenderBookmarkTree(BookmarkData bookmarks) Renders a Bookmark-Tree objectvoidrenderForeignObject(ForeignObject fo, Rectangle2D pos) Renders a foreign object area.voidrenderImage(Image image, Rectangle2D pos) Renders an image area.protected voidrenderInlineArea(InlineArea inlineArea) Render the given InlineArea.voidRender the given InlineParent.voidrenderInlineViewport(InlineViewport viewport) Render an inline viewport.voidrenderLeader(Leader area) Render the given Leader.voidrenderPage(PageViewport page) Tells the renderer to render a particular page.protected voidrenderRegionViewport(RegionViewport viewport) Renders a region viewport.protected voidrenderSpace(SpaceArea space) Render the given SpaceArea.protected voidrenderText(TextArea text) Render the given TextArea.protected voidrenderWord(WordArea word) Render the given WordArea.protected voidRestores the last graphics state of the rendering engine.protected voidrestoreStateStackAfterBreakOut(List breakOutList) Restores the state stack after a break out.protected voidSaves the graphics state of the rendering engine.voidsetDocumentHandler(IFDocumentHandler documentHandler) Sets theIFDocumentHandlerto be used by theIFRenderer.voidsetDocumentLocale(Locale locale) voidsetupFontInfo(FontInfo inFontInfo) Set up the given FontInfo.protected voidstartLayer(String layer) Establish new optional content group layer.voidstartPageSequence(PageSequence pageSequence) Tells the renderer that a new page sequence starts.voidstartRenderer(OutputStream outputStream) Initiates the rendering phase.protected voidstartVParea(CTM ctm, Rectangle clippingRect) Establishes a new viewport area.voidSignals the end of the rendering phase.booleanCheck if this renderer supports out of order rendering.protected voidupdateColor(Color col, boolean fill) Establishes a new foreground or fill color.Methods inherited from class org.apache.fop.render.AbstractPathOrientedRenderer
drawBackAndBorders, drawBackAndBorders, drawBackground, drawBorders, drawImage, establishTransformationMatrix, handleBlockTraits, handleRegionTraits, renderFlow, renderInlineAreaBackAndBorders, renderReferenceArea, renderTextDecorationMethods inherited from class org.apache.fop.render.PrintRenderer
addFontList, createRendererContext, getFontFromArea, getFontInfo, getFontList, getInternalFontNameForArea, instantiateRendererContext, renderDocument, setFontListMethods inherited from class org.apache.fop.render.AbstractRenderer
convertTitleToString, drawChangeBars, getBeginOffset, getCurrentPageViewport, getGraphics2DAdapter, getImageAdapter, getUserAgent, maybeEndLayer, maybeStartLayer, mptToPt, ptToMpt, renderBeforeFloat, renderBlocks, renderBodyRegion, renderContainer, renderFootnote, renderInlineBlock, renderInlineBlockParent, renderInlineSpace, renderLineArea, renderMainReference, renderPageAreas, renderRegion, renderXML, setBeginOffset, startPageSequence
-
Field Details
-
log
protected static final org.apache.commons.logging.Log loglogging instance -
IF_MIME_TYPE
XML MIME type- See Also:
-
mimic
If not null, the XMLRenderer will mimic another renderer by using its font setup. -
pageIndices
Maps unique PageViewport key to page indices (for link target handling)
-
-
Constructor Details
-
IFRenderer
Main constructor- Parameters:
userAgent- the user agent that contains configuration details. This cannot be null.
-
-
Method Details
-
getMimeType
Get the MIME type of the renderer.- Returns:
- The MIME type of the renderer, may return null if not applicable.
-
setDocumentHandler
Sets theIFDocumentHandlerto be used by theIFRenderer.- Parameters:
documentHandler- theIFDocumentHandler
-
setupFontInfo
Set up the given FontInfo.- Specified by:
setupFontInfoin interfaceRenderer- Overrides:
setupFontInfoin classPrintRenderer- Parameters:
inFontInfo- The font information- Throws:
FOPException- if an error occurs while setting up the font info object
-
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:
supportsOutOfOrderin interfaceRenderer- Overrides:
supportsOutOfOrderin classAbstractRenderer- Returns:
- True if the renderer supports out of order rendering
-
createDefaultDocumentHandler
Creates a defaultIFDocumentHandlerwhen none has been set.- Returns:
- the default IFDocumentHandler
-
startRenderer
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.- Specified by:
startRendererin interfaceRenderer- Overrides:
startRendererin classAbstractRenderer- Parameters:
outputStream- The OutputStream to use for output- Throws:
IOException- If an I/O error occurs
-
stopRenderer
Signals the end of the rendering phase. The renderer should reset to an initial state and dispose of any resources for the completed rendering.- Specified by:
stopRendererin interfaceRenderer- Overrides:
stopRendererin classAbstractRenderer- Throws:
IOException- If an I/O error occurs
-
setDocumentLocale
Description copied from class:AbstractRenderer- Specified by:
setDocumentLocalein interfaceRenderer- Overrides:
setDocumentLocalein classAbstractRenderer- Parameters:
locale- Locale of the language
-
processOffDocumentItem
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.- Specified by:
processOffDocumentItemin interfaceRenderer- Overrides:
processOffDocumentItemin classAbstractRenderer- Parameters:
odi- The off-document item to be rendered
-
renderBookmarkTree
Renders a Bookmark-Tree object- Parameters:
bookmarks- the BookmarkData object containing all the Bookmark-Items
-
startPageSequence
Tells the renderer that a new page sequence starts.- Specified by:
startPageSequencein interfaceRenderer- Overrides:
startPageSequencein classAbstractRenderer- Parameters:
pageSequence- the page sequence
-
preparePage
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 toRenderer.renderPage(PageViewport).- Specified by:
preparePagein interfaceRenderer- Overrides:
preparePagein classAbstractRenderer- Parameters:
page- The page viewport to use
-
renderPage
Tells the renderer to render a particular page. A renderer typically responds by packing up the current page and writing it immediately to the output device.- Specified by:
renderPagein interfaceRenderer- Overrides:
renderPagein classAbstractRenderer- Parameters:
page- The page to be rendered- Throws:
IOException- if an I/O error occursFOPException- if a FOP interal error occurs.
-
saveGraphicsState
protected void saveGraphicsState()Saves the graphics state of the rendering engine.- Specified by:
saveGraphicsStatein classAbstractPathOrientedRenderer
-
restoreGraphicsState
protected void restoreGraphicsState()Restores the last graphics state of the rendering engine.- Specified by:
restoreGraphicsStatein classAbstractPathOrientedRenderer
-
breakOutOfStateStack
Breaks out of the state stack to handle fixed block-containers.- Specified by:
breakOutOfStateStackin classAbstractPathOrientedRenderer- Returns:
- the saved state stack to recreate later
-
restoreStateStackAfterBreakOut
Restores the state stack after a break out.- Specified by:
restoreStateStackAfterBreakOutin classAbstractPathOrientedRenderer- Parameters:
breakOutList- the state stack to restore.
-
concatenateTransformationMatrix
Concatenates the current transformation matrix with the given one, therefore establishing a new coordinate system.- Specified by:
concatenateTransformationMatrixin classAbstractPathOrientedRenderer- Parameters:
at- the transformation matrix to process (coordinates in points)
-
beginTextObject
protected void beginTextObject()Indicates the beginning of a text object.- Specified by:
beginTextObjectin classAbstractPathOrientedRenderer
-
endTextObject
protected void endTextObject()Indicates the end of a text object.- Specified by:
endTextObjectin classAbstractPathOrientedRenderer
-
renderRegionViewport
Renders a region viewport.The region may clip the area and it establishes a position from where the region is placed.
- Overrides:
renderRegionViewportin classAbstractRenderer- Parameters:
viewport- The region viewport to be rendered
-
renderBlockViewport
Renders a block viewport.- Overrides:
renderBlockViewportin classAbstractPathOrientedRenderer- Parameters:
bv- The block viewportchildren- The children to render within the block viewport
-
renderInlineViewport
Render an inline viewport. This renders an inline viewport by clipping if necessary.- Overrides:
renderInlineViewportin classAbstractPathOrientedRenderer- Parameters:
viewport- the viewport to handle
-
startVParea
Establishes a new viewport area.- Specified by:
startVPareain classAbstractRenderer- Parameters:
ctm- the coordinate transformation matrix to useclippingRect- the clipping rectangle if the viewport should be clipping, null if no clipping is performed.
-
endVParea
protected void endVParea()Signals exit from a viewport area. Subclasses can restore transformation matrices valid before the viewport area was started.- Specified by:
endVPareain classAbstractRenderer
-
startLayer
Establish new optional content group layer.- Specified by:
startLayerin classAbstractRenderer- Parameters:
layer- name of layer
-
endLayer
protected void endLayer()Finish current optional content group layer.- Specified by:
endLayerin classAbstractRenderer
-
renderInlineArea
Render the given InlineArea.- Overrides:
renderInlineAreain classAbstractRenderer- Parameters:
inlineArea- inline area text to render
-
renderInlineParent
Render the given InlineParent.- Overrides:
renderInlineParentin classAbstractRenderer- Parameters:
ip- the inline parent to render
-
renderBlock
Renders a block area.- Overrides:
renderBlockin classAbstractRenderer- Parameters:
block- The block area
-
renderText
Render the given TextArea.- Overrides:
renderTextin classAbstractRenderer- Parameters:
text- the text to render
-
renderWord
Render the given WordArea.- Overrides:
renderWordin classAbstractRenderer- Parameters:
word- the word to render
-
renderSpace
Render the given SpaceArea.- Overrides:
renderSpacein classAbstractRenderer- Parameters:
space- the space to render
-
renderImage
Renders an image area.- Overrides:
renderImagein classAbstractRenderer- Parameters:
image- The imagepos- The target position of the image (todo) Make renderImage() protected
-
drawImage
Draw an image at the indicated location.- Specified by:
drawImagein classAbstractPathOrientedRenderer- Parameters:
uri- the URI/URL of the imagepos- the position of the imageforeignAttributes- an optional Map with foreign attributes, may be null
-
renderForeignObject
Renders a foreign object area.- Overrides:
renderForeignObjectin classAbstractPathOrientedRenderer- Parameters:
fo- The foreign object areapos- The target position of the foreign object (todo) Make renderForeignObject() protected
-
renderLeader
Render the given Leader.- Overrides:
renderLeaderin classAbstractRenderer- Parameters:
area- the leader to render
-
clip
protected void clip()Clip using the current path.- Specified by:
clipin classAbstractPathOrientedRenderer
-
clipRect
protected void clipRect(float x, float y, float width, float height) Clip using a rectangular area.- Specified by:
clipRectin classAbstractPathOrientedRenderer- Parameters:
x- the x coordinate (in points)y- the y coordinate (in points)width- the width of the rectangle (in points)height- the height of the rectangle (in points)
-
clipBackground
protected void clipBackground(float startx, float starty, float width, float height, BorderProps bpsBefore, BorderProps bpsAfter, BorderProps bpsStart, BorderProps bpsEnd) TODO represent border related parameters in a class Clip the background to the inner border. This draws the border traits given the position and the traits.- Overrides:
clipBackgroundin classAbstractPathOrientedRenderer- Parameters:
startx- the start x positionstarty- the start y positionwidth- the width of the areaheight- the height of the areabpsBefore- the border-before traitsbpsAfter- the border-after traitsbpsStart- the border-start traitsbpsEnd- the border-end traits
-
closePath
protected void closePath()Closes the current subpath by appending a straight line segment from the current point to the starting point of the subpath.- Specified by:
closePathin classAbstractPathOrientedRenderer
-
drawBackground
protected void drawBackground(float startx, float starty, float width, float height, Trait.Background back, BorderProps bpsBefore, BorderProps bpsAfter, BorderProps bpsStart, BorderProps bpsEnd) Draw the background. This draws the background given the position and the traits.- Overrides:
drawBackgroundin classAbstractPathOrientedRenderer- Parameters:
startx- the start x positionstarty- the start y positionwidth- the width of the areaheight- the height of the areaback- the background traitsbpsBefore- the border specification on the top edgebpsAfter- the border traits associated with bottom edgebpsStart- the border specification on the left edgebpsEnd- the border specification on the right edge
-
drawBorders
protected void drawBorders(float startx, float starty, float width, float height, BorderProps bpsBefore, BorderProps bpsAfter, BorderProps bpsStart, BorderProps bpsEnd, int level, Color innerBackgroundColor) Draw the borders. This draws the border traits given the position and the traits.- Overrides:
drawBordersin classAbstractPathOrientedRenderer- Parameters:
startx- the start x positionstarty- the start y positionwidth- the width of the areaheight- the height of the areabpsBefore- the border traits associated with before edgebpsAfter- the border traits associated with after edgebpsStart- the border traits associated with start edgebpsEnd- the border traits associated with end edgelevel- of bidirectional embeddinginnerBackgroundColor- the background color of the block
-
drawBorderLine
protected void drawBorderLine(float x1, float y1, float x2, float y2, boolean horz, boolean startOrBefore, int style, Color col) Draw a border segment of an XSL-FO style border.- Specified by:
drawBorderLinein classAbstractPathOrientedRenderer- Parameters:
x1- starting x coordinatey1- starting y coordinatex2- ending x coordinatey2- ending y coordinatehorz- true for horizontal border segments, false for vertical border segmentsstartOrBefore- true for border segments on the start or before edge, false for end or after.style- the border style (one of Constants.EN_DASHED etc.)col- the color for the border segment
-
fillRect
protected void fillRect(float x, float y, float width, float height) Fill a rectangular area.- Specified by:
fillRectin classAbstractPathOrientedRenderer- Parameters:
x- the x coordinatey- the y coordinatewidth- the width of the rectangleheight- the height of the rectangle
-
moveTo
protected void moveTo(float x, float y) Moves the current point to (x, y), omitting any connecting line segment.- Specified by:
moveToin classAbstractPathOrientedRenderer- Parameters:
x- x coordinatey- y coordinate
-
lineTo
protected void lineTo(float x, float y) Appends a straight line segment from the current point to (x, y). The new current point is (x, y).- Specified by:
lineToin classAbstractPathOrientedRenderer- Parameters:
x- x coordinatey- y coordinate
-
updateColor
Establishes a new foreground or fill color.- Specified by:
updateColorin classAbstractPathOrientedRenderer- Parameters:
col- the color to apply (null skips this operation)fill- true to set the fill color, false for the foreground color
-