Class LayoutInfiniteLoopResolver

java.lang.Object
com.itextpdf.layout.utils.LayoutInfiniteLoopResolver

public class LayoutInfiniteLoopResolver extends Object
This resolver is used during the layout process to prevent infinite loops.
  • Constructor Details

    • LayoutInfiniteLoopResolver

      public LayoutInfiniteLoopResolver()
      Creates default instance of LayoutInfiniteLoopResolver. Limit in this case is set to 333_333 pages.
    • LayoutInfiniteLoopResolver

      public LayoutInfiniteLoopResolver (int maxPagesCountForSingleElement)
      Creates LayoutInfiniteLoopResolver instance.

      This resolver is used during the layout process to prevent infinite loops. In particular, it limits the amount of times same element will be split across multiple pages. If the limit is exceeded, exception is thrown. It is guaranteed, that this limit will not be exceeded, unless the document contains at least the same amount of pages, as specified in the limit.

      Parameters:
      maxPagesCountForSingleElement - property which defines, how many times single element can be split across multiple pages
  • Method Details

    • getMaxPagesCountForSingleElement

      public int getMaxPagesCountForSingleElement()
      Gets maximum pages count per element.

      This property defines, how many times single element can be split across multiple pages. It is used to detect potential infinite loops during the layout process.

      Returns:
      maximum pages count per element