Top Description Constructors Methods
com.openhtmltopdf.layout

public Class BoxCollector

extends Object
Class Inheritance
Imports
java.awt.Rectangle, .Shape, java.util.List, com.openhtmltopdf.css.style.CssContext, com.openhtmltopdf.newtable.TableBox, com.openhtmltopdf.render.BlockBox, .Box, .InlineLayoutBox, .LineBox, .RenderingContext

A class to collect boxes which intersect a given clip region. If available, aggregate bounds information will be used. Block and inline content are added to separate lists as they are painted in separate render phases. This class flattens the nested structure of boxes in a depth first fashion. Range lists are created for overflow:hidden boxes to specify the first block where a clip comes into affect and the end block where the clip is undone. For example, if a hidden box is first in a layer and contains 10 child boxes the range list will contain an entry for 0, 11, specifying the start and end of the clip.

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public void
collect(CssContext c, Shape clip, Layer layer, List<Box> blockContent, List<Box> inlineContent, BoxRangeLists rangeLists)

public void
collect(CssContext c, Shape clip, Layer layer, Box container, List<Box> blockContent, List<Box> inlineContent, BoxRangeLists rangeLists)

private void
collectInlineLayer(CssContext c, Shape clip, Layer layer, List<Box> blockContent, List<Box> inlineContent, BoxRangeLists rangeLists)

private boolean
public boolean
intersectsAny(CssContext c, Shape clip, Box master)

private boolean
intersectsAny(CssContext c, Shape clip, Box master, Box container)

private void
saveRangeData(CssContext c, Box container, List<Box> blockContent, List<Box> inlineContent, BoxRangeLists rangeLists, boolean isBlock, int blockStart, int inlineStart, int blockRangeStart, int inlineRangeStart)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Constructor Detail

BoxCollectorback to summary
public BoxCollector()

Method Detail

collectback to summary
public void collect(CssContext c, Shape clip, Layer layer, List<Box> blockContent, List<Box> inlineContent, BoxRangeLists rangeLists)
collectback to summary
public void collect(CssContext c, Shape clip, Layer layer, Box container, List<Box> blockContent, List<Box> inlineContent, BoxRangeLists rangeLists)
collectInlineLayerback to summary
private void collectInlineLayer(CssContext c, Shape clip, Layer layer, List<Box> blockContent, List<Box> inlineContent, BoxRangeLists rangeLists)
intersectsAggregateBoundsback to summary
private boolean intersectsAggregateBounds(Shape clip, Box box)
intersectsAnyback to summary
public boolean intersectsAny(CssContext c, Shape clip, Box master)
intersectsAnyback to summary
private boolean intersectsAny(CssContext c, Shape clip, Box master, Box container)
saveRangeDataback to summary
private void saveRangeData(CssContext c, Box container, List<Box> blockContent, List<Box> inlineContent, BoxRangeLists rangeLists, boolean isBlock, int blockStart, int inlineStart, int blockRangeStart, int inlineRangeStart)