Package org.xhtmlrenderer.layout
Class BlockBoxing
java.lang.Object
org.xhtmlrenderer.layout.BlockBoxing
Utility class for laying block content. It is called when a block box
contains block level content.
BoxBuilder
will have made sure that
the block we're working on will either contain only inline or block content.
If we're in a paged media environment, the various page break related
properties are also handled here. If a rule is violated, the affected run
of boxes will be laid out again. If the rule still cannot be satisfied,
the rule will be dropped.-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static class
private static class
private static class
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate static LineBox
getFirstLine
(Box box) private static boolean
isPageBreakBetweenChildBoxes
(int runStart, int runEnd, LayoutContext c, BlockBox block) private static void
layoutBlockChild
(LayoutContext c, BlockBox parent, BlockBox child, boolean needPageClear, int childOffset, int trimmedPageCount, LayoutState layoutState) private static void
layoutBlockChild0
(LayoutContext c, BlockBox parent, BlockBox child, boolean needPageClear, int childOffset, int trimmedPageCount) static void
layoutContent
(LayoutContext c, BlockBox block, int contentStart) private static BlockBoxing.RelayoutRunResult
processPageBreakAvoidRun
(LayoutContext c, BlockBox block, List<Box> localChildren, int offset, BlockBoxing.RelayoutDataList relayoutDataList, BlockBoxing.RelayoutData relayoutData) private static int
relayoutRun
(LayoutContext c, List<Box> localChildren, BlockBox block, BlockBoxing.RelayoutDataList relayoutDataList, int start, int end, boolean onNewPage) private static void
repositionBox
(LayoutContext c, BlockBox child, int trimmedPageCount)
-
Field Details
-
NO_PAGE_TRIM
private static final int NO_PAGE_TRIM- See Also:
-
-
Constructor Details
-
BlockBoxing
private BlockBoxing()
-
-
Method Details
-
layoutContent
-
processPageBreakAvoidRun
private static BlockBoxing.RelayoutRunResult processPageBreakAvoidRun(LayoutContext c, BlockBox block, List<Box> localChildren, int offset, BlockBoxing.RelayoutDataList relayoutDataList, BlockBoxing.RelayoutData relayoutData) -
isPageBreakBetweenChildBoxes
private static boolean isPageBreakBetweenChildBoxes(int runStart, int runEnd, LayoutContext c, BlockBox block) -
getFirstLine
-
relayoutRun
private static int relayoutRun(LayoutContext c, List<Box> localChildren, BlockBox block, BlockBoxing.RelayoutDataList relayoutDataList, int start, int end, boolean onNewPage) -
layoutBlockChild
private static void layoutBlockChild(LayoutContext c, BlockBox parent, BlockBox child, boolean needPageClear, int childOffset, int trimmedPageCount, LayoutState layoutState) -
layoutBlockChild0
private static void layoutBlockChild0(LayoutContext c, BlockBox parent, BlockBox child, boolean needPageClear, int childOffset, int trimmedPageCount) -
repositionBox
-