asposecells.api
Class ShapeCollection

Represents all the shape in a worksheet/chart.

Property Getters/Setters Summary
methodgetCount()
          
methodget(index)
           Gets the shape object at the specific index.
methodget(name)
           Gets the shape object by the shape image
 
Method Summary
methodaddAutoShape(type, upperLeftRow, top, upperLeftColumn, left, height, width)
           Adds a AutoShape to the worksheet.
methodaddAutoShapeInChart(type, top, left, height, width)
           Adds a AutoShape to the chart.
methodaddCopy(sourceShape, upperLeftRow, top, upperLeftColumn, left)
           Adds and copy a shape to the worksheet..
methodaddFreeFloatingShape(type, top, left, height, width, imageData, isOriginalSize)
           Adds a free floating shape to the worksheet.Only applies for line/image shape.
methodaddLabelInChart(top, left, height, width)
           Adds a label to the chart.
methodaddLinkedPicture(upperLeftRow, upperLeftColumn, height, width, sourceFullName)
           Add a linked picture.
methodaddOleObject(upperLeftRow, top, upperLeftColumn, left, height, width, imageData)
          
methodaddOleObjectWithLinkedImage(upperLeftRow, upperLeftColumn, height, width, sourceFullName)
           Add a linked picture.
methodaddPictureFromBytes(upperLeftRow, upperLeftColumn, byte_array, widthScale, heightScale)
           Adds a picture to the collection.
methodaddPictureFromBytes(upperLeftRow, upperLeftColumn, lowerRightRow, lowerRightColumn, byte_array)
           Adds a picture to the collection.
methodaddPictureInChartFromBytes(top, left, byte_array, widthScale, heightScale)
           Adds a picture to the chart.
methodaddShape(type, upperLeftRow, top, upperLeftColumn, left, height, width)
           Adds a Shape to the worksheet.
methodaddShapeInChart(type, placement, left, top, right, bottom)
           Add a shape to chart .All unit is 1/4000 of chart area.
methodaddShapeInChart(type, placement, left, top, right, bottom, imageData)
           Add a shape to chart .All unit is 1/4000 of chart area.
methodaddSvg(upperLeftRow, top, upperLeftColumn, left, height, width, svgData, compatibleImageData)
           Adds svg image.
methodaddTextBoxInChart(top, left, height, width)
           Adds a textbox to the chart.
methodaddTextEffect(effect, text, fontName, size, fontBold, fontItalic, upperLeftRow, top, upperLeftColumn, left, height, width)
           Inserts a WordArt object.
methodaddTextEffectInChart(effect, text, fontName, size, fontBold, fontItalic, top, left, height, width)
           Inserts a WordArt object to the chart
methodaddWordArt(style, text, upperLeftRow, top, upperLeftColumn, left, height, width)
           Adds preset WordArt since Excel 2007.s
methodclear()
           Clear all shapes.
methodcontains(value)→ inherited from CollectionBase
          Reserved for internal use.
methodcopyCommentsInRange(shapes, ca, destRow, destColumn)
           Copy all comments in the range.
methodcopyInRange(sourceShapes, ca, destRow, destColumn, isContained)
           Copy shapes in the range to destination range.
methoddeleteInRange(ca)
           Delete shapes in the range.Comment shapes will not be deleted.
methoddeleteShape(shape)
           Delete a shape. If the shape is in the group or is a comment shape, it will not be deleted.
methodget(index)→ inherited from CollectionBase
          Reserved for internal use.
methodgroup(groupItems)
           Group the shapes.
methodindexOf(value)→ inherited from CollectionBase
          Reserved for internal use.
methoditerator()→ inherited from CollectionBase
          
methodremove(shape)
           Remove the shape.
methodremoveAt(index)
           Remove the shape.
methodungroup(group)
           Ungroups the shape items.
methodupdateSelectedValue()
           Update the selected value by the value of the linked cell of the shapes.
 

Property Getters/Setters Detail

getCount : int 

int getCount()

get : Shape 

Shape get(index)
Gets the shape object at the specific index.
Parameters:
index -
Returns:

get : Shape 

Shape get(name)
Gets the shape object by the shape image
Parameters:
name -
Returns:

Method Detail

addCopy

Shape addCopy(sourceShape, upperLeftRow, top, upperLeftColumn, left)
Adds and copy a shape to the worksheet..
Parameters:
sourceShape: Shape - Source shape.
upperLeftRow: int - Upper left row index.
top: int - Represents the vertical offset of checkbox from its left row, in unit of pixel.
upperLeftColumn: int - Upper left column index.
left: int - Represents the horizontal offset of textbox from its left column, in unit of pixel.
Returns:
The new shape object index.

addLabelInChart

Label addLabelInChart(top, left, height, width)
Adds a label to the chart.
Parameters:
top: int - Represents the vertical offset of label from the upper left corner in units of 1/4000 of the chart area.
left: int - Represents the vertical offset of label from the upper left corner in units of 1/4000 of the chart area.
height: int - Represents the height of label, in units of 1/4000 of the chart area.
width: int - Represents the width of label, in units of 1/4000 of the chart area.
Returns:
A new Label object.

addTextBoxInChart

TextBox addTextBoxInChart(top, left, height, width)
Adds a textbox to the chart.
Parameters:
top: int - Represents the vertical offset of textbox from the upper left corner in units of 1/4000 of the chart area.
left: int - Represents the vertical offset of textbox from the upper left corner in units of 1/4000 of the chart area.
height: int - Represents the height of textbox, in units of 1/4000 of the chart area.
width: int - Represents the width of textbox, in units of 1/4000 of the chart area.
Returns:
A TextBox object.

addTextEffectInChart

Shape addTextEffectInChart(effect, text, fontName, size, fontBold, fontItalic, top, left, height, width)
Inserts a WordArt object to the chart
Parameters:
effect: int - A MsoPresetTextEffect value. The mso preset text effect type.
text: String - The WordArt text.
fontName: String - The font name.
size: int - The font size
fontBold: boolean - Indicates whether font is bold.
fontItalic: boolean - Indicates whether font is italic.
top: int - Represents the vertical offset of shape from the upper left corner in units of 1/4000 of the chart area.
left: int - Represents the vertical offset of shape from the upper left corner in units of 1/4000 of the chart area.
height: int - Represents the height of shape, in units of 1/4000 of the chart area.
width: int - Represents the width of shape, in units of 1/4000 of the chart area.
Returns:
Returns a Shape object that represents the new WordArt object.

addTextEffect

Shape addTextEffect(effect, text, fontName, size, fontBold, fontItalic, upperLeftRow, top, upperLeftColumn, left, height, width)
Inserts a WordArt object.
Parameters:
effect: int - A MsoPresetTextEffect value. The mso preset text effect type.
text: String - The WordArt text.
fontName: String - The font name.
size: int - The font size
fontBold: boolean - Indicates whether font is bold.
fontItalic: boolean - Indicates whether font is italic.
upperLeftRow: int - Upper left row index.
top: int - Represents the vertical offset of shape from its left row, in unit of pixel.
upperLeftColumn: int - Upper left column index.
left: int - Represents the horizontal offset of shape from its left column, in unit of pixel.
height: int - Represents the height of shape, in unit of pixel.
width: int - Represents the width of shape, in unit of pixel.
Returns:
Returns a Shape object that represents the new WordArt object.

addWordArt

Shape addWordArt(style, text, upperLeftRow, top, upperLeftColumn, left, height, width)
Adds preset WordArt since Excel 2007.s
Parameters:
style: int - A PresetWordArtStyle value. The preset WordArt Style.
text: String - The text.
upperLeftRow: int - Upper left row index.
top: int - Represents the vertical offset of shape from its left row, in unit of pixel.
upperLeftColumn: int - Upper left column index.
left: int - Represents the horizontal offset of shape from its left column, in unit of pixel.
height: int - Represents the height of shape, in unit of pixel.
width: int - Represents the width of shape, in unit of pixel.
Returns:

addFreeFloatingShape

Shape addFreeFloatingShape(type, top, left, height, width, imageData, isOriginalSize)
Adds a free floating shape to the worksheet.Only applies for line/image shape.
Parameters:
type: int - A MsoDrawingType value. The shape type.
top: int - Represents the vertical offset of shape from the worksheet's top row, in unit of pixel.
left: int - Represents the horizontal offset of shape from the worksheet's left column, in unit of pixel.
height: int - Represents the height of LineShape, in unit of pixel.
width: int - Represents the width of LineShape, in unit of pixel.
imageData: byte[] - The image data,only applies for the picture.
isOriginalSize: boolean - Whether the shape use original size if the shape is image.
Returns:

addShapeInChart

Shape addShapeInChart(type, placement, left, top, right, bottom, imageData)
Add a shape to chart .All unit is 1/4000 of chart area.
Parameters:
type: int - A MsoDrawingType value. The drawing type.
placement: int - A PlacementType value. the placement type.
left: int - In unit of 1/4000 chart area width.
top: int - In unit of 1/4000 chart area height.
right: int - In unit of 1/4000 chart area width.
bottom: int - In unit of 1/4000 chart area height.
imageData: byte[] - If the shape is not a picture or ole object,imageData should be null.

addShapeInChart

Shape addShapeInChart(type, placement, left, top, right, bottom)
Add a shape to chart .All unit is 1/4000 of chart area.
Parameters:
type: int - A MsoDrawingType value. The drawing type.
placement: int - A PlacementType value. the placement type.
left: int - In unit of 1/4000 chart area width.
top: int - In unit of 1/4000 chart area height.
right: int - In unit of 1/4000 chart area width.
bottom: int - In unit of 1/4000 chart area height.

addShape

Shape addShape(type, upperLeftRow, top, upperLeftColumn, left, height, width)
Adds a Shape to the worksheet. The type could not be Chart/Comment/Picuter/OleObject/Polygon/DialogBox
Parameters:
type: int - A MsoDrawingType value. Mso drawing type.
upperLeftRow: int - Upper left row index.
top: int - Represents the vertical offset of Shape from its left row, in unit of pixel.
upperLeftColumn: int - Upper left column index.
left: int - Represents the horizontal offset of Shape from its left column, in unit of pixel.
height: int - Represents the height of Shape, in unit of pixel.
width: int - Represents the width of Shape, in unit of pixel.
Returns:
A Shape object.

addAutoShape

Shape addAutoShape(type, upperLeftRow, top, upperLeftColumn, left, height, width)
Adds a AutoShape to the worksheet. The type could not be Chart/Comment/Picuter/OleObject/Polygon/DialogBox
Parameters:
type: int - A AutoShapeType value. Auto shape type.
upperLeftRow: int - Upper left row index.
top: int - Represents the vertical offset of Shape from its left row, in unit of pixel.
upperLeftColumn: int - Upper left column index.
left: int - Represents the horizontal offset of Shape from its left column, in unit of pixel.
height: int - Represents the height of Shape, in unit of pixel.
width: int - Represents the width of Shape, in unit of pixel.
Returns:
A Shape object.

addAutoShapeInChart

Shape addAutoShapeInChart(type, top, left, height, width)
Adds a AutoShape to the chart. The type could not be Chart/Comment/Picuter/OleObject/Polygon/DialogBox
Parameters:
type: int - A AutoShapeType value. Auto shape type.
top: int - Represents the vertical offset of textbox from the upper left corner in units of 1/4000 of the chart area.
left: int - Represents the vertical offset of textbox from the upper left corner in units of 1/4000 of the chart area.
height: int - Represents the height of textbox, in units of 1/4000 of the chart area.
width: int - Represents the width of textbox, in units of 1/4000 of the chart area.
Returns:
Returns a shape objct.

addSvg

Picture addSvg(upperLeftRow, top, upperLeftColumn, left, height, width, svgData, compatibleImageData)
Adds svg image.
Parameters:
upperLeftRow: int - Upper left row index.
top: int - Represents the vertical offset of shape from its left row, in unit of pixel.
upperLeftColumn: int - Upper left column index.
left: int - The horizontal offset of shape from its left column, in unit of pixel.
height: int - The height of shape, in unit of pixel.
width: int - The width of shape, in unit of pixel.
svgData: byte[] - The svg image data.
compatibleImageData: byte[] - Converted image data from svg in order to be compatible with Excel 2016 or lower versions.
Returns:

addLinkedPicture

Picture addLinkedPicture(upperLeftRow, upperLeftColumn, height, width, sourceFullName)
Add a linked picture.
Parameters:
upperLeftRow: int - Upper left row index.
upperLeftColumn: int - Upper left column index.
height: int - The height of the shape. In unit of pixels
width: int - The width of the shape. In unit of pixels
sourceFullName: String - The path and name of the source file for the linked image
Returns:
Picture Picture object.

addOleObjectWithLinkedImage

OleObject addOleObjectWithLinkedImage(upperLeftRow, upperLeftColumn, height, width, sourceFullName)
Add a linked picture.
Parameters:
upperLeftRow: int - Upper left row index.
upperLeftColumn: int - Upper left column index.
height: int - The height of the shape. In unit of pixels
width: int - The width of the shape. In unit of pixels
sourceFullName: String - The path and name of the source file for the linked image
Returns:
Picture Picture object.

addOleObject

OleObject addOleObject(upperLeftRow, top, upperLeftColumn, left, height, width, imageData)
Parameters:
upperLeftRow: int -
top: int -
upperLeftColumn: int -
left: int -
height: int -
width: int -
imageData: byte[] -
Returns:

copyCommentsInRange

 copyCommentsInRange(shapes, ca, destRow, destColumn)
Copy all comments in the range.
Parameters:
shapes: ShapeCollection - The source shapes.
ca: CellArea - The source range.
destRow: int - The dest range start row.
destColumn: int - The dest range start column.

copyInRange

 copyInRange(sourceShapes, ca, destRow, destColumn, isContained)
Copy shapes in the range to destination range.
Parameters:
sourceShapes: ShapeCollection - Source shapes.
ca: CellArea - The source range.
destRow: int - The dest row index of the dest range.
destColumn: int - The dest column of the dest range.
isContained: boolean - Whether only copy the shapes which are contained in the range. If true,only copies the shapes in the range. Otherwise,it works as MS Office.

deleteInRange

 deleteInRange(ca)
Delete shapes in the range.Comment shapes will not be deleted.
Parameters:
ca: CellArea - The range.If the shapes are contained in the range, they will be removed.

deleteShape

 deleteShape(shape)
Delete a shape. If the shape is in the group or is a comment shape, it will not be deleted.
Parameters:
shape: Shape -

group

GroupShape group(groupItems)
Group the shapes. The shape in the groupItems should not be grouped. The shape must be in this Shapes collection.
Parameters:
groupItems: Shape[] - the group items.
Returns:
Return the group shape.

ungroup

 ungroup(group)
Ungroups the shape items. If the group shape is grouped by another group shape,nothing will be done.
Parameters:
group: GroupShape - The group shape.

removeAt

 removeAt(index)
Remove the shape.
Parameters:
index: int - The index of the shape.

remove

 remove(shape)
Remove the shape.
Parameters:
shape: Shape -

clear

 clear()
Clear all shapes.

updateSelectedValue

 updateSelectedValue()
Update the selected value by the value of the linked cell of the shapes.

iterator

Iterator iterator()

get

Object get(index)
Reserved for internal use.

contains

boolean contains(value)
Reserved for internal use.

indexOf

int indexOf(value)
Reserved for internal use.

addPictureFromBytes

 addPictureFromBytes(upperLeftRow, upperLeftColumn, lowerRightRow, lowerRightColumn, byte_array)
Adds a picture to the collection.
Parameters:
upperLeftRow: int - Upper left row index
upperLeftColumn: int - Upper left column index
lowerRightRow: int - Lower right row index
lowerRightColumn: int - Lower right column index
byte_array: bytes - The byte array
Returns:
Returns a Picture objct

Example:

import jpype
import asposecells
jpype.startJVM()
from asposecells.api import *

wb = Workbook(FileFormatType.XLSX)
with open('cells.png', 'rb') as pic:
    pic_bytes = pic.read()
    wb.getWorksheets().get(0).getShapes().addPictureFromBytes(2, 7, lowerRightRow=10, lowerRightColumn=10, byte_array=pic_bytes)
wb.save("wb.xlsx")

jpype.shutdownJVM()
				

addPictureFromBytes

 addPictureFromBytes(upperLeftRow, upperLeftColumn, byte_array, widthScale, heightScale)
Adds a picture to the collection.
Parameters:
upperLeftRow: int - Upper left row index
upperLeftColumn: int - Upper left column index
byte_array: bytes - The byte array
widthScale: int - Scale of image width, a percentage
heightScale: int - Scale of image height, a percentage
Returns:
Returns a Picture objct

Example:

import jpype
import asposecells
jpype.startJVM()
from asposecells.api import *

wb = Workbook(FileFormatType.XLSX)
with open('cells.png', 'rb') as pic:
    pic_bytes = pic.read()
    wb.getWorksheets().get(0).getShapes().addPictureFromBytes(2, 0, byte_array=pic_bytes, widthScale=200, heightScale=150)
wb.save("wb.xlsx")

jpype.shutdownJVM()
				

addPictureInChartFromBytes

 addPictureInChartFromBytes(top, left, byte_array, widthScale, heightScale)
Adds a picture to the chart.
Parameters:
top: int - Represents the vertical offset of shape from the upper left corner in units of 1/4000 of the chart area
left: int - Represents the horizontal offset of shape from the upper left corner in units of 1/4000 of the chart area
byte_array: bytes - The byte array
widthScale: int - Scale of image width, a percentage
heightScale: int - Scale of image height, a percentage
Returns:
Returns a Picture objct

Example:

import jpype
import asposecells
jpype.startJVM()
from asposecells.api import *

wb = Workbook('Book2.xlsx')
shapes = wb.getWorksheets().get("Chart").getCharts().get(0).getShapes()
with open('cells.png', 'rb') as pic:
    picture = shapes.addPictureInChartFromBytes(1, 1, pic.read(), 10, 5)
wb.save("wb.xlsx")

jpype.shutdownJVM()
				

See Also:
          Aspose.Cells Documentation - the home page for the Aspose.Cellss Product Documentation.
          Aspose.Cells Support Forum - our preferred method of support.