Top Description Fields Constructors Methods
org.apache.poi.sl.draw

public Class SLGraphics

extends Graphics2D
implements Cloneable
Class Inheritance
All Implemented Interfaces
java.lang.Cloneable
Imports
java.awt.*, java.awt.font.FontRenderContext, .GlyphVector, .TextLayout, java.awt.geom.AffineTransform, .Arc2D, .Ellipse2D, .GeneralPath, .Line2D, .Path2D, .RoundRectangle2D, java.awt.image.BufferedImage, .BufferedImageOp, .ImageObserver, .RenderedImage, java.awt.image.renderable.RenderableImage, java.text.AttributedCharacterIterator, java.util.Map, org.apache.logging.log4j.LogManager, .Logger, org.apache.poi.sl.usermodel.FreeformShape, .GroupShape, .Insets2D, .SimpleShape, .StrokeStyle, .TextBox, .TextRun, .VerticalAlignment, org.apache.poi.util.NotImplemented, .SuppressForbidden

Translates Graphics2D calls into PowerPoint.

Field Summary

Modifier and TypeField and Description
private Color
private Font
private Color
private GroupShape<?, ?>
private RenderingHints
private Paint
private Stroke
private AffineTransform
private static final Logger

Constructor Summary

AccessConstructor and Description
public
SLGraphics(GroupShape<?, ?>
The shape group to write the graphics calls into.
group
)

Construct Java Graphics object which translates graphic calls in ppt drawing layer.

Method Summary

Modifier and TypeMethod and Description
public void
addRenderingHints(Map<?, ?>
the rendering hints to be set
hints
)

Implements abstract java.awt.Graphics2D.addRenderingHints.

Sets the values of an arbitrary number of preferences for the rendering algorithms.

protected void
applyPaint(SimpleShape<?, ?> shape)

protected void
applyStroke(SimpleShape<?, ?> shape)

public void
clearRect(int
the x coordinate of the rectangle to clear.
x
,
int
the y coordinate of the rectangle to clear.
y
,
int
the width of the rectangle to clear.
width
,
int
the height of the rectangle to clear.
height
)

Implements abstract java.awt.Graphics.clearRect.

Clears the specified rectangle by filling it with the background color of the current drawing surface.

public void
clip(Shape
the Shape to be intersected with the current Clip. If s is null, this method clears the current Clip.
s
)

Implements abstract java.awt.Graphics2D.clip.

Intersects the current Clip with the interior of the specified Shape and sets the Clip to the resulting intersection.

public void
clipRect(int
the x coordinate of the rectangle to intersect the clip with
x
,
int
the y coordinate of the rectangle to intersect the clip with
y
,
int
the width of the rectangle to intersect the clip with
width
,
int
the height of the rectangle to intersect the clip with
height
)

Implements abstract java.awt.Graphics.clipRect.

Intersects the current clip with the specified rectangle.

public void
copyArea(int
the x coordinate of the source rectangle.
x
,
int
the y coordinate of the source rectangle.
y
,
int
the width of the source rectangle.
width
,
int
the height of the source rectangle.
height
,
int
the horizontal distance to copy the pixels.
dx
,
int
the vertical distance to copy the pixels.
dy
)

Implements abstract java.awt.Graphics.copyArea.

Copies an area of the component by a distance specified by dx and dy.

public Graphics

Returns:

a new graphics context that is a copy of this graphics context.
create
()

Implements abstract java.awt.Graphics.create.

Creates a new Graphics object that is a copy of this Graphics object.

public void
dispose()

Implements abstract java.awt.Graphics.dispose.

Disposes of this graphics context and releases any system resources that it is using.

public void
draw(Shape
the Shape to be rendered
shape
)

Implements abstract java.awt.Graphics2D.draw.

Strokes the outline of a Shape using the settings of the current Graphics2D context.

public void
drawArc(int
the x coordinate of the upper-left corner of the arc to be drawn.
x
,
int
the y coordinate of the upper-left corner of the arc to be drawn.
y
,
int
the width of the arc to be drawn.
width
,
int
the height of the arc to be drawn.
height
,
int
the beginning angle.
startAngle
,
int
the angular extent of the arc, relative to the start angle.
arcAngle
)

Implements abstract java.awt.Graphics.drawArc.

Draws the outline of a circular or elliptical arc covering the specified rectangle.

public void
drawGlyphVector(GlyphVector
the GlyphVector to be rendered
g
,
float
the x position in user space where the glyphs should be rendered
x
,
float
the y position in user space where the glyphs should be rendered
y
)

Implements abstract java.awt.Graphics2D.drawGlyphVector.

Renders the text of the specified GlyphVector using the Graphics2D context's rendering attributes.

public boolean
drawImage(Image
the specified image to be drawn.
img
,
int
the x coordinate.
x
,
int
the y coordinate.
y
,
Color
the background color to paint under the non-opaque portions of the image.
bgcolor
,
ImageObserver
object to be notified as more of the image is converted.
observer
)

Implements abstract java.awt.Graphics.drawImage.

Draws as much of the specified image as is currently available.

public boolean
drawImage(Image
the specified image to be drawn.
img
,
int
the x coordinate.
x
,
int
the y coordinate.
y
,
int
the width of the rectangle.
width
,
int
the height of the rectangle.
height
,
Color
the background color to paint under the non-opaque portions of the image.
bgcolor
,
ImageObserver
object to be notified as more of the image is converted.
observer
)

Implements abstract java.awt.Graphics.drawImage.

Draws as much of the specified image as has already been scaled to fit inside the specified rectangle.

public boolean
drawImage(Image
the specified image to be drawn
img
,
int
the x coordinate of the first corner of the destination rectangle.
dx1
,
int
the y coordinate of the first corner of the destination rectangle.
dy1
,
int
the x coordinate of the second corner of the destination rectangle.
dx2
,
int
the y coordinate of the second corner of the destination rectangle.
dy2
,
int
the x coordinate of the first corner of the source rectangle.
sx1
,
int
the y coordinate of the first corner of the source rectangle.
sy1
,
int
the x coordinate of the second corner of the source rectangle.
sx2
,
int
the y coordinate of the second corner of the source rectangle.
sy2
,
ImageObserver
object to be notified as more of the image is scaled and converted.
observer
)

Implements abstract java.awt.Graphics.drawImage.

Draws as much of the specified area of the specified image as is currently available, scaling it on the fly to fit inside the specified area of the destination drawable surface.

public boolean
drawImage(Image
the specified image to be drawn
img
,
int
the x coordinate of the first corner of the destination rectangle.
dx1
,
int
the y coordinate of the first corner of the destination rectangle.
dy1
,
int
the x coordinate of the second corner of the destination rectangle.
dx2
,
int
the y coordinate of the second corner of the destination rectangle.
dy2
,
int
the x coordinate of the first corner of the source rectangle.
sx1
,
int
the y coordinate of the first corner of the source rectangle.
sy1
,
int
the x coordinate of the second corner of the source rectangle.
sx2
,
int
the y coordinate of the second corner of the source rectangle.
sy2
,
Color
the background color to paint under the non-opaque portions of the image.
bgcolor
,
ImageObserver
object to be notified as more of the image is scaled and converted.
observer
)

Implements abstract java.awt.Graphics.drawImage.

Draws as much of the specified area of the specified image as is currently available, scaling it on the fly to fit inside the specified area of the destination drawable surface.

public boolean

Returns:

false if the image pixels are still changing; true otherwise.
drawImage
(Image
the specified image to be drawn. This method does nothing if img is null.
img
,
int
the x coordinate.
x
,
int
the y coordinate.
y
,
ImageObserver
object to be notified as more of the image is converted.
observer
)

Implements abstract java.awt.Graphics.drawImage.

Draws as much of the specified image as is currently available.

public void
drawImage(BufferedImage
the BufferedImage to be rendered
img
,
BufferedImageOp
the filter to be applied to the image before rendering
op
,
int
the x coordinate in user space where the image is rendered
x
,
int
the y coordinate in user space where the image is rendered
y
)

Implements abstract java.awt.Graphics2D.drawImage.

Renders a BufferedImage that is filtered with a BufferedImageOp.

public boolean

Returns:

true if the Image is fully loaded and completely rendered; false if the Image is still being loaded.
drawImage
(Image
the Image to be rendered
img
,
AffineTransform
the transformation from image space into user space
xform
,
ImageObserver
the ImageObserver to be notified as more of the Image is converted
obs
)

Implements abstract java.awt.Graphics2D.drawImage.

Renders an image, applying a transform from image space into user space before drawing.

public boolean

Returns:

false if the image pixels are still changing; true otherwise.
drawImage
(Image
the specified image to be drawn. This method does nothing if img is null.
img
,
int
the x coordinate.
x
,
int
the y coordinate.
y
,
int
the width of the rectangle.
width
,
int
the height of the rectangle.
height
,
ImageObserver
object to be notified as more of the image is converted.
observer
)

Implements abstract java.awt.Graphics.drawImage.

Draws as much of the specified image as has already been scaled to fit inside the specified rectangle.

public void
drawLine(int
the first point's x coordinate.
x1
,
int
the first point's y coordinate.
y1
,
int
the second point's x coordinate.
x2
,
int
the second point's y coordinate.
y2
)

Implements abstract java.awt.Graphics.drawLine.

Draws a line, using the current color, between the points (x1, y1) and (x2, y2) in this graphics context's coordinate system.

public void
drawOval(int
the x coordinate of the upper left corner of the oval to be drawn.
x
,
int
the y coordinate of the upper left corner of the oval to be drawn.
y
,
int
the width of the oval to be drawn.
width
,
int
the height of the oval to be drawn.
height
)

Implements abstract java.awt.Graphics.drawOval.

Draws the outline of an oval.

public void
drawPolygon(int[]
an array of x coordinates.
xPoints
,
int[]
an array of y coordinates.
yPoints
,
int
the total number of points.
nPoints
)

Implements abstract java.awt.Graphics.drawPolygon.

Draws a closed polygon defined by arrays of x and y coordinates.

public void
drawPolyline(int[]
an array of x points
xPoints
,
int[]
an array of y points
yPoints
,
int
the total number of points
nPoints
)

Implements abstract java.awt.Graphics.drawPolyline.

Draws a sequence of connected lines defined by arrays of x and y coordinates.

public void
drawRect(int
the x coordinate of the rectangle to be drawn.
x
,
int
the y coordinate of the rectangle to be drawn.
y
,
int
the width of the rectangle to be drawn.
width
,
int
the height of the rectangle to be drawn.
height
)

Overrides java.awt.Graphics.drawRect.

Draws the outline of the specified rectangle.

public void
drawRenderableImage(RenderableImage
the image to be rendered. This method does nothing if img is null.
img
,
AffineTransform
the transformation from image space into user space
xform
)

Implements abstract java.awt.Graphics2D.drawRenderableImage.

Renders a RenderedImage, applying a transform from image space into user space before drawing.

public void
drawRenderedImage(RenderedImage
the image to be rendered. This method does nothing if img is null.
img
,
AffineTransform
the transformation from image space into user space
xform
)

Implements abstract java.awt.Graphics2D.drawRenderedImage.

Renders a RenderableImage, applying a transform from image space into user space before drawing.

public void
drawRoundRect(int
the x coordinate of the rectangle to be drawn.
x
,
int
the y coordinate of the rectangle to be drawn.
y
,
int
the width of the rectangle to be drawn.
width
,
int
the height of the rectangle to be drawn.
height
,
int
the horizontal diameter of the arc at the four corners.
arcWidth
,
int
the vertical diameter of the arc at the four corners.
arcHeight
)

Implements abstract java.awt.Graphics.drawRoundRect.

Draws an outlined round-cornered rectangle using this graphics context's current color.

public void
drawString(String
the String to be rendered
s
,
float
the x coordinate of the location where the String should be rendered
x
,
float
the y coordinate of the location where the String should be rendered
y
)

Implements abstract java.awt.Graphics2D.drawString.

Renders the text specified by the specified String, using the current text attribute state in the Graphics2D context.

public void
drawString(String
the string to be drawn.
str
,
int
the x coordinate.
x
,
int
the y coordinate.
y
)

Implements abstract java.awt.Graphics2D.drawString.

Draws the text given by the specified string, using this graphics context's current font and color.

public void
drawString(AttributedCharacterIterator
the iterator whose text is to be drawn
iterator
,
int
the x coordinate.
x
,
int
the y coordinate.
y
)

Implements abstract java.awt.Graphics2D.drawString.

Draws the text given by the specified iterator, using this graphics context's current color.

public void
drawString(AttributedCharacterIterator
the iterator whose text is to be rendered
iterator
,
float
the x coordinate where the iterator's text is to be rendered
x
,
float
the y coordinate where the iterator's text is to be rendered
y
)

Implements abstract java.awt.Graphics2D.drawString.

Renders the text of the specified iterator, using the Graphics2D context's current Paint.

public void
fill(Shape
the Shape to be filled
shape
)

Implements abstract java.awt.Graphics2D.fill.

Fills the interior of a Shape using the settings of the Graphics2D context.

public void
fillArc(int
the x coordinate of the upper-left corner of the arc to be filled.
x
,
int
the y coordinate of the upper-left corner of the arc to be filled.
y
,
int
the width of the arc to be filled.
width
,
int
the height of the arc to be filled.
height
,
int
the beginning angle.
startAngle
,
int
the angular extent of the arc, relative to the start angle.
arcAngle
)

Implements abstract java.awt.Graphics.fillArc.

Fills a circular or elliptical arc covering the specified rectangle.

public void
fillOval(int
the x coordinate of the upper left corner of the oval to be filled.
x
,
int
the y coordinate of the upper left corner of the oval to be filled.
y
,
int
the width of the oval to be filled.
width
,
int
the height of the oval to be filled.
height
)

Implements abstract java.awt.Graphics.fillOval.

Fills an oval bounded by the specified rectangle with the current color.

public void
fillPolygon(int[]
an array of x coordinates.
xPoints
,
int[]
an array of y coordinates.
yPoints
,
int
the total number of points.
nPoints
)

Implements abstract java.awt.Graphics.fillPolygon.

Fills a closed polygon defined by arrays of x and y coordinates.

public void
fillRect(int
the x coordinate of the rectangle to be filled.
x
,
int
the y coordinate of the rectangle to be filled.
y
,
int
the width of the rectangle to be filled.
width
,
int
the height of the rectangle to be filled.
height
)

Implements abstract java.awt.Graphics.fillRect.

Fills the specified rectangle.

public void
fillRoundRect(int
the x coordinate of the rectangle to be filled.
x
,
int
the y coordinate of the rectangle to be filled.
y
,
int
the width of the rectangle to be filled.
width
,
int
the height of the rectangle to be filled.
height
,
int
the horizontal diameter of the arc at the four corners.
arcWidth
,
int
the vertical diameter of the arc at the four corners.
arcHeight
)

Implements abstract java.awt.Graphics.fillRoundRect.

Fills the specified rounded corner rectangle with the current color.

public Color

Returns:

the current Graphics2D Color, which defines the background color.
getBackground
()

Implements abstract java.awt.Graphics2D.getBackground.

Returns the background color used for clearing a region.

public Shape

Returns:

a Shape object representing the current clipping area, or null if no clip is set.
getClip
()

Implements abstract java.awt.Graphics.getClip.

Gets the current clipping area.

public Rectangle

Returns:

the bounding rectangle of the current clipping area, or null if no clip is set.
getClipBounds
()

Implements abstract java.awt.Graphics.getClipBounds.

Returns the bounding rectangle of the current clipping area.

public Color

Returns:

this graphics context's current color.
getColor
()

Implements abstract java.awt.Graphics.getColor.

Gets this graphics context's current color.

public Composite

Returns:

the current Graphics2D Composite, which defines a compositing style.
getComposite
()

Implements abstract java.awt.Graphics2D.getComposite.

Returns the current Composite in the Graphics2D context.

public GraphicsConfiguration

Returns:

the device configuration
getDeviceConfiguration
()

Implements abstract java.awt.Graphics2D.getDeviceConfiguration.

Returns the device configuration associated with this Graphics2D.

public Font

Returns:

this graphics context's current font.
getFont
()

Implements abstract java.awt.Graphics.getFont.

Gets the current font.

public FontMetrics

Returns:

the font metrics for the specified font.
getFontMetrics
(Font
the specified font
f
)

Implements abstract java.awt.Graphics.getFontMetrics.

Gets the font metrics for the specified font.

public FontRenderContext

Returns:

a reference to an instance of FontRenderContext.
getFontRenderContext
()

Implements abstract java.awt.Graphics2D.getFontRenderContext.

Get the rendering context of the Font within this Graphics2D context.

public Paint

Returns:

the current Graphics2D Paint, which defines a color or pattern.
getPaint
()

Implements abstract java.awt.Graphics2D.getPaint.

Returns the current Paint of the Graphics2D context.

public Object

Returns:

an object representing the value for the specified hint key. Some of the keys and their associated values are defined in the RenderingHints class.
getRenderingHint
(RenderingHints.Key
the key corresponding to the hint to get.
hintKey
)

Implements abstract java.awt.Graphics2D.getRenderingHint.

Returns the value of a single preference for the rendering algorithms.

public RenderingHints

Returns:

a reference to an instance of RenderingHints that contains the current preferences.
getRenderingHints
()

Implements abstract java.awt.Graphics2D.getRenderingHints.

Gets the preferences for the rendering algorithms.

public GroupShape<?, ?>

Returns:

the shape group being used for drawing
getShapeGroup
()

public Stroke

Returns:

the current Graphics2D Stroke, which defines the line style.
getStroke
()

Implements abstract java.awt.Graphics2D.getStroke.

Returns the current Stroke in the Graphics2D context.

public AffineTransform

Returns:

the current AffineTransform in the Graphics2D context.
getTransform
()

Implements abstract java.awt.Graphics2D.getTransform.

Returns a copy of the current Transform in the Graphics2D context.

public boolean

Returns:

true if there is a hit; false otherwise.
hit
(Rectangle
the area in device space to check for a hit
rect
,
Shape
the Shape to check for a hit
s
,
boolean
flag used to choose between testing the stroked or the filled shape. If the flag is true, the Stroke oultine is tested. If the flag is false, the filled Shape is tested.
onStroke
)

Implements abstract java.awt.Graphics2D.hit.

Checks whether or not the specified Shape intersects the specified Rectangle, which is in device space.

private void
public void
rotate(double
the angle of rotation in radians
theta
)

Implements abstract java.awt.Graphics2D.rotate.

Concatenates the current Graphics2D Transform with a rotation transform.

public void
rotate(double
the angle of rotation in radians
theta
,
double
x coordinate of the origin of the rotation
x
,
double
y coordinate of the origin of the rotation
y
)

Implements abstract java.awt.Graphics2D.rotate.

Concatenates the current Graphics2D Transform with a translated rotation transform.

public void
scale(double
the amount by which X coordinates in subsequent rendering operations are multiplied relative to previous rendering operations.
sx
,
double
the amount by which Y coordinates in subsequent rendering operations are multiplied relative to previous rendering operations.
sy
)

Implements abstract java.awt.Graphics2D.scale.

Concatenates the current Graphics2D Transform with a scaling transformation Subsequent rendering is resized according to the specified scaling factors relative to the previous scaling.

public void
setBackground(Color
the background color that isused in subsequent calls to clearRect
color
)

Implements abstract java.awt.Graphics2D.setBackground.

Sets the background color for the Graphics2D context.

public void
setClip(Shape
the Shape to use to set the clip
clip
)

Implements abstract java.awt.Graphics.setClip.

Sets the current clipping area to an arbitrary clip shape.

public void
setClip(int
the x coordinate of the new clip rectangle.
x
,
int
the y coordinate of the new clip rectangle.
y
,
int
the width of the new clip rectangle.
width
,
int
the height of the new clip rectangle.
height
)

Implements abstract java.awt.Graphics.setClip.

Sets the current clip to the rectangle specified by the given coordinates.

public void
setColor(Color
the new rendering color.
c
)

Implements abstract java.awt.Graphics.setColor.

Sets this graphics context's current color to the specified color.

public void
setComposite(Composite
the Composite object to be used for rendering
comp
)

Implements abstract java.awt.Graphics2D.setComposite.

Sets the Composite for the Graphics2D context.

public void
setFont(Font
the font.
font
)

Implements abstract java.awt.Graphics.setFont.

Sets this graphics context's font to the specified font.

public void
setPaint(Paint
the Paint object to be used to generate color during the rendering process, or null
paint
)

Implements abstract java.awt.Graphics2D.setPaint.

Sets the Paint attribute for the Graphics2D context.

public void
setPaintMode()

Implements abstract java.awt.Graphics.setPaintMode.

Sets the paint mode of this graphics context to overwrite the destination with this graphics context's current color.

public void
setRenderingHint(RenderingHints.Key
the key of the hint to be set.
hintKey
,
Object
the value indicating preferences for the specified hint category.
hintValue
)

Implements abstract java.awt.Graphics2D.setRenderingHint.

Sets the value of a single preference for the rendering algorithms.

public void
setRenderingHints(Map<?, ?>
the rendering hints to be set
hints
)

Implements abstract java.awt.Graphics2D.setRenderingHints.

Replaces the values of all preferences for the rendering algorithms with the specified hints.

public void
setStroke(Stroke
the Stroke object to be used to stroke a Shape during the rendering process
s
)

Implements abstract java.awt.Graphics2D.setStroke.

Sets the Stroke for the Graphics2D context.

public void
setTransform(AffineTransform
the AffineTransform object to be used in the rendering process
Tx
)

Implements abstract java.awt.Graphics2D.setTransform.

Sets the Transform in the Graphics2D context.

public void
setXORMode(Color
the XOR alternation color
c1
)

Implements abstract java.awt.Graphics.setXORMode.

Sets the paint mode of this graphics context to alternate between this graphics context's current color and the new specified color.

public void
shear(double
the multiplier by which coordinates are shifted in the positive X axis direction as a function of their Y coordinate
shx
,
double
the multiplier by which coordinates are shifted in the positive Y axis direction as a function of their X coordinate
shy
)

Implements abstract java.awt.Graphics2D.shear.

Concatenates the current Graphics2D Transform with a shearing transform.

public void
transform(AffineTransform
the AffineTransform object to be composed with the current Transform
Tx
)

Implements abstract java.awt.Graphics2D.transform.

Composes an AffineTransform object with the Transform in this Graphics2D according to the rule last-specified-first-applied.

public void
translate(int
the x coordinate.
x
,
int
the y coordinate.
y
)

Implements abstract java.awt.Graphics2D.translate.

Translates the origin of the graphics context to the point (x, y) in the current coordinate system.

public void
translate(double
the distance to translate along the x-axis
tx
,
double
the distance to translate along the y-axis
ty
)

Implements abstract java.awt.Graphics2D.translate.

Concatenates the current Graphics2D Transform with a translation transform.

Inherited from java.awt.Graphics2D:
draw3DRectfill3DRect