public final class XSSFDrawing extends POIXMLDocumentPart implements Drawing<XSSFShape>
POIXMLDocumentPart.RelationPart
Modifier and Type | Field and Description |
---|---|
protected static java.lang.String |
NAMESPACE_A |
protected static java.lang.String |
NAMESPACE_C |
Modifier | Constructor and Description |
---|---|
protected |
XSSFDrawing()
Create a new SpreadsheetML drawing
|
|
XSSFDrawing(PackagePart part)
Construct a SpreadsheetML drawing from a package part
|
Modifier and Type | Method and Description |
---|---|
protected PackageRelationship |
addPictureReference(int pictureIndex)
Add the indexed picture to this drawing relations
|
protected void |
commit()
Save the content in the underlying package part.
|
XSSFClientAnchor |
createAnchor(int dx1,
int dy1,
int dx2,
int dy2,
int col1,
int row1,
int col2,
int row2)
Creates a new client anchor and sets the top-left and bottom-right
coordinates of the anchor.
|
XSSFComment |
createCellComment(ClientAnchor anchor)
Creates a comment.
|
XSSFChart |
createChart(ClientAnchor anchor)
Creates a chart.
|
XSSFChart |
createChart(XSSFClientAnchor anchor)
Creates a chart.
|
XSSFConnector |
createConnector(XSSFClientAnchor anchor)
Creates a simple shape.
|
XSSFShapeGroup |
createGroup(XSSFClientAnchor anchor)
Creates a simple shape.
|
XSSFObjectData |
createObjectData(ClientAnchor anchor,
int storageId,
int pictureIndex)
Adds a new OLE Package Shape
|
XSSFPicture |
createPicture(ClientAnchor anchor,
int pictureIndex)
Creates a picture.
|
XSSFPicture |
createPicture(XSSFClientAnchor anchor,
int pictureIndex)
Creates a picture.
|
XSSFSimpleShape |
createSimpleShape(XSSFClientAnchor anchor)
Creates a simple shape.
|
XSSFTextBox |
createTextbox(XSSFClientAnchor anchor)
Constructs a textbox under the drawing.
|
java.util.List<XSSFChart> |
getCharts()
Returns all charts in this drawing.
|
org.openxmlformats.schemas.drawingml.x2006.spreadsheetDrawing.CTDrawing |
getCTDrawing()
Return the underlying CTDrawing bean, the root element of the
SpreadsheetML Drawing part.
|
java.util.List<XSSFShape> |
getShapes() |
java.util.List<XSSFShape> |
getShapes(XSSFShapeGroup groupshape) |
XSSFSheet |
getSheet() |
XSSFChart |
importChart(XSSFChart srcChart)
Imports the chart from the
srcChart into this drawing. |
java.util.Iterator<XSSFShape> |
iterator() |
_invokeOnDocumentRead, addRelation, createRelationship, createRelationship, createRelationship, getNextPartNumber, getPackagePart, getParent, getRelationById, getRelationId, getRelationPartById, getRelationParts, getRelations, getTargetPart, isCommitted, onDocumentCreate, onDocumentRead, onDocumentRemove, onSave, prepareForCommit, read, rebase, removeRelation, removeRelation, removeRelation, setCommitted, toString
protected static final java.lang.String NAMESPACE_A
protected static final java.lang.String NAMESPACE_C
protected XSSFDrawing()
XSSFSheet.createDrawingPatriarch()
public XSSFDrawing(PackagePart part) throws java.io.IOException, org.apache.xmlbeans.XmlException
part
- the package part holding the drawing data, the content type
must be
application/vnd.openxmlformats-officedocument.drawing+xml
java.io.IOException
org.apache.xmlbeans.XmlException
@Internal public org.openxmlformats.schemas.drawingml.x2006.spreadsheetDrawing.CTDrawing getCTDrawing()
protected void commit() throws java.io.IOException
POIXMLDocumentPart
Sub-classes should override and add logic to marshal the "model" into Ooxml4J.
For example, the code saving a generic XML entry may look as follows:
protected void commit() throws IOException { PackagePart part = getPackagePart(); OutputStream out = part.getOutputStream(); XmlObject bean = getXmlBean(); //the "model" which holds changes in memory bean.save(out, DEFAULT_XML_OPTIONS); out.close(); }
commit
in class POIXMLDocumentPart
java.io.IOException
- a subclass may throw an IOException if the changes can't be committedpublic XSSFClientAnchor createAnchor(int dx1, int dy1, int dx2, int dy2, int col1, int row1, int col2, int row2)
Drawing
createAnchor
in interface Drawing<XSSFShape>
dx1
- the x coordinate in EMU within the first cell.dy1
- the y coordinate in EMU within the first cell.dx2
- the x coordinate in EMU within the second cell.dy2
- the y coordinate in EMU within the second cell.col1
- the column (0 based) of the first cell.row1
- the row (0 based) of the first cell.col2
- the column (0 based) of the second cell.row2
- the row (0 based) of the second cell.public XSSFTextBox createTextbox(XSSFClientAnchor anchor)
anchor
- the client anchor describes how this group is attached to the
sheet.public XSSFPicture createPicture(XSSFClientAnchor anchor, int pictureIndex)
anchor
- the client anchor describes how this picture is attached to
the sheet.pictureIndex
- the index of the picture in the workbook collection of
pictures,
XSSFWorkbook.getAllPictures()
.public XSSFPicture createPicture(ClientAnchor anchor, int pictureIndex)
Drawing
createPicture
in interface Drawing<XSSFShape>
anchor
- the client anchor describes how this picture is
attached to the sheet.pictureIndex
- the index of the picture in the workbook collection
of pictures.public XSSFChart createChart(XSSFClientAnchor anchor)
anchor
- the client anchor describes how this chart is attached to the
sheet.createChart(ClientAnchor)
public XSSFChart createChart(ClientAnchor anchor)
anchor
- the client anchor describes how this chart is attached to the
sheet.public XSSFChart importChart(XSSFChart srcChart)
srcChart
into this drawing.srcChart
- the source chart to be cloned into this drawing.protected PackageRelationship addPictureReference(int pictureIndex)
pictureIndex
- the index of the picture in the workbook collection of pictures,
XSSFWorkbook.getAllPictures()
.public XSSFSimpleShape createSimpleShape(XSSFClientAnchor anchor)
anchor
- the client anchor describes how this group is attached to the
sheet.public XSSFConnector createConnector(XSSFClientAnchor anchor)
anchor
- the client anchor describes how this group is attached to the
sheet.public XSSFShapeGroup createGroup(XSSFClientAnchor anchor)
anchor
- the client anchor describes how this group is attached to the
sheet.public XSSFComment createCellComment(ClientAnchor anchor)
createCellComment
in interface Drawing<XSSFShape>
anchor
- the client anchor describes how this comment is attached to
the sheet.public XSSFObjectData createObjectData(ClientAnchor anchor, int storageId, int pictureIndex)
Drawing
createObjectData
in interface Drawing<XSSFShape>
anchor
- the client anchor describes how this picture is
attached to the sheet.storageId
- the storageId returned by Workbook.addOlePackage(byte[], String, String, String)
pictureIndex
- the index of the picture (used as preview image) in the
workbook collection of pictures.public java.util.List<XSSFChart> getCharts()
public java.util.List<XSSFShape> getShapes()
public java.util.List<XSSFShape> getShapes(XSSFShapeGroup groupshape)
public java.util.Iterator<XSSFShape> iterator()
iterator
in interface java.lang.Iterable<XSSFShape>
public XSSFSheet getSheet()
Copyright 2021 The Apache Software Foundation or its licensors, as applicable.