# Package org.apache.fop.layoutmgr

FOP's layout engine.

See: Description

- Interface Summary
  Interface | Description
  --- | ---
  BlockLevelEventProducer | Event producer interface for block-level layout managers.
  BlockLevelLayoutManager | The interface for LayoutManagers which generate block areas
  BreakOpportunity | Defines methods to evaluate break opportunities at a particular location in the tree of layout managers.
  ConditionalElementListener | This interface is used to notify layout managers about the situation around spaces, borders and padding just before the addArea() method is called when a part is being painted.
  ElementListObserver.Observer | Implement this interface to receive notifications on element lists.
  LayoutManager | The interface for all LayoutManagers.
  LayoutManagerMaker | The interface for all LayoutManager makers
  TopLevelLayoutManager | This interface is implemented by top-level layout managers such as the ones for fo:page-sequence and fox:external-document.

- Class Summary
  Class | Description
  --- | ---
  AbstractBaseLayoutManager | The base class for nearly all LayoutManagers.
  AbstractBreaker | Abstract base class for breakers (page breakers, static region handlers etc.).
  AbstractBreaker.BlockSequence | Helper class, extending the functionality of the basic `BlockKnuthSequence`.
  AbstractBreaker.FloatPosition |
  AbstractBreaker.PageBreakPosition | A page break position.
  AbstractLayoutManager | The base class for most LayoutManagers.
  AbstractPageSequenceLayoutManager | Abstract base class for a page sequence layout manager.
  Adjustment |
  AreaAdditionUtil | Utility class which provides common code for the addAreas stage.
  BalancingColumnBreakingAlgorithm | This is a the breaking algorithm that is responsible for balancing columns in multi-column layout.
  BlockContainerLayoutManager | LayoutManager for a block-container FO.
  BlockKnuthSequence | Represents a list of block level Knuth elements.
  BlockLayoutManager | LayoutManager for a block FO.
  BlockLevelEventProducer.Provider | Provider class for the event producer.
  BlockStackingLayoutManager | Base LayoutManager class for all areas which stack their child areas in the block-progression direction, such as Flow, Block, ListBlock.
  BlockStackingLayoutManager.MappingPosition | A mapping position.
  BorderElement | This represents an unresolved border element.
  BorderOrPaddingElement | This class represents an unresolved border or padding element.
  BreakElement | This class represents an unresolved break possibility.
  BreakingAlgorithm | The set of nodes is sorted into lines indexed into activeLines.
  BreakOpportunityHelper | Helper implementations of the `BreakOpportunity` methods.
  ElementListObserver | This class is used to observe Knuth element lists generated within the layout managers.
  ElementListUtils | Utilities for Knuth element lists.
  ExternalDocumentLayoutManager | LayoutManager for an external-document extension element.
  FloatContentLayoutManager |
  FlowLayoutManager | LayoutManager for an fo:flow object.
  FootenoteUtil |
  FootnoteBodyLayoutManager | Layout manager for footnote bodies.
  InlineKnuthSequence<T extends ListElement> | Represents a list of inline Knuth elements.
  Keep | Object representing a keep constraint, corresponding to the XSL-FO keep properties.
  KnuthBlockBox | Knuth box used to represent a line in block-progression-dimension (i.e.
  KnuthBox | An instance of this class represents an unbreakable piece of content with fixed width: for example an image, a syllable (but only if letter spacing is constant), ...
  KnuthElement | This is the super class for KnuthBox, KnuthGlue and KnuthPenalty.
  KnuthGlue | An instance of this class represents a piece of content with adjustable width: for example a space between words of justified text.
  KnuthPenalty | An instance of this class represents information about a feasible breaking point; it does not represent any piece of content.
  KnuthPossPosIter | A dedicated `PositionIterator` that is backed by an iterator over a list of `KnuthElement`s.
  KnuthSequence<T extends ListElement> | Represents a list of `Knuth elements`.
  LayoutContext | This class is used to pass information to the getNextKnuthElements() method.
  LayoutException.LayoutExceptionFactory | Exception factory for `LayoutException`.
  LayoutManagerMapping | The default LayoutManager maker class
  LayoutManagerMapping.BasicLinkLayoutManagerMaker | a layout manager maker
  LayoutManagerMapping.BidiOverrideLayoutManagerMaker | a layout manager maker
  LayoutManagerMapping.BlockContainerLayoutManagerMaker | a layout manager maker
  LayoutManagerMapping.BlockLayoutManagerMaker | a layout manager maker
  LayoutManagerMapping.CharacterLayoutManagerMaker | a layout manager maker
  LayoutManagerMapping.ExternalGraphicLayoutManagerMaker | a layout manager maker
  LayoutManagerMapping.FloatLayoutManagerMaker |
  LayoutManagerMapping.FootnoteLayoutManagerMaker | a layout manager maker
  LayoutManagerMapping.FOTextLayoutManagerMaker | a layout manager maker
  LayoutManagerMapping.InlineContainerLayoutManagerMaker | a layout manager maker
  LayoutManagerMapping.InlineLayoutManagerMaker | a layout manager maker
  LayoutManagerMapping.InstreamForeignObjectLayoutManagerMaker | a layout manager maker
  LayoutManagerMapping.LeaderLayoutManagerMaker | a layout manager maker
  LayoutManagerMapping.ListBlockLayoutManagerMaker | a layout manager maker
  LayoutManagerMapping.ListItemLayoutManagerMaker | a layout manager maker
  LayoutManagerMapping.Maker | a layout manager maker base class
  LayoutManagerMapping.PageNumberCitationLastLayoutManagerMaker | a layout manager maker
  LayoutManagerMapping.PageNumberCitationLayoutManagerMaker | a layout manager maker
  LayoutManagerMapping.PageNumberLayoutManagerMaker | a layout manager maker
  LayoutManagerMapping.TableLayoutManagerMaker | a layout manager maker
  LeafPosition | A leaf position.
  ListElement | This class is the base class for all kinds of elements that are added to element lists.
  LMiter | An iterator for layout managers.
  LocalBreaker |
  MultiCaseLayoutManager |
  MultiSwitchLayoutManager |
  NonLeafPosition | A non-leaf position.
  PaddingElement | This represents an unresolved padding element.
  Page | This object is used by the layout engine to represent a page.
  PageBreaker | Handles the breaking of pages in an fo:flow
  PageProvider | This class delivers Page instances.
  PageSequenceLayoutManager | LayoutManager for a PageSequence.
  Position | A position.
  PositionIterator | An iterator over `Position` instances, that is wrapped around another 'parent' `Iterator`.
  RelSide | Enum class for relative sides.
  RetrieveTableMarkerLayoutManager |
  SpacedBorderedPaddedBlockLayoutManager | A block-stacking layout manager for an FO that supports spaces, border and padding.
  SpaceElement | This class represents an unresolved space element.
  SpaceResolver | This class resolves spaces and conditional borders and paddings by replacing the UnresolvedListElements descendants by the right combination of KnuthElements on an element list.
  SpaceResolver.SpaceHandlingBreakPosition | Position class for break possibilities.
  SpaceResolver.SpaceHandlingPosition | Position class for no-break situations.
  SpaceSpecifier | Accumulate a sequence of space-specifiers (XSL space type) on areas with a stacking constraint.
  StaticContentLayoutManager | LayoutManager for an fo:flow object.
  TraitSetter | This is a helper class used for setting common traits on areas.
  UnresolvedListElement | This class represents an unresolved list element.
  UnresolvedListElementWithLength | This class represents an unresolved list element element with a (conditional) length.
  WhitespaceManagementPenalty | A special penalty used to specify content having multiple variants.

- Exception Summary
  Exception | Description
  --- | ---
  LayoutException | Exception thrown by FOP if an unrecoverable layout error occurs.

## Package org.apache.fop.layoutmgr Description

FOP's layout engine. Layout managers and supporting classes.

Copyright © 2025 Apache Software Foundation. All rights reserved.