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(java.awt.Rectangle rect,
BorderProps bpsBefore,
BorderProps bpsAfter,
BorderProps bpsStart,
BorderProps bpsEnd)
Restricts the current clipping region to the inner border.
|
void |
clipRect(java.awt.Rectangle rect)
Restricts the current clipping region with the given rectangle.
|
protected java.util.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(java.awt.Rectangle rect,
BorderProps top,
BorderProps bottom,
BorderProps left,
BorderProps right,
java.awt.Color innerBackgroundColor)
Draws a border rectangle.
|
void |
drawImage(org.w3c.dom.Document doc,
java.awt.Rectangle rect)
Draws an image (represented by a DOM document) inside a given rectangle.
|
protected void |
drawImage(org.apache.xmlgraphics.image.loader.Image image,
java.awt.Rectangle rect,
RenderingContext context,
boolean convert,
java.util.Map additionalHints)
Draws an image using a suitable image handler.
|
void |
drawImage(java.lang.String uri,
java.awt.Rectangle rect)
Draws an image identified by a URI inside a given rectangle.
|
void |
drawLine(java.awt.Point start,
java.awt.Point end,
int width,
java.awt.Color color,
RuleStyle style)
Draws a line.
|
void |
drawText(int x,
int y,
int letterSpacing,
int wordSpacing,
int[][] dp,
java.lang.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(java.awt.Rectangle rect,
java.awt.Paint fill,
BorderProps bpsBefore,
BorderProps bpsAfter,
BorderProps bpsStart,
BorderProps bpsEnd) |
void |
fillRect(java.awt.Rectangle rect,
java.awt.Paint fill)
Fills a rectangular area.
|
java.lang.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(java.awt.geom.AffineTransform transform,
java.lang.String layer)
Starts a new group of graphical elements.
|
void |
startViewport(java.awt.geom.AffineTransform transform,
java.awt.Dimension size,
java.awt.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 java.lang.String getFontKey(FontTriplet triplet) throws IFException
getFontKey in class AbstractIFPainter<AFPDocumentHandler>IFExceptionpublic void startViewport(java.awt.geom.AffineTransform transform,
java.awt.Dimension size,
java.awt.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(java.awt.geom.AffineTransform transform,
java.lang.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 java.util.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(java.lang.String uri,
java.awt.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,
java.awt.Rectangle rect,
RenderingContext context,
boolean convert,
java.util.Map additionalHints)
throws java.io.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 hintsjava.io.IOException - 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(org.w3c.dom.Document doc,
java.awt.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(java.awt.Rectangle rect)
throws IFException
rect - the rectangle's coordinates and extentIFException - if an error occurs while handling this eventpublic void fillRect(java.awt.Rectangle rect,
java.awt.Paint fill)
throws IFException
rect - the rectangle's coordinates and extentfill - the fill paintIFException - if an error occurs while handling this eventpublic void drawBorderRect(java.awt.Rectangle rect,
BorderProps top,
BorderProps bottom,
BorderProps left,
BorderProps right,
java.awt.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(java.awt.Point start,
java.awt.Point end,
int width,
java.awt.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,
java.lang.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 java.io.IOException
java.io.IOException - if an I/O error occursprotected void restoreGraphicsState()
throws java.io.IOException
java.io.IOException - if an I/O error occurspublic void clipBackground(java.awt.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(java.awt.Rectangle rect,
java.awt.Paint fill,
BorderProps bpsBefore,
BorderProps bpsAfter,
BorderProps bpsStart,
BorderProps bpsEnd)
throws IFException
IFExceptionCopyright 1999-2022 The Apache Software Foundation. All Rights Reserved.