Package org.apache.fop.layoutmgr.inline
Class InlineLayoutManager
- java.lang.Object
-
- org.apache.fop.layoutmgr.AbstractBaseLayoutManager
-
- org.apache.fop.layoutmgr.AbstractLayoutManager
-
- org.apache.fop.layoutmgr.inline.InlineStackingLayoutManager
-
- org.apache.fop.layoutmgr.inline.InlineLayoutManager
-
- All Implemented Interfaces:
PercentBaseContext
,Constants
,BreakOpportunity
,InlineLevelLayoutManager
,LayoutManager
- Direct Known Subclasses:
BasicLinkLayoutManager
,BidiLayoutManager
public class InlineLayoutManager extends InlineStackingLayoutManager
LayoutManager for objects which stack children in the inline direction, such as Inline or Line
-
-
Field Summary
Fields Modifier and Type Field Description protected Length
alignmentAdjust
The alignment adjust propertyprotected int
alignmentBaseline
The alignment baseline propertyprivate AlignmentContext
alignmentContext
The keep-together propertyprivate boolean
areaCreated
protected Length
baselineShift
The baseline shift propertyprivate CommonBorderPaddingBackground
borderProps
protected int
dominantBaseline
The dominant baseline propertyprivate Font
font
private CommonMarginInline
inlineProps
private LayoutManager
lastChildLM
protected SpaceProperty
lineHeight
The line height propertyprivate static org.apache.commons.logging.Log
log
logging instance-
Fields inherited from class org.apache.fop.layoutmgr.inline.InlineStackingLayoutManager
childLC, extraBPD
-
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 InlineLayoutManager(InlineLevel node)
Create an inline layout manager.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addAreas(PositionIterator parentIter, LayoutContext context)
Generate and add areas to parent area.void
addChildArea(Area childArea)
Add a child area to the current area.protected void
addKnuthElementsForBorderPaddingEnd(java.util.List returnList)
Creates Knuth elements for end border padding and adds them to the return list.protected void
addKnuthElementsForBorderPaddingStart(java.util.List returnList)
Creates Knuth elements for start border padding and adds them to the return list.protected InlineArea
createArea(boolean isInline)
Create and initialize anInlineArea
protected InlineParent
createInlineParent()
Creates the inline area that will contain the areas returned by the children of this layout manager.protected Position
getAuxiliaryPosition()
java.util.List
getChangedKnuthElements(java.util.List oldList, int alignment, int depth)
Get a sequence of KnuthElements representing the content of the node assigned to the LM, after changes have been appliedprotected MinOptMax
getExtraIPD(boolean isNotFirst, boolean isNotLast)
Returns the extra IPD needed for any leading or trailing fences for the current area.java.util.List
getNextKnuthElements(LayoutContext context, int alignment)
Get a sequence of KnuthElements representing the content of the node assigned to the LM.protected SpaceProperty
getSpaceEnd()
Get the space at the end of the inline area.protected SpaceProperty
getSpaceStart()
Get the space at the start of the inline area.protected boolean
hasLeadingFence(boolean isNotFirst)
Indication if the current area has a leading fence.protected boolean
hasTrailingFence(boolean isNotLast)
Indication if the current area has a trailing fence.void
initialize()
initialize the layout manager.boolean
mustKeepTogether()
private boolean
mustKeepTogether(LayoutManager lm)
protected void
setTraits(boolean isNotFirst, boolean isNotLast)
Trait setter to be overridden by subclasses.-
Methods inherited from class org.apache.fop.layoutmgr.inline.InlineStackingLayoutManager
addALetterSpaceTo, addALetterSpaceTo, addSpace, applyChanges, applyChanges, getBreakBefore, getChangedKnuthElements, getContext, getCurrentArea, getWordChars, hyphenate, setChildContext, setCurrentArea, setLMiter
-
Methods inherited from class org.apache.fop.layoutmgr.AbstractLayoutManager
addChildLM, addChildLMs, addId, checkEndOfLayout, createChildLMs, createNextChildLMs, getBaselineOffset, getChildLM, getChildLMs, getCurrentPage, getCurrentPV, getParent, getParentArea, getPSLM, handlingFloat, hasLineAreaDescendant, hasNextChildLM, isFinished, isFirst, isLast, newNoLineAreaDescendantException, notifyEndOfLayout, notifyPos, possiblyRegisterMarkersForTables, preserveChildrenAtEndOfLayout, recreateChildrenLMs, registerMarkers, reset, 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
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.fop.layoutmgr.LayoutManager
addChildLM, addChildLMs, createNextChildLMs, getBaselineOffset, getChildLMs, getContentAreaBPD, getContentAreaIPD, getFObj, getGeneratesBlockArea, getGeneratesLineArea, getGeneratesReferenceArea, getNextKnuthElements, getParent, getParentArea, getPSLM, hasLineAreaDescendant, isFinished, isRestartable, notifyPos, reset, setFinished, setParent
-
Methods inherited from interface org.apache.fop.datatypes.PercentBaseContext
getBaseLength
-
-
-
-
Field Detail
-
log
private static org.apache.commons.logging.Log log
logging instance
-
inlineProps
private CommonMarginInline inlineProps
-
borderProps
private CommonBorderPaddingBackground borderProps
-
areaCreated
private boolean areaCreated
-
lastChildLM
private LayoutManager lastChildLM
-
font
private Font font
-
alignmentAdjust
protected Length alignmentAdjust
The alignment adjust property
-
alignmentBaseline
protected int alignmentBaseline
The alignment baseline property
-
baselineShift
protected Length baselineShift
The baseline shift property
-
dominantBaseline
protected int dominantBaseline
The dominant baseline property
-
lineHeight
protected SpaceProperty lineHeight
The line height property
-
alignmentContext
private AlignmentContext alignmentContext
The keep-together property
-
-
Constructor Detail
-
InlineLayoutManager
public InlineLayoutManager(InlineLevel node)
Create an inline layout manager. This is used for fo's that create areas that contain inline areas.- Parameters:
node
- the formatting object that creates the area
-
-
Method Detail
-
initialize
public void initialize()
initialize the layout manager. Allows each layout manager to calculate often used values.- Specified by:
initialize
in interfaceLayoutManager
- Overrides:
initialize
in classAbstractLayoutManager
-
getExtraIPD
protected MinOptMax getExtraIPD(boolean isNotFirst, boolean isNotLast)
Returns the extra IPD needed for any leading or trailing fences for the current area.- Overrides:
getExtraIPD
in classInlineStackingLayoutManager
- Parameters:
isNotFirst
- true if not the first area for this layout managerisNotLast
- true if not the last area for this layout manager- Returns:
- the extra IPD as a MinOptMax spec
-
hasLeadingFence
protected boolean hasLeadingFence(boolean isNotFirst)
Indication if the current area has a leading fence.- Overrides:
hasLeadingFence
in classInlineStackingLayoutManager
- Parameters:
isNotFirst
- true if not the first area for this layout manager- Returns:
- the leading fence flag
-
hasTrailingFence
protected boolean hasTrailingFence(boolean isNotLast)
Indication if the current area has a trailing fence.- Overrides:
hasTrailingFence
in classInlineStackingLayoutManager
- Parameters:
isNotLast
- true if not the last area for this layout manager- Returns:
- the trailing fence flag
-
getSpaceStart
protected SpaceProperty getSpaceStart()
Get the space at the start of the inline area.- Overrides:
getSpaceStart
in classInlineStackingLayoutManager
- Returns:
- the space property describing the space
-
getSpaceEnd
protected SpaceProperty getSpaceEnd()
Get the space at the end of the inline area.- Overrides:
getSpaceEnd
in classInlineStackingLayoutManager
- Returns:
- the space property describing the space
-
createArea
protected InlineArea createArea(boolean isInline)
Create and initialize anInlineArea
- Parameters:
isInline
- true if the parent is an inline- Returns:
- the area
-
createInlineParent
protected InlineParent createInlineParent()
Creates the inline area that will contain the areas returned by the children of this layout manager.- Returns:
- a new inline area
-
setTraits
protected void setTraits(boolean isNotFirst, boolean isNotLast)
Trait setter to be overridden by subclasses.- Overrides:
setTraits
in classInlineStackingLayoutManager
- Parameters:
isNotFirst
- true if this is not the first child area addedisNotLast
- true if this is not the last child area added
-
mustKeepTogether
public boolean mustKeepTogether()
- Returns:
- true if this element must be kept together
-
mustKeepTogether
private boolean mustKeepTogether(LayoutManager lm)
-
getNextKnuthElements
public java.util.List getNextKnuthElements(LayoutContext context, int alignment)
Get a sequence of KnuthElements representing the content of the node assigned to the LM.- Specified by:
getNextKnuthElements
in interfaceLayoutManager
- Overrides:
getNextKnuthElements
in classAbstractLayoutManager
- Parameters:
context
- the LayoutContext used to store layout informationalignment
- the desired text alignment- Returns:
- the list of KnuthElements
-
addAreas
public void addAreas(PositionIterator parentIter, LayoutContext context)
Generate and add areas to parent area. Set size of each area. This should only create and return one inline area for any inline parent area.- Specified by:
addAreas
in interfaceLayoutManager
- Overrides:
addAreas
in classAbstractLayoutManager
- Parameters:
parentIter
- Iterator over Position information returned by this LayoutManager.context
- layout context.
-
addChildArea
public void addChildArea(Area childArea)
Add a child area to the current area. If this causes the maximum dimension of the current area to be exceeded, the parent LM is called to add it.- Specified by:
addChildArea
in interfaceLayoutManager
- Overrides:
addChildArea
in classAbstractLayoutManager
- Parameters:
childArea
- the child area to be added
-
getChangedKnuthElements
public java.util.List getChangedKnuthElements(java.util.List oldList, int alignment, int depth)
Get a sequence of KnuthElements representing the content of the node assigned to the LM, after changes have been applied- Specified by:
getChangedKnuthElements
in interfaceInlineLevelLayoutManager
- Overrides:
getChangedKnuthElements
in classInlineStackingLayoutManager
- Parameters:
oldList
- the elements to replacealignment
- the desired text alignmentdepth
- the depth at which the Positions for this LM in oldList are found- Returns:
- the updated list of KnuthElements
-
addKnuthElementsForBorderPaddingStart
protected void addKnuthElementsForBorderPaddingStart(java.util.List returnList)
Creates Knuth elements for start border padding and adds them to the return list.- Parameters:
returnList
- return list to add the additional elements to
-
addKnuthElementsForBorderPaddingEnd
protected void addKnuthElementsForBorderPaddingEnd(java.util.List returnList)
Creates Knuth elements for end border padding and adds them to the return list.- Parameters:
returnList
- return list to add the additional elements to
-
-