if (elements != null && elements.size() > 0)
{
Shape clipArea = grx.getClip();
for(Iterator it = elements.iterator(); it.hasNext();)
{
JRPrintElement element = (JRPrintElement)it.next();
if (
(filter != null && !filter.isToExport(element))
|| !clipArea.intersects(
element.getX() + elementOffset.getX() - ELEMENT_RECTANGLE_PADDING,
element.getY() + elementOffset.getY() - ELEMENT_RECTANGLE_PADDING,
element.getWidth() + 2 * ELEMENT_RECTANGLE_PADDING,
element.getHeight() + 2 * ELEMENT_RECTANGLE_PADDING)
)
{
continue;
}
element.accept(drawVisitor, elementOffset);
}
}
}