)
{
/*
NOTE: 'QuadPoints' entry MUST be present.
*/
PdfArray quadPointsObject = (PdfArray)getBaseDataObject().get(PdfName.QuadPoints);
List<Rectangle2D> boxes = new ArrayList<Rectangle2D>();
double pageHeight = getPage().getBox().getHeight();
for(
int index = 0,
length = quadPointsObject.size();
index < length;
index += 8
)
{
double x = ((PdfNumber<?>)quadPointsObject.get(index+6)).getNumberValue();
double y = pageHeight - ((PdfNumber<?>)quadPointsObject.get(index+7)).getNumberValue();
double width = ((PdfNumber<?>)quadPointsObject.get(index+2)).getNumberValue() - ((PdfNumber<?>)quadPointsObject.get(index)).getNumberValue();
double height = ((PdfNumber<?>)quadPointsObject.get(index+3)).getNumberValue() - ((PdfNumber<?>)quadPointsObject.get(index+1)).getNumberValue();
boxes.add(
new Rectangle2D.Double(x,y,width,height)
);
}