## Uses of Interface
org.apache.fop.datatypes.PercentBaseContext

Packages that use PercentBaseContext
org.apache.fop.datatypes: XSL Datatypes.
org.apache.fop.fo.expr: Classes for XSL expressions and functions.
org.apache.fop.fo.pagination: All the pagination and declaration formatting objects.
org.apache.fop.fo.properties: Classes representing the various property types as well as supporting data structures for the FO tree.
org.apache.fop.fonts: Classes for font handling.
org.apache.fop.layoutmgr: FOP's layout engine.
org.apache.fop.layoutmgr.inline: Layout managers for inline formatting objects and line building.
org.apache.fop.layoutmgr.list: Layout managers for lists.
org.apache.fop.layoutmgr.table: Layout managers for tables.
org.apache.fop.render: Generic renderer interface.
org.apache.fop.render.rtf.rtflib.tools: Utility classes used in RTF file generation.
org.apache.fop.traits: Trait classes and other supporting data structures.

### Uses of PercentBaseContext in org.apache.fop.datatypes

Classes in org.apache.fop.datatypes that implement PercentBaseContext
`class` `SimplePercentBaseContext` Class to implement a simple lookup context for a single percent base value.
`class` `ValidationPercentBaseContext` This base context is used during validation when the actual base values are still unknown but should still already be checked.

Methods in org.apache.fop.datatypes that return PercentBaseContext
`static PercentBaseContext` ValidationPercentBaseContext.`getPseudoContext()`

Methods in org.apache.fop.datatypes with parameters of type PercentBaseContext
`int` PercentBase.`getBaseLength(PercentBaseContext context)`
`int` LengthBase.`getBaseLength(PercentBaseContext context)`
`double` Numeric.`getNumericValue(PercentBaseContext context)` Return the value of this Numeric
`int` Numeric.`getValue(PercentBaseContext context)` Returns the value of this numeric as an int.
`int` Length.`getValue(PercentBaseContext context)` Returns the length in 1/1000ths of a point (millipoints)

Constructors in org.apache.fop.datatypes with parameters of type PercentBaseContext
Constructor and Description
`SimplePercentBaseContext(PercentBaseContext parentContext, int lengthBase, int lengthBaseValue)`

### Uses of PercentBaseContext in org.apache.fop.fo.expr

Methods in org.apache.fop.fo.expr with parameters of type PercentBaseContext
`static Numeric` NumericOp.`abs2(Numeric op, PercentBaseContext context)` Return the absolute value of a Numeric.
`static Numeric` NumericOp.`addition2(Numeric op1, Numeric op2, PercentBaseContext context)` Add the two operands with a percentage context and return a new Numeric representing the result.
`static Numeric` NumericOp.`divide2(Numeric op1, Numeric op2, PercentBaseContext context)` Divide the two operands with a percentage context and return a new Numeric representing the result.
`double` NumericProperty.`getNumericValue(PercentBaseContext context)` Return the value of this Numeric
`double` RelativeNumericProperty.`getNumericValue(PercentBaseContext context)` Return the value of this Numeric
`int` NumericProperty.`getValue(PercentBaseContext context)` Returns the value of this numeric as an int.
`int` RelativeNumericProperty.`getValue(PercentBaseContext context)` Returns the length in 1/1000ths of a point (millipoints)
`static Numeric` NumericOp.`max2(Numeric op1, Numeric op2, PercentBaseContext context)` Return the larger of the two Numerics.
`static Numeric` NumericOp.`min2(Numeric op1, Numeric op2, PercentBaseContext context)` Return the smaller of the two Numerics.
`static Numeric` NumericOp.`modulo2(Numeric op1, Numeric op2, PercentBaseContext context)` Return the remainder of a division of the two operand Numeric.
`static Numeric` NumericOp.`multiply2(Numeric op1, Numeric op2, PercentBaseContext context)` Multiply the two operands with a percentage context and return a new Numeric representing the result.
`static Numeric` NumericOp.`negate2(Numeric op, PercentBaseContext context)` Return the negation of a Numeric.
`static Numeric` NumericOp.`subtraction2(Numeric op1, Numeric op2, PercentBaseContext context)` Subtract the two operands with a percentage context and return a new Numeric representing the result.

### Uses of PercentBaseContext in org.apache.fop.fo.pagination

Methods in org.apache.fop.fo.pagination that return PercentBaseContext
`protected PercentBaseContext` SimplePageMaster.`getPageHeightContext(int lengthBase)` Gets the context for the height of the page-reference-area, taking into account the reference-orientation.
`protected PercentBaseContext` Region.`getPageHeightContext(int lengthBase)` Get the page-width context
`protected PercentBaseContext` SimplePageMaster.`getPageWidthContext(int lengthBase)` Gets the context for the width of the page-reference-area, taking into account the reference-orientation.
`protected PercentBaseContext` Region.`getPageWidthContext(int lengthBase)` Get the page-width context

Methods in org.apache.fop.fo.pagination with parameters of type PercentBaseContext
`protected void` RegionBA.`adjustIPD(Rectangle vpRefRect, WritingMode wm, PercentBaseContext siblingContext)` Adjust the viewport reference rectangle for a region as a function of precedence.
`protected void` RegionSE.`adjustIPD(Rectangle vpRefRect, WritingMode wm, PercentBaseContext siblingContext)` Adjust the viewport reference rectangle for a region as a function of precedence.

### Uses of PercentBaseContext in org.apache.fop.fo.properties

Methods in org.apache.fop.fo.properties with parameters of type PercentBaseContext
`int` CommonBorderPaddingBackground.`getBorderRadiusEnd(int side, boolean discard, PercentBaseContext context)` Returns the border corner radius of the ending edge i.e.
`int` CommonBorderPaddingBackground.`getBorderRadiusStart(int side, boolean discard, PercentBaseContext context)` Returns the border corner radius of the starting edge i.e.
`int` CommonBorderPaddingBackground.`getBPPaddingAndBorder(boolean discard, PercentBaseContext context)` Return all the border and padding height in the block progression dimension.
`int` CommonBorderPaddingBackground.`getIPPaddingAndBorder(boolean discard, PercentBaseContext context)` Return all the border and padding width in the inline progression dimension.
`int` CondLengthProperty.`getLengthValue(PercentBaseContext context)` Returns the computed length value.
`Property` LengthRangeProperty.`getMaximum(PercentBaseContext context)`
`Property` LengthRangeProperty.`getMinimum(PercentBaseContext context)`
`double` EnumNumber.`getNumericValue(PercentBaseContext context)` Return the value of this Numeric
`double` FixedLength.`getNumericValue(PercentBaseContext context)` Return the value of this Numeric
`double` NumberProperty.`getNumericValue(PercentBaseContext context)` Return the value of this Numeric.
`double` EnumLength.`getNumericValue(PercentBaseContext context)` Return the value of this Numeric
`double` PercentLength.`getNumericValue(PercentBaseContext context)` Return the value of this Numeric
`double` TableColLength.`getNumericValue(PercentBaseContext context)` Return the value of this Numeric
`Property` LengthRangeProperty.`getOptimum(PercentBaseContext context)`
`int` CommonBorderPaddingBackground.`getPadding(int side, boolean discard, PercentBaseContext context)` Return the padding for the given side, taking into account the conditionality and evaluating any percentages in the given context.
`int` CommonBorderPaddingBackground.`getPaddingAfter(boolean discard, PercentBaseContext context)`
`int` CommonBorderPaddingBackground.`getPaddingBefore(boolean discard, PercentBaseContext context)`
`int` CommonBorderPaddingBackground.`getPaddingEnd(boolean discard, PercentBaseContext context)`
`int` CommonBorderPaddingBackground.`getPaddingStart(boolean discard, PercentBaseContext context)`
`int` EnumNumber.`getValue(PercentBaseContext context)` Returns the value of this numeric as an int.
`int` FixedLength.`getValue(PercentBaseContext context)` Returns the length in 1/1000ths of a point (millipoints)
`int` NumberProperty.`getValue(PercentBaseContext context)` Return the value
`int` EnumLength.`getValue(PercentBaseContext context)` Returns the length in 1/1000ths of a point (millipoints)
`int` PercentLength.`getValue(PercentBaseContext context)` Returns the length in 1/1000ths of a point (millipoints)
`int` TableColLength.`getValue(PercentBaseContext context)` Returns the length in 1/1000ths of a point (millipoints)
`boolean` CommonBorderPaddingBackground.`hasPadding(PercentBaseContext context)`
`MinOptMax` LengthRangeProperty.`toMinOptMax(PercentBaseContext context)` Converts this `LengthRangeProperty` to a `MinOptMax`.

### Uses of PercentBaseContext in org.apache.fop.fonts

Methods in org.apache.fop.fonts with parameters of type PercentBaseContext
`static Font` FontSelector.`selectFontForCharacter(Character fobj, PercentBaseContext context)` Selects a font which is able to display the given character.
`static Font` FontSelector.`selectFontForCharacterInText(char c, FOText text, PercentBaseContext context)` Selects a font which is able to display the given character.
`static Font` FontSelector.`selectFontForCharactersInText(CharSequence charSeq, int firstIndex, int breakIndex, FOText text, PercentBaseContext context)` Selects a font which is able to display the most of the given characters.

### Uses of PercentBaseContext in org.apache.fop.layoutmgr

Subinterfaces of PercentBaseContext in org.apache.fop.layoutmgr
`interface` `BlockLevelLayoutManager` The interface for LayoutManagers which generate block areas
`interface` `LayoutManager` The interface for all LayoutManagers.

Classes in org.apache.fop.layoutmgr that implement PercentBaseContext
`class` `AbstractBaseLayoutManager` The base class for nearly all LayoutManagers.
`class` `AbstractLayoutManager` The base class for most LayoutManagers.
`class` `AbstractPageSequenceLayoutManager` Abstract base class for a page sequence layout manager.
`class` `BlockContainerLayoutManager` LayoutManager for a block-container FO.
`class` `BlockLayoutManager` LayoutManager for a block FO.
`class` `BlockStackingLayoutManager` Base LayoutManager class for all areas which stack their child areas in the block-progression direction, such as Flow, Block, ListBlock.
`class` `ExternalDocumentLayoutManager` LayoutManager for an external-document extension element.
`class` `FloatContentLayoutManager`
`class` `FlowLayoutManager` LayoutManager for an fo:flow object.
`class` `FootnoteBodyLayoutManager` Layout manager for footnote bodies.
`class` `MultiCaseLayoutManager`
`class` `MultiSwitchLayoutManager`
`class` `PageSequenceLayoutManager` LayoutManager for a PageSequence.
`class` `RetrieveTableMarkerLayoutManager`
`class` `SpacedBorderedPaddedBlockLayoutManager` A block-stacking layout manager for an FO that supports spaces, border and padding.
`class` `StaticContentLayoutManager` LayoutManager for an fo:flow object.

Methods in org.apache.fop.layoutmgr with parameters of type PercentBaseContext
`static void` TraitSetter.`addBackground(Area area, CommonBorderPaddingBackground backProps, PercentBaseContext context)` Add background to an area.
`static void` TraitSetter.`addBackground(Area area, CommonBorderPaddingBackground backProps, PercentBaseContext context, int ipdShift, int bpdShift, int referenceIPD, int referenceBPD)` Add background to an area.
`static void` TraitSetter.`addBorders(Area area, CommonBorderPaddingBackground borderProps, boolean discardBefore, boolean discardAfter, boolean discardStart, boolean discardEnd, PercentBaseContext context)` Add borders to an area.
`static void` TraitSetter.`addBorders(Area area, CommonBorderPaddingBackground borderProps, PercentBaseContext context)` Deprecated. Call the other addBorders() method and addPadding separately.
`static void` TraitSetter.`addMargins(Area area, CommonBorderPaddingBackground bpProps, CommonMarginBlock marginProps, PercentBaseContext context)` Add space to a block area.
`static void` TraitSetter.`addMargins(Area area, CommonBorderPaddingBackground bpProps, int startIndent, int endIndent, PercentBaseContext context)` Add space to a block area.
`static void` TraitSetter.`addPadding(Area area, CommonBorderPaddingBackground bordProps, boolean discardBefore, boolean discardAfter, boolean discardStart, boolean discardEnd, PercentBaseContext context)` Add padding to an area.
`static void` TraitSetter.`setBorderPaddingTraits(Area area, CommonBorderPaddingBackground bpProps, boolean isNotFirst, boolean isNotLast, PercentBaseContext context)` Sets border and padding traits on areas.

Constructors in org.apache.fop.layoutmgr with parameters of type PercentBaseContext
Constructor and Description
`BorderElement(Position position, CondLengthProperty condLength, RelSide side, boolean isFirst, boolean isLast, PercentBaseContext context)` Main constructor
`BorderOrPaddingElement(Position position, CondLengthProperty condLength, RelSide side, boolean isFirst, boolean isLast, PercentBaseContext context)` Main constructor
`PaddingElement(Position position, CondLengthProperty condLength, RelSide side, boolean isFirst, boolean isLast, PercentBaseContext context)` Main constructor
`SpaceElement(Position position, SpaceProperty space, RelSide side, boolean isFirst, boolean isLast, PercentBaseContext context)` Main constructor

### Uses of PercentBaseContext in org.apache.fop.layoutmgr.inline

Subinterfaces of PercentBaseContext in org.apache.fop.layoutmgr.inline
`interface` `InlineLevelLayoutManager` The interface for LayoutManagers which generate inline areas

Classes in org.apache.fop.layoutmgr.inline that implement PercentBaseContext
`class` `AbstractGraphicsLayoutManager` LayoutManager handling the common tasks for the fo:instream-foreign-object and fo:external-graphics formatting objects
`class` `AbstractPageNumberCitationLayoutManager` LayoutManager for the fo:page-number-citation(-last) formatting object
`class` `BasicLinkLayoutManager` LayoutManager for the fo:basic-link formatting object
`class` `BidiLayoutManager` Layout manager for fo:bidi-override.
`class` `CharacterLayoutManager` LayoutManager for the fo:character formatting object
`class` `ContentLayoutManager` Content Layout Manager.
`class` `ExternalGraphicLayoutManager` LayoutManager for the fo:external-graphic formatting object
`class` `FloatLayoutManager`
`class` `FootnoteLayoutManager` Layout manager for fo:footnote.
`class` `InlineContainerLayoutManager` This creates a single inline container area after laying out the child block areas.
`class` `InlineLayoutManager` LayoutManager for objects which stack children in the inline direction, such as Inline or Line
`class` `InlineStackingLayoutManager` Class modelling the commonalities of layoutmanagers for objects which stack children in the inline direction, such as Inline or Line.
`class` `InstreamForeignObjectLM` LayoutManager for the fo:instream-foreign-object formatting object
`class` `LeaderLayoutManager` LayoutManager for the fo:leader formatting object
`class` `LeafNodeLayoutManager` Base LayoutManager for leaf-node FObj, ie: ones which have no children.
`class` `LineLayoutManager` LayoutManager for lines.
`class` `PageNumberCitationLastLayoutManager` LayoutManager for the fo:page-number-citation-last formatting object.
`class` `PageNumberCitationLayoutManager` LayoutManager for the fo:page-number-citation formatting object.
`class` `PageNumberLayoutManager` LayoutManager for the fo:page-number formatting object
`class` `TextLayoutManager` LayoutManager for text (a sequence of characters) which generates one or more inline areas.
`class` `WrapperLayoutManager` This is the layout manager for the fo:wrapper formatting object.

Constructors in org.apache.fop.layoutmgr.inline with parameters of type PercentBaseContext
Constructor and Description
`ImageLayout(GraphicsProperties props, PercentBaseContext percentBaseContext, Dimension intrinsicSize)` Main constructor

### Uses of PercentBaseContext in org.apache.fop.layoutmgr.list

Classes in org.apache.fop.layoutmgr.list that implement PercentBaseContext
`class` `ListBlockLayoutManager` LayoutManager for a list-block FO.
`class` `ListItemContentLayoutManager` LayoutManager for a list-item-label or list-item-body FO.
`class` `ListItemLayoutManager` LayoutManager for a list-item FO.

### Uses of PercentBaseContext in org.apache.fop.layoutmgr.table

Classes in org.apache.fop.layoutmgr.table that implement PercentBaseContext
`class` `TableAndCaptionLayoutManager` LayoutManager for a table-and-caption FO.
`class` `TableCaptionLayoutManager` LayoutManager for a table-caption FO.
`class` `TableCellLayoutManager` LayoutManager for a table-cell FO.
`class` `TableContentLayoutManager` Layout manager for table contents, particularly managing the creation of combined element lists.
`class` `TableLayoutManager` LayoutManager for a table FO.

Methods in org.apache.fop.layoutmgr.table with parameters of type PercentBaseContext
`float` ColumnSetup.`computeTableUnit(PercentBaseContext percentBaseContext, int contentAreaIPD)` Works out the base unit for resolving proportional-column-width() [p-c-w(x) = x * base_unit_ipd]
`int` ColumnSetup.`getSumOfColumnWidths(PercentBaseContext context)` Calculates the sum of all column widths.
`int` ColumnSetup.`getXOffset(int col, int nrColSpan, PercentBaseContext context)` Determine the X offset of the indicated column, where this offset denotes the left edge of the column irrespective of writing mode.

### Uses of PercentBaseContext in org.apache.fop.render

Classes in org.apache.fop.render that implement PercentBaseContext
`class` `DummyPercentBaseContext` A dummy implementation of PercentBaseContext

### Uses of PercentBaseContext in org.apache.fop.render.rtf.rtflib.tools

Classes in org.apache.fop.render.rtf.rtflib.tools that implement PercentBaseContext
`class` `PercentContext` PercentBaseContext implementation to track base widths for percentage calculations.

### Uses of PercentBaseContext in org.apache.fop.traits

Constructors in org.apache.fop.traits with parameters of type PercentBaseContext
Constructor and Description
`SpaceVal(SpaceProperty spaceprop, PercentBaseContext context)` Constructor for SpaceVal objects based on Space objects.