public class PDFRenderer extends AbstractPathOrientedRenderer implements PDFConfigurationConstants
| Modifier and Type | Field and Description |
|---|---|
protected PDFResourceContext |
currentContext
the current annotation list to add annotations to
|
protected PDFPage |
currentPage
the current page to add annotations to
|
protected java.lang.String |
currentPageRef
the current page's PDF reference string (to avoid numerous function calls)
|
protected PDFContentGenerator |
generator
The current content generator to produce PDF commands with
|
protected java.util.Map |
idGoTos
Maps XSL-FO element IDs to PDFGoTo objects targeting the corresponding areas
These objects may not all be fully filled in yet
|
protected java.util.Map |
idPositions
Maps XSL-FO element IDs to their on-page XY-positions
Must be used in conjunction with the page reference to fully specify the PDFGoTo details
|
static java.lang.String |
MIME_TYPE
The MIME type for PDF
|
static int |
NORMAL_PDF_RESOLUTION
Normal PDF resolution (72dpi)
|
protected java.io.OutputStream |
ostream
The output stream to write the document to
|
protected int |
pageHeight
page height
|
protected java.util.Map |
pageReferences
Maps unique PageViewport key to PDF page reference
|
protected PDFDocument |
pdfDoc
the PDF Document being created
|
protected PDFResources |
pdfResources
the /Resources object of the PDF document being created
|
protected org.apache.fop.render.pdf.PDFRenderingUtil |
pdfUtil
Utility class which enables all sorts of features that are not directly connected to the
normal rendering process.
|
protected java.util.List |
unfinishedGoTos
The PDFGoTos in idGoTos that are not complete yet
|
protected static boolean |
WRITE_COMMENTS
Controls whether comments are written to the PDF stream.
|
FOX_TRANSFORMembedFontInfoList, fontInfo, fontResolvercontainingBPPosition, containingIPPosition, currentBPPosition, currentIPPosition, currentPageViewport, log, userAgentENCRYPTION_PARAMS, KEY_DISABLE_SRGB_COLORSPACE, KEY_OUTPUT_PROFILE, NO_ANNOTATIONS, NO_COPY_CONTENT, NO_EDIT_CONTENT, NO_PRINT, OWNER_PASSWORD, PDF_A_MODE, PDF_X_MODE, USER_PASSWORDCOMPOUND_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_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_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_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_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_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_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, EN_X_DISTRIBUTE, EN_X_FILL, 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_ALT_TEXT, PR_X_BLOCK_PROGRESSION_UNIT, PR_X_DISABLE_COLUMN_BALANCING, PR_X_ORPHAN_CONTENT_LIMIT, PR_X_PTR, PR_X_WIDOW_CONTENT_LIMIT, PR_XML_LANG, PR_Z_INDEX, PROPERTY_COUNT, PROPERTY_MASK| Constructor and Description |
|---|
PDFRenderer()
create the PDF renderer
|
| Modifier and Type | Method and Description |
|---|---|
protected void |
beginTextObject()
Indicates the beginning of a text object.
|
protected java.util.List |
breakOutOfStateStack()
Breaks out of the state stack to handle fixed block-containers.
|
protected void |
clip()
Clip an area.
|
protected void |
clipRect(float x,
float y,
float width,
float height)
Clip using a rectangular area.
|
protected void |
closePath()
Closes the current subpath by appending a straight line segment from
the current point to the starting point of the subpath.
|
protected void |
concatenateTransformationMatrix(java.awt.geom.AffineTransform at)
Concatenates the current transformation matrix with the given one, therefore establishing
a new coordinate system.
|
protected RendererContext |
createRendererContext(int x,
int y,
int width,
int height,
java.util.Map foreignAttributes)
Creates a RendererContext for an image.
|
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.
|
protected void |
drawImage(java.lang.String url,
java.awt.geom.Rectangle2D pos,
java.util.Map foreignAttributes)
Draw an image at the indicated location.
|
protected void |
endTextObject()
Indicates the end of a text object.
|
protected void |
endVParea()
Signals exit from a viewport area.
|
protected void |
escapeText(java.lang.String s,
int[] letterAdjust,
Font font,
AbstractTextArea parentArea)
Escapes text according to PDF rules.
|
protected void |
escapeText(java.lang.String s,
int start,
int end,
int[] letterAdjust,
Font font,
AbstractTextArea parentArea)
Escapes text according to PDF rules.
|
protected void |
fillRect(float x,
float y,
float width,
float height)
Fill a rectangular area.
|
protected void |
finishIDGoTo(PDFGoTo gt,
java.awt.geom.Point2D.Float position)
Set XY position in the PDFGoTo and add it to the PDF trailer.
|
protected void |
finishIDGoTo(PDFGoTo gt,
java.lang.String pdfPageRef,
java.awt.geom.Point2D.Float position)
Set page reference and XY position in the PDFGoTo and add it to the PDF trailer.
|
protected void |
finishOpenGoTos()
Checks if there are any unfinished PDFGoTos left in the list and resolves them
to a default position on the page.
|
protected static java.lang.String |
format(float value)
Formats a float value (normally coordinates) as Strings.
|
Graphics2DAdapter |
getGraphics2DAdapter() |
java.lang.String |
getMimeType()
Get the MIME type of the renderer.
|
protected PDFGoTo |
getPDFGoToForID(java.lang.String targetID,
java.lang.String pvKey)
Get a PDFGoTo pointing to the given id.
|
protected java.lang.String |
getTargetableID(Area area)
Returns area's id if it is the first area in the document with that id
(i.e.
|
protected void |
lineTo(float x,
float y)
Appends a straight line segment from the current point to (x, y).
|
protected void |
moveTo(float x,
float y)
Moves the current point to (x, y), omitting any connecting line segment.
|
void |
placeImage(float x,
float y,
float w,
float h,
PDFXObject xobj)
Places a previously registered image at a certain place on the page.
|
void |
preparePage(PageViewport page)
The pdf page is prepared by making the page.
|
void |
processOffDocumentItem(OffDocumentItem odi)
Tells the renderer to process an item not explicitly placed on the
document (e.g., PDF bookmarks).
|
protected void |
putImage(java.lang.String uri,
java.awt.geom.Rectangle2D pos)
Deprecated.
Use
putImage(String, Rectangle2D, Map) instead. |
protected void |
putImage(java.lang.String uri,
java.awt.geom.Rectangle2D pos,
java.util.Map foreignAttributes)
Adds a PDF XObject (a bitmap or form) to the PDF that will later be referenced.
|
protected void |
renderBlock(Block block)
Renders a block area.
|
protected void |
renderBookmarkTree(BookmarkData bookmarks)
Renders a Bookmark-Tree object
|
void |
renderDocument(org.w3c.dom.Document doc,
java.lang.String ns,
java.awt.geom.Rectangle2D pos,
java.util.Map foreignAttributes)
Renders an XML document (SVG for example).
|
void |
renderImage(Image image,
java.awt.geom.Rectangle2D pos)
Renders an image area.
|
protected void |
renderInlineArea(InlineArea inlineArea)
Render the given InlineArea.
|
void |
renderInlineParent(InlineParent ip)
Render inline parent area.
|
void |
renderLeader(Leader area)
Render leader area.
|
protected void |
renderLineArea(LineArea line)
Renders a line area.
|
void |
renderPage(PageViewport page)
This method creates a PDF stream for the current page
uses it as the contents of a new page.
|
void |
renderSpace(SpaceArea space)
Render the given SpaceArea.
|
void |
renderText(TextArea text)
Render the given TextArea.
|
void |
renderViewport(Viewport viewport)
Render an inline viewport.
|
void |
renderWord(WordArea word)
Render the given WordArea.
|
protected void |
restoreGraphicsState()
Restores the last graphics state of the rendering engine.
|
protected void |
restoreStateStackAfterBreakOut(java.util.List breakOutList)
Restores the state stack after a break out.
|
protected void |
saveAbsolutePosition(java.lang.String id,
int relativeIPP,
int relativeBPP)
Saves id's absolute position on page for later retrieval by PDFGoTos,
using the currently valid transformation and the currently valid PDF page reference
|
protected void |
saveAbsolutePosition(java.lang.String id,
java.lang.String pdfPageRef,
int relativeIPP,
int relativeBPP,
java.awt.geom.AffineTransform tf)
Saves id's absolute position on page for later retrieval by PDFGoTos
|
protected void |
saveBlockPosIfTargetable(Block block)
If the given block area is a possible link target, its id + absolute position will
be saved.
|
protected void |
saveGraphicsState()
Saves the graphics state of the rendering engine.
|
protected void |
saveInlinePosIfTargetable(InlineArea inlineArea)
If the given inline area is a possible link target, its id + absolute position will
be saved.
|
void |
setAMode(PDFAMode mode)
Sets the PDF/A mode for the PDF renderer.
|
void |
setEncryptionParams(PDFEncryptionParams encryptionParams)
Sets the encryption parameters used by the PDF renderer.
|
void |
setFilterMap(java.util.Map filterMap)
Sets the filter map to be used by the PDF renderer.
|
void |
setOutputProfileURI(java.lang.String outputProfileURI)
Sets the output color profile for the PDF renderer.
|
void |
setUserAgent(FOUserAgent agent)
Set the User Agent.
|
void |
setXMode(PDFXMode mode)
Sets the PDF/X mode for the PDF renderer.
|
void |
startPageSequence(PageSequence pageSequence)
Start the next page sequence.
|
void |
startRenderer(java.io.OutputStream stream)
Initiates the rendering phase.
|
protected void |
startVParea(CTM ctm,
java.awt.geom.Rectangle2D clippingRect)
Establishes a new viewport area.
|
void |
stopRenderer()
Signals the end of the rendering phase.
|
boolean |
supportsOutOfOrder()
Check if this renderer supports out of order rendering.
|
protected void |
updateColor(java.awt.Color col,
boolean fill)
Establishes a new foreground or fill color.
|
drawBackAndBorders, drawBackAndBorders, drawBackground, drawBorders, drawBorders, drawImage, establishTransformationMatrix, handleBlockTraits, handleRegionTraits, renderBlockViewport, renderFlow, renderForeignObject, renderInlineAreaBackAndBorders, renderReferenceArea, renderTextDecorationaddFontList, getFontFromArea, getFontInfo, getFontList, getFontResolver, getInternalFontNameForArea, instantiateRendererContext, setFontList, setupFontInfoconvertTitleToString, getCurrentPageViewport, getImageAdapter, getUserAgent, mptToPt, ptToMpt, renderBeforeFloat, renderBlocks, renderBodyRegion, renderContainer, renderFootnote, renderInlineBlockParent, renderInlineSpace, renderMainReference, renderPageAreas, renderRegion, renderRegionViewport, renderXML, startPageSequencepublic static final java.lang.String MIME_TYPE
public static final int NORMAL_PDF_RESOLUTION
protected static final boolean WRITE_COMMENTS
protected PDFDocument pdfDoc
protected org.apache.fop.render.pdf.PDFRenderingUtil pdfUtil
protected java.util.Map pageReferences
protected java.util.Map idPositions
protected java.util.Map idGoTos
protected java.util.List unfinishedGoTos
protected java.io.OutputStream ostream
protected PDFResources pdfResources
protected PDFContentGenerator generator
protected PDFResourceContext currentContext
protected PDFPage currentPage
protected java.lang.String currentPageRef
protected int pageHeight
public void setUserAgent(FOUserAgent agent)
setUserAgent in interface RenderersetUserAgent in class AbstractRendereragent - The User Agentpublic void startRenderer(java.io.OutputStream stream)
throws java.io.IOException
startRenderer in interface RendererstartRenderer in class AbstractRendererstream - The OutputStream to use for outputjava.io.IOException - If an I/O error occursprotected void finishOpenGoTos()
public void stopRenderer()
throws java.io.IOException
stopRenderer in interface RendererstopRenderer in class AbstractRendererjava.io.IOException - If an I/O error occurspublic boolean supportsOutOfOrder()
supportsOutOfOrder in interface RenderersupportsOutOfOrder in class AbstractRendererpublic void processOffDocumentItem(OffDocumentItem odi)
processOffDocumentItem in interface RendererprocessOffDocumentItem in class AbstractRendererodi - The off-document item to be renderedprotected void renderBookmarkTree(BookmarkData bookmarks)
bookmarks - the BookmarkData object containing all the Bookmark-Itemspublic Graphics2DAdapter getGraphics2DAdapter()
getGraphics2DAdapter in interface RenderergetGraphics2DAdapter in class AbstractRendererprotected void saveGraphicsState()
saveGraphicsState in class AbstractPathOrientedRendererprotected void restoreGraphicsState()
restoreGraphicsState in class AbstractPathOrientedRendererprotected void beginTextObject()
beginTextObject in class AbstractPathOrientedRendererprotected void endTextObject()
endTextObject in class AbstractPathOrientedRendererpublic void startPageSequence(PageSequence pageSequence)
startPageSequence in interface RendererstartPageSequence in class AbstractRendererpageSequence - the page sequencepublic void preparePage(PageViewport page)
preparePage in interface RendererpreparePage in class AbstractRendererpage - the page to preparepublic void renderPage(PageViewport page) throws java.io.IOException, FOPException
renderPage in interface RendererrenderPage in class AbstractRendererpage - The page to be renderedjava.io.IOException - if an I/O error occursFOPException - if a FOP interal error occurs.protected void startVParea(CTM ctm, java.awt.geom.Rectangle2D clippingRect)
startVParea in class AbstractRendererctm - the coordinate transformation matrix to useclippingRect - the clipping rectangle if the viewport should be clipping,
null if no clipping is performed.protected void endVParea()
endVParea in class AbstractRendererprotected void concatenateTransformationMatrix(java.awt.geom.AffineTransform at)
concatenateTransformationMatrix in class AbstractPathOrientedRendererat - the transformation matrix to process (coordinates in points)protected static java.lang.String format(float value)
value - the valueprotected void drawBorderLine(float x1,
float y1,
float x2,
float y2,
boolean horz,
boolean startOrBefore,
int style,
java.awt.Color col)
drawBorderLine in class AbstractPathOrientedRendererx1 - 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 segmentprotected void clipRect(float x,
float y,
float width,
float height)
clipRect in class AbstractPathOrientedRendererx - 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)protected void clip()
clip in class AbstractPathOrientedRendererprotected void moveTo(float x,
float y)
moveTo in class AbstractPathOrientedRendererx - x coordinatey - y coordinateprotected void lineTo(float x,
float y)
lineTo in class AbstractPathOrientedRendererx - x coordinatey - y coordinateprotected void closePath()
closePath in class AbstractPathOrientedRendererprotected void fillRect(float x,
float y,
float width,
float height)
fillRect in class AbstractPathOrientedRendererx - the x coordinatey - the y coordinatewidth - the width of the rectangleheight - the height of the rectangleprotected java.util.List breakOutOfStateStack()
breakOutOfStateStack in class AbstractPathOrientedRendererprotected void restoreStateStackAfterBreakOut(java.util.List breakOutList)
restoreStateStackAfterBreakOut in class AbstractPathOrientedRendererbreakOutList - the state stack to restore.protected java.lang.String getTargetableID(Area area)
area - the area for which to return the idprotected void finishIDGoTo(PDFGoTo gt, java.awt.geom.Point2D.Float position)
gt - the PDFGoTo objectposition - the X,Y position to setprotected void finishIDGoTo(PDFGoTo gt, java.lang.String pdfPageRef, java.awt.geom.Point2D.Float position)
gt - the PDFGoTo objectpdfPageRef - the PDF reference string of the target page objectposition - the X,Y position to setprotected PDFGoTo getPDFGoToForID(java.lang.String targetID, java.lang.String pvKey)
targetID - the target id of the PDFGoTopvKey - the unique key of the target PageViewportprotected void saveAbsolutePosition(java.lang.String id,
java.lang.String pdfPageRef,
int relativeIPP,
int relativeBPP,
java.awt.geom.AffineTransform tf)
id - the id of the area whose position must be savedpdfPageRef - the PDF page reference stringrelativeIPP - the *relative* IP position in millipointsrelativeBPP - the *relative* BP position in millipointstf - the transformation to apply once the relative positions have been
converted to pointsprotected void saveAbsolutePosition(java.lang.String id,
int relativeIPP,
int relativeBPP)
id - the id of the area whose position must be savedrelativeIPP - the *relative* IP position in millipointsrelativeBPP - the *relative* BP position in millipointsprotected void saveBlockPosIfTargetable(Block block)
block - the block area in questionprotected void saveInlinePosIfTargetable(InlineArea inlineArea)
inlineArea - the inline area in questionprotected void renderBlock(Block block)
renderBlock in class AbstractRendererblock - The block areaprotected void renderLineArea(LineArea line)
A line area may have grouped styling for its children such as underline, background.
renderLineArea in class AbstractRendererline - The line areaprotected void renderInlineArea(InlineArea inlineArea)
renderInlineArea in class AbstractRendererinlineArea - inline area text to renderpublic void renderInlineParent(InlineParent ip)
renderInlineParent in class AbstractRendererip - the inline parent areapublic void renderViewport(Viewport viewport)
renderViewport in class AbstractPathOrientedRendererviewport - the viewport to handlepublic void renderText(TextArea text)
renderText in class AbstractRenderertext - the text to renderpublic void renderWord(WordArea word)
renderWord in class AbstractRendererword - the word to renderpublic void renderSpace(SpaceArea space)
renderSpace in class AbstractRendererspace - the space to renderprotected void escapeText(java.lang.String s,
int[] letterAdjust,
Font font,
AbstractTextArea parentArea)
s - Text to escapeletterAdjust - an array of widths for letter adjustment (may be null)font - to font in useparentArea - the parent text area to retrieve certain traits fromprotected void escapeText(java.lang.String s,
int start,
int end,
int[] letterAdjust,
Font font,
AbstractTextArea parentArea)
s - Text to escapestart - the start position in the textend - the end position in the textletterAdjust - an array of widths for letter adjustment (may be null)font - to font in useparentArea - the parent text area to retrieve certain traits fromprotected void updateColor(java.awt.Color col,
boolean fill)
updateColor in class AbstractPathOrientedRenderercol - the color to apply (null skips this operation)fill - true to set the fill color, false for the foreground colorpublic void renderImage(Image image, java.awt.geom.Rectangle2D pos)
renderImage in class AbstractRendererimage - The imagepos - The target position of the image
(todo) Make renderImage() protectedprotected void drawImage(java.lang.String url,
java.awt.geom.Rectangle2D pos,
java.util.Map foreignAttributes)
drawImage in class AbstractPathOrientedRendererurl - the URI/URL of the imagepos - the position of the imageforeignAttributes - an optional Map with foreign attributes, may be nullprotected void putImage(java.lang.String uri,
java.awt.geom.Rectangle2D pos)
putImage(String, Rectangle2D, Map) instead.uri - URL of the bitmappos - Position of the bitmapprotected void putImage(java.lang.String uri,
java.awt.geom.Rectangle2D pos,
java.util.Map foreignAttributes)
uri - URL of the bitmappos - Position of the bitmapforeignAttributes - foreign attributes associated with the imagepublic void placeImage(float x,
float y,
float w,
float h,
PDFXObject xobj)
x - X coordinatey - Y coordinatew - width for imageh - height for imagexobj - the image XObjectprotected RendererContext createRendererContext(int x, int y, int width, int height, java.util.Map foreignAttributes)
createRendererContext in class PrintRendererx - the x coordinate (in millipoints)y - the y coordinate (in millipoints)width - the width of the image (in millipoints)height - the height of the image (in millipoints)foreignAttributes - a Map or foreign attributes, may be nullpublic void renderDocument(org.w3c.dom.Document doc,
java.lang.String ns,
java.awt.geom.Rectangle2D pos,
java.util.Map foreignAttributes)
renderDocument in class PrintRendererdoc - the DOM Document containing the XML document to be renderedns - the namespace URI for the XML documentpos - the position for the generated graphic/imageforeignAttributes - the foreign attributes containing rendering hints, or nullpublic void renderLeader(Leader area)
renderLeader in class AbstractRendererarea - the leader area to renderpublic java.lang.String getMimeType()
getMimeType in interface Rendererpublic void setAMode(PDFAMode mode)
mode - the PDF/A modepublic void setXMode(PDFXMode mode)
mode - the PDF/X modepublic void setOutputProfileURI(java.lang.String outputProfileURI)
outputProfileURI - the URI to the output color profilepublic void setFilterMap(java.util.Map filterMap)
filterMap - the filter mappublic void setEncryptionParams(PDFEncryptionParams encryptionParams)
encryptionParams - the encryption parametersCopyright 1999-2010 The Apache Software Foundation. All Rights Reserved.