Uses of Interface org.apache.fop.datatypes.PercentBaseContext (Apache FOP Core 2.11 API)
Date: 2025-04-24

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

- Packages that use PercentBaseContext
  Package | Description
  --- | ---
  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
    Modifier and Type | Class and Description
    --- | ---
    `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
    Modifier and Type | Method and Description
    --- | ---
    `static PercentBaseContext` | ValidationPercentBaseContext.`getPseudoContext()`

    Methods in org.apache.fop.datatypes with parameters of type PercentBaseContext
    Modifier and Type | Method and Description
    --- | ---
    `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
    Modifier and Type | Method and Description
    --- | ---
    `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
    Modifier and Type | Method and Description
    --- | ---
    `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
    Modifier and Type | Method and Description
    --- | ---
    `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
    Modifier and Type | Method and Description
    --- | ---
    `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
    Modifier and Type | Method and Description
    --- | ---
    `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
    Modifier and Type | Interface and Description
    --- | ---
    `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
    Modifier and Type | Class and Description
    --- | ---
    `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
    Modifier and Type | Method and Description
    --- | ---
    `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
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `InlineLevelLayoutManager` The interface for LayoutManagers which generate inline areas

    Classes in org.apache.fop.layoutmgr.inline that implement PercentBaseContext
    Modifier and Type | Class and Description
    --- | ---
    `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
    Modifier and Type | Class and Description
    --- | ---
    `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
    Modifier and Type | Class and Description
    --- | ---
    `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
    Modifier and Type | Method and Description
    --- | ---
    `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
    Modifier and Type | Class and Description
    --- | ---
    `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
    Modifier and Type | Class and Description
    --- | ---
    `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.

Copyright © 2025 Apache Software Foundation. All rights reserved.