Package org.apache.fop.layoutmgr
Class PageSequenceLayoutManager
- java.lang.Object
-
- org.apache.fop.layoutmgr.AbstractBaseLayoutManager
-
- org.apache.fop.layoutmgr.AbstractLayoutManager
-
- org.apache.fop.layoutmgr.AbstractPageSequenceLayoutManager
-
- org.apache.fop.layoutmgr.PageSequenceLayoutManager
-
- All Implemented Interfaces:
PercentBaseContext
,Constants
,LayoutManager
,TopLevelLayoutManager
public class PageSequenceLayoutManager extends AbstractPageSequenceLayoutManager
LayoutManager for a PageSequence. This class is instantiated by area.AreaTreeHandler for each fo:page-sequence found in the input document.
-
-
Field Summary
Fields Modifier and Type Field Description private int
endIntrusionAdjustment
private static org.apache.commons.logging.Log
log
private PageBreaker
pageBreaker
private PageProvider
pageProvider
private int
startIntrusionAdjustment
private java.util.List<java.util.List<KnuthElement>>
tableFooterFootnotes
Footnotes coming from repeated table footers, to be added after any other footnote.private java.util.List<java.util.List<KnuthElement>>
tableHeaderFootnotes
Footnotes coming from repeated table headers, to be added before any other footnote.-
Fields inherited from class org.apache.fop.layoutmgr.AbstractPageSequenceLayoutManager
areaTreeHandler, curPage, currentPageNum, idTracker, pageSeq, startPageNum
-
Fields inherited from class org.apache.fop.layoutmgr.AbstractLayoutManager
childLMiter, childLMs, curChildLM, fobjIter, parentLayoutManager
-
Fields inherited from class org.apache.fop.layoutmgr.AbstractBaseLayoutManager
fobj, generatesBlockArea, generatesReferenceArea
-
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 PageSequenceLayoutManager(AreaTreeHandler ath, PageSequence pseq)
Constructor
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
activateLayout()
Activate the layout of this page sequence.void
addTableFooterFootnotes(java.util.List<java.util.List<KnuthElement>> footerFootnotes)
Registers the given footnotes so that they can be added to the current page, after any other footnote.void
addTableHeaderFootnotes(java.util.List<java.util.List<KnuthElement>> headerFootnotes)
Registers the given footnotes so that they can be added to the current page, before any other footnote.void
clearTableHeadingFootnotes()
Clears the footnotes coming from repeated table headers/footers, in order to start afresh for a new page.protected Page
createPage(int pageNumber, boolean isBlank)
Creates and returns a new page.protected void
finishPage()
Finishes a page in preparation for a new page.void
finishPageSequence()
Finished the page-sequence and notifies everyone about it.private boolean
flowNameEquals(Page newPage, boolean strict)
int
getCurrentColumnWidth()
int
getEndIntrusionAdjustment()
int
getFloatHeight()
int
getFloatYOffset()
FlowLayoutManager
getFlowLayoutManager()
protected int
getForcedLastPageNum(int lastPageNum)
The last page number of the sequence may be incremented, as determined by the force-page-count formatting property semanticsprotected int
getLastPageNumber()
int
getOffsetDueToFloat()
PageProvider
getPageProvider()
protected PageSequence
getPageSequence()
PageSequenceLayoutManager
getPSLM()
Provides access to this objectint
getStartIntrusionAdjustment()
java.util.List<java.util.List<KnuthElement>>
getTableFooterFootnotes()
private java.util.List<java.util.List<KnuthElement>>
getTableFootnotes(java.util.List<java.util.List<KnuthElement>> tableFootnotes)
java.util.List<java.util.List<KnuthElement>>
getTableHeaderFootnotes()
protected int
getWidthOfCurrentPage()
boolean
handlingEndOfFloat()
boolean
handlingStartOfFloat()
void
holdFootnotes(java.util.List fl, java.util.List ll, int tfl, int ifl, boolean fp, boolean nf, int fnfi, int fli, int fei, MinOptMax fsl, int pfli, int pfei)
void
initialize()
initialize the layout manager.(package private) boolean
isOnFirstPage(int partIndex)
Indicates whether the column/page at the given index is on the first page of this page sequence.private void
layoutSideRegion(int regionID)
protected Page
makeNewPage(boolean isBlank)
Makes a new pageprotected Page
makeNewPage(boolean isBlank, boolean emptyContent)
void
recordEndOfFloat(int fHeight)
void
recordStartOfFloat(int fHeight, int fYOffset)
void
retrieveFootnotes(PageBreakingAlgorithm alg)
void
setEndIntrusionAdjustment(int eia)
void
setStartIntrusionAdjustment(int sia)
-
Methods inherited from class org.apache.fop.layoutmgr.AbstractPageSequenceLayoutManager
addIDToPage, addUnresolvedArea, associateLayoutManagerID, doForcePageCount, getCurrentPage, getCurrentPageNum, getFirstPVWithID, getLastPVWithID, getLayoutManagerMaker, notifyEndOfLayout, reset, resolveRetrieveMarker, setCurrentPage
-
Methods inherited from class org.apache.fop.layoutmgr.AbstractLayoutManager
addAreas, addChildArea, addChildLM, addChildLMs, addId, checkEndOfLayout, createChildLMs, createNextChildLMs, getBaselineOffset, getChangedKnuthElements, getChildLM, getChildLMs, getCurrentPV, getNextKnuthElements, getParent, getParentArea, handlingFloat, hasLineAreaDescendant, hasNextChildLM, isFinished, isFirst, isLast, newNoLineAreaDescendantException, notifyEndOfLayout, notifyPos, possiblyRegisterMarkersForTables, preserveChildrenAtEndOfLayout, recreateChildrenLMs, registerMarkers, setCurrentChildLM, setFinished, setParent, toString, transferExtensionAttachments, transferExtensions, transferForeignAttributes
-
Methods inherited from class org.apache.fop.layoutmgr.AbstractBaseLayoutManager
getAncestorBlockAreaBPD, getAncestorBlockAreaIPD, getBaseLength, getChangeBarList, getContentAreaBPD, getContentAreaIPD, getFObj, getGeneratesBlockArea, getGeneratesLineArea, getGeneratesReferenceArea, getNextKnuthElements, getParentAreaBPD, getParentAreaIPD, getReferenceAreaBPD, getReferenceAreaIPD, isRestartable, setGeneratesBlockArea, setGeneratesReferenceArea
-
-
-
-
Field Detail
-
log
private static org.apache.commons.logging.Log log
-
pageProvider
private PageProvider pageProvider
-
pageBreaker
private PageBreaker pageBreaker
-
tableHeaderFootnotes
private java.util.List<java.util.List<KnuthElement>> tableHeaderFootnotes
Footnotes coming from repeated table headers, to be added before any other footnote.
-
tableFooterFootnotes
private java.util.List<java.util.List<KnuthElement>> tableFooterFootnotes
Footnotes coming from repeated table footers, to be added after any other footnote.
-
startIntrusionAdjustment
private int startIntrusionAdjustment
-
endIntrusionAdjustment
private int endIntrusionAdjustment
-
-
Constructor Detail
-
PageSequenceLayoutManager
public PageSequenceLayoutManager(AreaTreeHandler ath, PageSequence pseq)
Constructor- Parameters:
ath
- the area tree handler objectpseq
- fo:page-sequence to process
-
-
Method Detail
-
getPageProvider
public PageProvider getPageProvider()
- Returns:
- the PageProvider applicable to this page-sequence.
-
getPageSequence
protected PageSequence getPageSequence()
- Returns:
- the PageSequence being managed by this layout manager
-
getPSLM
public PageSequenceLayoutManager getPSLM()
Provides access to this object- Specified by:
getPSLM
in interfaceLayoutManager
- Overrides:
getPSLM
in classAbstractLayoutManager
- Returns:
- this PageSequenceLayoutManager instance
-
getFlowLayoutManager
public FlowLayoutManager getFlowLayoutManager()
-
activateLayout
public void activateLayout()
Activate the layout of this page sequence. PageViewports corresponding to each page generated by this page sequence will be created and sent to the AreaTreeModel for rendering.
-
initialize
public void initialize()
Description copied from class:AbstractPageSequenceLayoutManager
initialize the layout manager. Allows each layout manager to calculate often used values.- Specified by:
initialize
in interfaceLayoutManager
- Overrides:
initialize
in classAbstractPageSequenceLayoutManager
-
finishPageSequence
public void finishPageSequence()
Finished the page-sequence and notifies everyone about it.
-
createPage
protected Page createPage(int pageNumber, boolean isBlank)
Creates and returns a new page.- Specified by:
createPage
in classAbstractPageSequenceLayoutManager
- Parameters:
pageNumber
- the page numberisBlank
- true if it's a blank page- Returns:
- the newly created page
-
makeNewPage
protected Page makeNewPage(boolean isBlank)
Description copied from class:AbstractPageSequenceLayoutManager
Makes a new page- Overrides:
makeNewPage
in classAbstractPageSequenceLayoutManager
- Parameters:
isBlank
- whether this page is blank or not- Returns:
- a new page
-
makeNewPage
protected Page makeNewPage(boolean isBlank, boolean emptyContent)
-
flowNameEquals
private boolean flowNameEquals(Page newPage, boolean strict)
-
layoutSideRegion
private void layoutSideRegion(int regionID)
-
finishPage
protected void finishPage()
Finishes a page in preparation for a new page.- Overrides:
finishPage
in classAbstractPageSequenceLayoutManager
-
getForcedLastPageNum
protected int getForcedLastPageNum(int lastPageNum)
The last page number of the sequence may be incremented, as determined by the force-page-count formatting property semantics- Parameters:
lastPageNum
- number of sequence- Returns:
- the forced last page number of sequence
-
isOnFirstPage
boolean isOnFirstPage(int partIndex)
Indicates whether the column/page at the given index is on the first page of this page sequence.- Returns:
true
if the given part is on the first page of the sequence
-
getLastPageNumber
protected int getLastPageNumber()
- Overrides:
getLastPageNumber
in classAbstractPageSequenceLayoutManager
-
getWidthOfCurrentPage
protected int getWidthOfCurrentPage()
-
addTableHeaderFootnotes
public void addTableHeaderFootnotes(java.util.List<java.util.List<KnuthElement>> headerFootnotes)
Registers the given footnotes so that they can be added to the current page, before any other footnote.- Parameters:
headerFootnotes
- footnotes coming from a repeated table header
-
getTableHeaderFootnotes
public java.util.List<java.util.List<KnuthElement>> getTableHeaderFootnotes()
-
addTableFooterFootnotes
public void addTableFooterFootnotes(java.util.List<java.util.List<KnuthElement>> footerFootnotes)
Registers the given footnotes so that they can be added to the current page, after any other footnote.- Parameters:
footerFootnotes
- footnotes coming from a repeated table footer
-
getTableFooterFootnotes
public java.util.List<java.util.List<KnuthElement>> getTableFooterFootnotes()
-
getTableFootnotes
private java.util.List<java.util.List<KnuthElement>> getTableFootnotes(java.util.List<java.util.List<KnuthElement>> tableFootnotes)
-
clearTableHeadingFootnotes
public void clearTableHeadingFootnotes()
Clears the footnotes coming from repeated table headers/footers, in order to start afresh for a new page.
-
setStartIntrusionAdjustment
public void setStartIntrusionAdjustment(int sia)
-
setEndIntrusionAdjustment
public void setEndIntrusionAdjustment(int eia)
-
getStartIntrusionAdjustment
public int getStartIntrusionAdjustment()
-
getEndIntrusionAdjustment
public int getEndIntrusionAdjustment()
-
recordEndOfFloat
public void recordEndOfFloat(int fHeight)
-
handlingEndOfFloat
public boolean handlingEndOfFloat()
-
getOffsetDueToFloat
public int getOffsetDueToFloat()
-
recordStartOfFloat
public void recordStartOfFloat(int fHeight, int fYOffset)
-
handlingStartOfFloat
public boolean handlingStartOfFloat()
-
getFloatHeight
public int getFloatHeight()
-
getFloatYOffset
public int getFloatYOffset()
-
getCurrentColumnWidth
public int getCurrentColumnWidth()
-
holdFootnotes
public void holdFootnotes(java.util.List fl, java.util.List ll, int tfl, int ifl, boolean fp, boolean nf, int fnfi, int fli, int fei, MinOptMax fsl, int pfli, int pfei)
-
retrieveFootnotes
public void retrieveFootnotes(PageBreakingAlgorithm alg)
-
-