Package org.apache.poi.hslf.usermodel
Class HSLFFreeformShape
java.lang.Object
org.apache.poi.hslf.usermodel.HSLFShape
org.apache.poi.hslf.usermodel.HSLFSimpleShape
org.apache.poi.hslf.usermodel.HSLFTextShape
org.apache.poi.hslf.usermodel.HSLFAutoShape
org.apache.poi.hslf.usermodel.HSLFFreeformShape
- All Implemented Interfaces:
Iterable<HSLFTextParagraph>
,IAdjustableShape
,AutoShape<HSLFShape,
,HSLFTextParagraph> FreeformShape<HSLFShape,
,HSLFTextParagraph> PlaceableShape<HSLFShape,
,HSLFTextParagraph> Shape<HSLFShape,
,HSLFTextParagraph> SimpleShape<HSLFShape,
,HSLFTextParagraph> TextShape<HSLFShape,
HSLFTextParagraph>
public final class HSLFFreeformShape
extends HSLFAutoShape
implements FreeformShape<HSLFShape,HSLFTextParagraph>
A "Freeform" shape.
Shapes drawn with the "Freeform" tool have cubic bezier curve segments in the smooth sections
and straight-line segments in the straight sections. This object closely corresponds to java.awt.geom.GeneralPath
.
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.poi.sl.usermodel.TextShape
TextShape.TextAutofit, TextShape.TextDirection, TextShape.TextPlaceholder
-
Field Summary
Fields inherited from class org.apache.poi.hslf.usermodel.HSLFTextShape
WrapByPoints, WrapNone, WrapSquare, WrapThrough, WrapTopBottom
Fields inherited from class org.apache.poi.hslf.usermodel.HSLFSimpleShape
_hyperlink, DEFAULT_LINE_WIDTH
-
Constructor Summary
ConstructorsModifierConstructorDescriptionCreate a new Freeform.protected
HSLFFreeformShape
(EscherContainerRecord escherRecord, ShapeContainer<HSLFShape, HSLFTextParagraph> parent) Create a Freeform object and initialize it from the supplied Record container.Create a new Freeform. -
Method Summary
Modifier and TypeMethodDescriptiongetPath()
Gets the shape path.int
setPath
(Path2D.Double path) Set the shape pathMethods inherited from class org.apache.poi.hslf.usermodel.HSLFAutoShape
createSpContainer, getAdjustmentValue, setAdjustmentValue, setDefaultTextProperties
Methods inherited from class org.apache.poi.hslf.usermodel.HSLFTextShape
afterInsert, appendText, getBottomInset, getEscherTextboxWrapper, getHFPlaceholderAtom, getHyperlinks, getInsets, getLeftInset, getMetroShape, getPlaceholderAtom, getRawText, getRightInset, getRunType, getText, getTextDirection, getTextHeight, getTextHeight, getTextId, getTextParagraphs, getTextPlaceholder, getTextRotation, getTopInset, getVerticalAlignment, getWordWrap, getWordWrapEx, isAlignToBaseline, isHorizontalCentered, isPlaceholder, iterator, resizeToFitText, resizeToFitText, setAlignToBaseline, setBottomInset, setHorizontalCentered, setInsets, setLeftInset, setRightInset, setRunType, setSheet, setText, setTextDirection, setTextId, setTextPlaceholder, setTextRotation, setTopInset, setVerticalAlignment, setWordWrap, setWordWrapEx, storeText
Methods inherited from class org.apache.poi.hslf.usermodel.HSLFSimpleShape
createHyperlink, createSpContainer, getAdjustValue, getFillColor, getGeometry, getHyperlink, getLineBackgroundColor, getLineCap, getLineColor, getLineCompound, getLineDash, getLineDecoration, getLineHeadDecoration, getLineHeadLength, getLineHeadWidth, getLineTailDecoration, getLineTailLength, getLineTailWidth, getLineWidth, getPlaceholder, getPlaceholderDetails, getShadow, getShadowAngle, getShadowColor, getShadowDistance, getStrokeStyle, setFillColor, setHyperlink, setLineBackgroundColor, setLineCap, setLineColor, setLineCompound, setLineDash, setLineHeadDecoration, setLineHeadLength, setLineHeadWidth, setLineTailDecoration, setLineTailLength, setLineTailWidth, setLineWidth, setPlaceholder, setStrokeStyle
Methods inherited from class org.apache.poi.hslf.usermodel.HSLFShape
draw, getAnchor, getClientData, getClientDataRecord, getClientRecords, getEscherChild, getEscherChild, getEscherChild, getEscherChild, getEscherOptRecord, getEscherProperty, getEscherProperty, getEscherProperty, getFill, getFillStyle, getFlipHorizontal, getFlipVertical, getParent, getRotation, getShapeId, getShapeName, getShapeType, getSheet, getSpContainer, moveTo, setAnchor, setEscherProperty, setEscherProperty, setFlipHorizontal, setFlipVertical, setRotation, setShapeId, setShapeType
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.apache.poi.sl.draw.geom.IAdjustableShape
getAdjustValue
Methods inherited from interface java.lang.Iterable
forEach, iterator, spliterator
Methods inherited from interface org.apache.poi.sl.usermodel.PlaceableShape
getAnchor, getFlipHorizontal, getFlipVertical, getParent, getRotation, getSheet, setAnchor, setFlipHorizontal, setFlipVertical, setRotation
Methods inherited from interface org.apache.poi.sl.usermodel.Shape
draw, getAnchor, getParent, getShapeId, getShapeName, getSheet
Methods inherited from interface org.apache.poi.sl.usermodel.SimpleShape
createHyperlink, getFillColor, getFillStyle, getGeometry, getHyperlink, getLineDecoration, getPlaceholder, getPlaceholderDetails, getShadow, getShapeType, getStrokeStyle, isPlaceholder, setFillColor, setPlaceholder, setShapeType, setStrokeStyle
Methods inherited from interface org.apache.poi.sl.usermodel.TextShape
appendText, getInsets, getText, getTextDirection, getTextHeight, getTextHeight, getTextParagraphs, getTextPlaceholder, getTextRotation, getVerticalAlignment, getWordWrap, isHorizontalCentered, resizeToFitText, resizeToFitText, setHorizontalCentered, setInsets, setText, setTextDirection, setTextPlaceholder, setTextRotation, setVerticalAlignment, setWordWrap
-
Constructor Details
-
HSLFFreeformShape
protected HSLFFreeformShape(EscherContainerRecord escherRecord, ShapeContainer<HSLFShape, HSLFTextParagraph> parent) Create a Freeform object and initialize it from the supplied Record container.- Parameters:
escherRecord
-EscherSpContainer
container which holds information about this shapeparent
- the parent of the shape
-
HSLFFreeformShape
Create a new Freeform. This constructor is used when a new shape is created.- Parameters:
parent
- the parent of this Shape. For example, if this text box is a cell in a table then the parent is Table.
-
HSLFFreeformShape
public HSLFFreeformShape()Create a new Freeform. This constructor is used when a new shape is created.
-
-
Method Details
-
setPath
Description copied from interface:FreeformShape
Set the shape path- Specified by:
setPath
in interfaceFreeformShape<HSLFShape,
HSLFTextParagraph> - Parameters:
path
- shape outline- Returns:
- the number of points written
-
getPath
Description copied from interface:FreeformShape
Gets the shape path.The path is translated in the shape's coordinate system, i.e. freeform.getPath().getBounds2D() equals to freeform.getAnchor() (small discrepancies are possible due to rounding errors)
- Specified by:
getPath
in interfaceFreeformShape<HSLFShape,
HSLFTextParagraph> - Returns:
- the path
-