public class AFPPainter extends AbstractIFPainter<AFPDocumentHandler>
INSTREAM_OBJECT_URI, state| Constructor and Description |
|---|
AFPPainter(AFPDocumentHandler documentHandler)
Default constructor.
|
| Modifier and Type | Method and Description |
|---|---|
void |
clipBackground(Rectangle rect,
BorderProps bpsBefore,
BorderProps bpsAfter,
BorderProps bpsStart,
BorderProps bpsEnd)
Restricts the current clipping region to the inner border.
|
void |
clipRect(Rectangle rect)
Restricts the current clipping region with the given rectangle.
|
protected Map |
createDefaultImageProcessingHints(org.apache.xmlgraphics.image.loader.ImageSessionContext sessionContext)
Creates the default map of processing hints for the image loading framework.
|
protected RenderingContext |
createRenderingContext()
Creates a new RenderingContext instance.
|
void |
drawBorderRect(Rectangle rect,
BorderProps top,
BorderProps bottom,
BorderProps left,
BorderProps right,
Color innerBackgroundColor)
Draws a border rectangle.
|
void |
drawImage(Document doc,
Rectangle rect)
Draws an image (represented by a DOM document) inside a given rectangle.
|
protected void |
drawImage(org.apache.xmlgraphics.image.loader.Image image,
Rectangle rect,
RenderingContext context,
boolean convert,
Map additionalHints)
Draws an image using a suitable image handler.
|
void |
drawImage(String uri,
Rectangle rect)
Draws an image identified by a URI inside a given rectangle.
|
void |
drawLine(Point start,
Point end,
int width,
Color color,
RuleStyle style)
Draws a line.
|
void |
drawText(int x,
int y,
int letterSpacing,
int wordSpacing,
int[][] dp,
String text)
Draws text.
|
void |
endGroup()
Ends the current group and restores the previous coordinate system (and layer).
|
void |
endViewport()
Ends the current viewport and restores the previous coordinate system.
|
void |
fillBackground(Rectangle rect,
Paint fill,
BorderProps bpsBefore,
BorderProps bpsAfter,
BorderProps bpsStart,
BorderProps bpsEnd) |
void |
fillRect(Rectangle rect,
Paint fill)
Fills a rectangular area.
|
String |
getFontKey(FontTriplet triplet) |
boolean |
isBackgroundRequired(BorderProps bpsBefore,
BorderProps bpsAfter,
BorderProps bpsStart,
BorderProps bpsEnd)
TODO Painter-specific rounded borders logic required background drawing to be
made optional.
|
protected void |
restoreGraphicsState()
Restores the last graphics state of the rendering engine.
|
protected void |
saveGraphicsState()
Saves the graphics state of the rendering engine.
|
void |
startGroup(AffineTransform transform,
String layer)
Starts a new group of graphical elements.
|
void |
startViewport(AffineTransform transform,
Dimension size,
Rectangle clipRect)
Starts a new viewport, establishing a new coordinate system.
|
drawImage, drawImageUsingDocument, drawImageUsingImageHandler, drawImageUsingURI, drawSVGText, drawText, getContext, getDocumentHandler, getFontInfo, getImageInfo, getLineBoundingBox, getUserAgent, hasOnlySolidBorders, setFont, startGroup, startViewport, toPointspublic AFPPainter(AFPDocumentHandler documentHandler)
documentHandler - the parent document handlerpublic String getFontKey(FontTriplet triplet) throws IFException
getFontKey in class AbstractIFPainter<AFPDocumentHandler>IFExceptionpublic void startViewport(AffineTransform transform, Dimension size, Rectangle clipRect) throws IFException
transform - the transformation matrix establishing the new coordinate systemsize - the size of the viewportclipRect - the clipping rectangle (may be null)IFException - if an error occurs while handling this elementpublic void endViewport()
throws IFException
IFException - if an error occurs while handling this elementpublic void startGroup(AffineTransform transform, String layer) throws IFException
transform - the transformation matrix establishing the new coordinate systemlayer - an optional layer label (or null if none)IFException - if an error occurs while handling this elementpublic void endGroup()
throws IFException
IFException - if an error occurs while handling this elementprotected Map createDefaultImageProcessingHints(org.apache.xmlgraphics.image.loader.ImageSessionContext sessionContext)
createDefaultImageProcessingHints in class AbstractIFPainter<AFPDocumentHandler>sessionContext - the session context for access to resolution informationprotected RenderingContext createRenderingContext()
createRenderingContext in class AbstractIFPainter<AFPDocumentHandler>public void drawImage(String uri, Rectangle rect) throws IFException
uri - the image's URIrect - the rectangle in which the image shall be paintedIFException - if an error occurs while handling this eventprotected void drawImage(org.apache.xmlgraphics.image.loader.Image image,
Rectangle rect,
RenderingContext context,
boolean convert,
Map additionalHints)
throws IOException,
org.apache.xmlgraphics.image.loader.ImageException
drawImage in class AbstractIFPainter<AFPDocumentHandler>image - the image to be painted (it needs to of a supported image flavor)rect - the rectangle in which to paint the imagecontext - a suitable rendering contextconvert - true to run the image through image conversion if that is necessaryadditionalHints - additional image processing hintsIOException - in case of an I/O error while handling/writing the imageorg.apache.xmlgraphics.image.loader.ImageException - if an error occurs while converting the image to a suitable formatpublic void drawImage(Document doc, Rectangle rect) throws IFException
doc - the DOM document containing the foreign objectrect - the rectangle in which the image shall be paintedIFException - if an error occurs while handling this eventpublic void clipRect(Rectangle rect) throws IFException
rect - the rectangle's coordinates and extentIFException - if an error occurs while handling this eventpublic void fillRect(Rectangle rect, Paint fill) throws IFException
rect - the rectangle's coordinates and extentfill - the fill paintIFException - if an error occurs while handling this eventpublic void drawBorderRect(Rectangle rect, BorderProps top, BorderProps bottom, BorderProps left, BorderProps right, Color innerBackgroundColor) throws IFException
AbstractIFPainterBorderProps
instances.drawBorderRect in interface IFPainterdrawBorderRect in class AbstractIFPainter<AFPDocumentHandler>rect - the rectangle's coordinates and extenttop - the border segment on the top edgebottom - the border segment on the bottom edgeleft - the border segment on the left edgeright - the border segment on the right edgeinnerBackgroundColor - the color of the inner backgroundIFException - if an error occurs while handling this eventpublic void drawLine(Point start, Point end, int width, Color color, RuleStyle style) throws IFException
drawLine in interface IFPainterdrawLine in class AbstractIFPainter<AFPDocumentHandler>start - the start point of the lineend - the end point of the linewidth - the line widthcolor - the line colorstyle - the line style (using the Constants.EN_* constants for the rule-style property)IFException - if an error occurs while handling this eventpublic void drawText(int x,
int y,
int letterSpacing,
int wordSpacing,
int[][] dp,
String text)
throws IFException
x - X-coordinate of the starting point of the texty - Y-coordinate of the starting point of the textletterSpacing - additional spacing between characters (may be 0)wordSpacing - additional spacing between words (may be 0)dp - an array of 4-tuples, expressing [X,Y] placment
adjustments and [X,Y] advancement adjustments, in that order (may be null); if
not null, then adjustments.length must be the same as text.length()text - the textIFException - if an error occurs while handling this eventprotected void saveGraphicsState()
throws IOException
IOException - if an I/O error occursprotected void restoreGraphicsState()
throws IOException
IOException - if an I/O error occurspublic void clipBackground(Rectangle rect, BorderProps bpsBefore, BorderProps bpsAfter, BorderProps bpsStart, BorderProps bpsEnd) throws IFException
rect - the rectangle's coordinates and extentbpsBefore - the border segment on the before-side (top)bpsAfter - the border segment on the after-side (bottom)bpsStart - the border segment on the start-side (left)bpsEnd - the border segment on the end-side (right)IFException - if an error occurs while handling this eventpublic boolean isBackgroundRequired(BorderProps bpsBefore, BorderProps bpsAfter, BorderProps bpsStart, BorderProps bpsEnd)
isBackgroundRequired in interface IFPainterisBackgroundRequired in class AbstractIFPainter<AFPDocumentHandler>bpsBefore - the before borderbpsAfter - the after borderbpsStart - the start borderbpsEnd - the end borderpublic void fillBackground(Rectangle rect, Paint fill, BorderProps bpsBefore, BorderProps bpsAfter, BorderProps bpsStart, BorderProps bpsEnd) throws IFException
IFExceptionCopyright © 2023 Apache Software Foundation. All rights reserved.