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
-
public class IFRenderer extends AbstractPathOrientedRenderer
This renderer implementation is an adapter to theIFPainterinterface. It is used to generate content using FOP's intermediate format.
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringIF_MIME_TYPEXML MIME typeprotected static org.apache.commons.logging.Logloglogging instanceprotected RenderermimicIf not null, the XMLRenderer will mimic another renderer by using its font setup.protected java.util.MappageIndicesMaps unique PageViewport key to page indices (for link target handling)-
Fields inherited from class org.apache.fop.render.AbstractPathOrientedRenderer
FOX_TRANSFORM
-
Fields inherited from class org.apache.fop.render.PrintRenderer
embedFontInfoList, fontInfo
-
Fields 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, userAgent
-
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, 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 Constructor Description IFRenderer(FOUserAgent userAgent)Main constructor
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidbeginTextObject()Indicates the beginning of a text object.protected java.util.ListbreakOutOfStateStack()Breaks 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 voidclosePath()Closes the current subpath by appending a straight line segment from the current point to the starting point of the subpath.protected voidconcatenateTransformationMatrix(java.awt.geom.AffineTransform at)Concatenates the current transformation matrix with the given one, therefore establishing a new coordinate system.protected IFDocumentHandlercreateDefaultDocumentHandler()Creates 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, java.awt.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, java.awt.Color innerBackgroundColor)Draw the borders.protected voiddrawImage(java.lang.String uri, java.awt.geom.Rectangle2D pos, java.util.Map foreignAttributes)Draw an image at the indicated location.protected voidendLayer()Finish current optional content group layer.protected voidendTextObject()Indicates the end of a text object.protected voidendVParea()Signals exit from a viewport area.protected voidfillRect(float x, float y, float width, float height)Fill a rectangular area.protected IFDocumentNavigationHandlergetDocumentNavigationHandler()Returns the document navigation handler if available/supported.java.lang.StringgetMimeType()Get the MIME type of the renderer.protected booleanhasDocumentNavigation()Indicates 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.voidprocessOffDocumentItem(OffDocumentItem odi)Tells 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, java.util.List children)Renders a block viewport.protected voidrenderBookmarkTree(BookmarkData bookmarks)Renders a Bookmark-Tree objectvoidrenderForeignObject(ForeignObject fo, java.awt.geom.Rectangle2D pos)Renders a foreign object area.voidrenderImage(Image image, java.awt.geom.Rectangle2D pos)Renders an image area.protected voidrenderInlineArea(InlineArea inlineArea)Render the given InlineArea.voidrenderInlineParent(InlineParent ip)Render 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 voidrestoreGraphicsState()Restores the last graphics state of the rendering engine.protected voidrestoreStateStackAfterBreakOut(java.util.List breakOutList)Restores the state stack after a break out.protected voidsaveGraphicsState()Saves the graphics state of the rendering engine.voidsetDocumentHandler(IFDocumentHandler documentHandler)Sets theIFDocumentHandlerto be used by theIFRenderer.voidsetDocumentLocale(java.util.Locale locale)voidsetupFontInfo(FontInfo inFontInfo)Set up the given FontInfo.protected voidstartLayer(java.lang.String layer)Establish new optional content group layer.voidstartPageSequence(PageSequence pageSequence)Tells the renderer that a new page sequence starts.voidstartRenderer(java.io.OutputStream outputStream)Initiates the rendering phase.protected voidstartVParea(CTM ctm, java.awt.Rectangle clippingRect)Establishes a new viewport area.voidstopRenderer()Signals the end of the rendering phase.booleansupportsOutOfOrder()Check if this renderer supports out of order rendering.protected voidupdateColor(java.awt.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, renderTextDecoration
-
Methods inherited from class org.apache.fop.render.PrintRenderer
addFontList, createRendererContext, getFontFromArea, getFontInfo, getFontList, getInternalFontNameForArea, instantiateRendererContext, renderDocument, setFontList
-
Methods 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 Detail
-
log
protected static final org.apache.commons.logging.Log log
logging instance
-
IF_MIME_TYPE
public static final java.lang.String IF_MIME_TYPE
XML MIME type- See Also:
- Constant Field Values
-
mimic
protected Renderer mimic
If not null, the XMLRenderer will mimic another renderer by using its font setup.
-
pageIndices
protected java.util.Map pageIndices
Maps unique PageViewport key to page indices (for link target handling)
-
-
Constructor Detail
-
IFRenderer
public IFRenderer(FOUserAgent userAgent)
Main constructor- Parameters:
userAgent- the user agent that contains configuration details. This cannot be null.
-
-
Method Detail
-
getMimeType
public java.lang.String getMimeType()
Get the MIME type of the renderer.- Returns:
- The MIME type of the renderer, may return null if not applicable.
-
setDocumentHandler
public void setDocumentHandler(IFDocumentHandler documentHandler)
Sets theIFDocumentHandlerto be used by theIFRenderer.- Parameters:
documentHandler- theIFDocumentHandler
-
setupFontInfo
public void setupFontInfo(FontInfo inFontInfo) throws FOPException
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
-
getDocumentNavigationHandler
protected IFDocumentNavigationHandler getDocumentNavigationHandler()
Returns the document navigation handler if available/supported.- Returns:
- the document navigation handler or null if not supported
-
hasDocumentNavigation
protected boolean hasDocumentNavigation()
Indicates whether document navigation features are supported by the document handler.- Returns:
- true if document navigation features are available
-
createDefaultDocumentHandler
protected IFDocumentHandler createDefaultDocumentHandler()
Creates a defaultIFDocumentHandlerwhen none has been set.- Returns:
- the default IFDocumentHandler
-
startRenderer
public void startRenderer(java.io.OutputStream outputStream) throws java.io.IOExceptionInitiates 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:
java.io.IOException- If an I/O error occurs
-
stopRenderer
public void stopRenderer() throws java.io.IOExceptionSignals 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:
java.io.IOException- If an I/O error occurs
-
setDocumentLocale
public void setDocumentLocale(java.util.Locale locale)
Description copied from class:AbstractRenderer- Specified by:
setDocumentLocalein interfaceRenderer- Overrides:
setDocumentLocalein classAbstractRenderer- Parameters:
locale- Locale of the language
-
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.- Specified by:
processOffDocumentItemin interfaceRenderer- Overrides:
processOffDocumentItemin classAbstractRenderer- Parameters:
odi- The off-document item to be rendered
-
renderBookmarkTree
protected void renderBookmarkTree(BookmarkData bookmarks)
Renders a Bookmark-Tree object- Parameters:
bookmarks- the BookmarkData object containing all the Bookmark-Items
-
startPageSequence
public void startPageSequence(PageSequence pageSequence)
Tells the renderer that a new page sequence starts.- Specified by:
startPageSequencein interfaceRenderer- Overrides:
startPageSequencein classAbstractRenderer- Parameters:
pageSequence- the page sequence
-
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 toRenderer.renderPage(PageViewport).- Specified by:
preparePagein interfaceRenderer- Overrides:
preparePagein classAbstractRenderer- Parameters:
page- The page viewport to use
-
renderPage
public void renderPage(PageViewport page) throws java.io.IOException, FOPException
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:
java.io.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
protected java.util.List 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
protected void restoreStateStackAfterBreakOut(java.util.List breakOutList)
Restores the state stack after a break out.- Specified by:
restoreStateStackAfterBreakOutin classAbstractPathOrientedRenderer- Parameters:
breakOutList- the state stack to restore.
-
concatenateTransformationMatrix
protected void concatenateTransformationMatrix(java.awt.geom.AffineTransform at)
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
protected void renderRegionViewport(RegionViewport viewport)
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
protected void renderBlockViewport(BlockViewport bv, java.util.List children)
Renders a block viewport.- Overrides:
renderBlockViewportin classAbstractPathOrientedRenderer- Parameters:
bv- The block viewportchildren- The children to render within the block viewport
-
renderInlineViewport
public void renderInlineViewport(InlineViewport viewport)
Render an inline viewport. This renders an inline viewport by clipping if necessary.- Overrides:
renderInlineViewportin classAbstractPathOrientedRenderer- Parameters:
viewport- the viewport to handle
-
startVParea
protected void startVParea(CTM ctm, java.awt.Rectangle clippingRect)
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
protected void startLayer(java.lang.String layer)
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
protected void renderInlineArea(InlineArea inlineArea)
Render the given InlineArea.- Overrides:
renderInlineAreain classAbstractRenderer- Parameters:
inlineArea- inline area text to render
-
renderInlineParent
public void renderInlineParent(InlineParent ip)
Render the given InlineParent.- Overrides:
renderInlineParentin classAbstractRenderer- Parameters:
ip- the inline parent to render
-
renderBlock
protected void renderBlock(Block block)
Renders a block area.- Overrides:
renderBlockin classAbstractRenderer- Parameters:
block- The block area
-
renderText
protected void renderText(TextArea text)
Render the given TextArea.- Overrides:
renderTextin classAbstractRenderer- Parameters:
text- the text to render
-
renderWord
protected void renderWord(WordArea word)
Render the given WordArea.- Overrides:
renderWordin classAbstractRenderer- Parameters:
word- the word to render
-
renderSpace
protected void renderSpace(SpaceArea space)
Render the given SpaceArea.- Overrides:
renderSpacein classAbstractRenderer- Parameters:
space- the space to render
-
renderImage
public void renderImage(Image image, java.awt.geom.Rectangle2D pos)
Renders an image area.- Overrides:
renderImagein classAbstractRenderer- Parameters:
image- The imagepos- The target position of the image (todo) Make renderImage() protected
-
drawImage
protected void drawImage(java.lang.String uri, java.awt.geom.Rectangle2D pos, java.util.Map foreignAttributes)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
public void renderForeignObject(ForeignObject fo, java.awt.geom.Rectangle2D pos)
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
public void renderLeader(Leader area)
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, java.awt.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, java.awt.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
protected void updateColor(java.awt.Color col, boolean fill)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
-
-