[]
↳ PictureShape
• new PictureShape(worksheet
, name
, src
, left?
, top?
, width?
, height?
)
名称 | 类型 | 描述 |
---|---|---|
worksheet |
Worksheet |
形状的宿主表单 |
name |
string |
图片形状的名称。如果留空,将生成一个唯一的名称 |
src |
string |
图片的源文件路径 |
left? |
number |
图片形状的x坐标位置 |
top? |
number |
图片形状的y坐标位置 |
width? |
number |
图片形状的宽度。如果留空,将使用与图片原始宽度相同的默认值 |
height? |
number |
图片形状的高度。如果留空,将使用与图片原始高度相同的默认值 |
▸ allowMove(value?
): any
获取或设置是否禁用移动形状
代码示例
var heart = sheet.shapes.add("Shape1", GC.Spread.Sheets.Shapes.AutoShapeType.heart, 100, 60, 200, 160);
var state = heart.allowMove();
heart.allowMove(!state);
属性名 | 类型 | 说明 |
---|---|---|
value? |
boolean |
是否禁用移动形状的设置 |
any
如果未设置任何值,则返回是否禁用移动形状的设置
▸ allowResize(value?
): any
获取或设置形状的调整大小模式。
代码示例
var heart = sheet.shapes.add("Shape1", GC.Spread.Sheets.Shapes.AutoShapeType.heart, 100, 60, 200, 160);
var state = heart.allowResize();
heart.allowResize(GC.Spread.Sheets.Shapes.ResizeMode.aspect);
属性名 | 类型 | 说明 |
---|---|---|
value? |
boolean | ResizeMode |
是否禁用调整形状大小的设置 |
any
如果未设置任何值,则返回是否禁用调整形状大小的设置
▸ allowRotate(value?
): any
获取或设置是否禁用旋转形状
代码示例
var heart = sheet.shapes.add("Shape1", GC.Spread.Sheets.Shapes.AutoShapeType.heart, 100, 60, 200, 160);
var state = heart.allowRotate();
heart.allowRotate(!state);
属性名 | 类型 | 说明 |
---|---|---|
value? |
boolean |
是否禁用旋转形状的设置 |
any
如果未设置任何值,则返回是否禁用旋转形状的设置
▸ alt(value?
): any
获取或设置形状的可选文本
代码示例
var heart = sheet.shapes.add("Shape1", GC.Spread.Sheets.Shapes.AutoShapeType.heart, 100, 60, 200, 160);
heart.alt("A heart shape");
属性名 | 类型 | 说明 |
---|---|---|
value? |
string |
形状的可选文本 |
any
形状的可选文本
▸ canPrint(value?
): any
获取或设置此形状是否可打印
代码示例
var heart = sheet.shapes.add("Shape1", GC.Spread.Sheets.Shapes.AutoShapeType.heart, 100, 60, 200, 160);
var state = heart.canPrint(); // Get whether the shape is printable, defaulat value is true.
workbook.print(); // The heart shape is printed.
heart.canPrint(false);
workbook.print(); // The heart shape is not printed.
属性名 | 类型 |
---|---|
value? |
boolean |
any
如果未设置任何值,则返回此形状是否可打印
▸ dynamicMove(value?
): any
获取或设置在隐藏或显示、调整大小或移动行或列时形状是否移动
代码示例
var heart = sheet.shapes.add("Shape1", GC.Spread.Sheets.Shapes.AutoShapeType.heart, 100, 60, 200, 160);
var state = heart.dynamicMove();
heart.dynamicMove(!state);
属性名 | 类型 | 说明 |
---|---|---|
value? |
boolean |
该值指示在隐藏或显示、调整大小或移动行或列时形状是否移动 |
any
如果未设置任何值,则返回此形状是否动态移动
▸ dynamicSize(value?
): any
获取或设置在隐藏或显示、调整大小或移动行或列时形状的大小是否改变
代码示例
var heart = sheet.shapes.add("Shape1", GC.Spread.Sheets.Shapes.AutoShapeType.heart, 100, 60, 200, 160);
var state = heart.dynamicSize();
heart.dynamicSize(!state);
属性名 | 类型 | 说明 |
---|---|---|
value? |
boolean |
该值指示在隐藏或显示、调整大小或移动行或列时形状的大小是否改变 |
any
如果未设置任何值,则返回此形状是否动态更改大小
▸ endColumn(value?
): any
获取或设置形状位置的结束列索引
代码示例
var heart = sheet.shapes.add("Shape1", GC.Spread.Sheets.Shapes.AutoShapeType.heart, 100, 60, 200, 160);
var n = heart.endColumn();
heart.endColumn(n + 1);
属性名 | 类型 | 说明 |
---|---|---|
value? |
number |
形状位置的结束列索引 |
any
如果未设置任何值,则返回形状位置的结束列索引
▸ endColumnOffset(value?
): any
获取或设置相对于形状末端的偏移量
代码示例
var heart = sheet.shapes.add("Shape1", GC.Spread.Sheets.Shapes.AutoShapeType.heart, 100, 60, 200, 160);
var n = heart.endColumnOffset();
heart.endColumnOffset(0);
属性名 | 类型 | 说明 |
---|---|---|
value? |
number |
相对于形状末端的偏移量 |
any
如果未设置任何值,则返回相对于形状末端的偏移量
▸ endRow(value?
): any
获取或设置形状位置的末端行索引
代码示例
var heart = sheet.shapes.add("Shape1", GC.Spread.Sheets.Shapes.AutoShapeType.heart, 100, 60, 200, 160);
var n = heart.endRow();
heart.endRow(n + 2);
属性名 | 类型 | 说明 |
---|---|---|
value? |
number |
形状位置的末端行索引 |
any
如果未设置任何值,则返回形状位置的末端行索引
▸ endRowOffset(value?
): any
获取或设置相对于形状末端的偏移量
代码示例
var heart = sheet.shapes.add("Shape1", GC.Spread.Sheets.Shapes.AutoShapeType.heart, 100, 60, 200, 160);
var n = heart.endRowOffset();
heart.endRowOffset(0);
属性名 | 类型 | 说明 |
---|---|---|
value? |
number |
相对于形状末端的偏移量 |
any
如果未设置任何值,则返回相对于形状末端的偏移量
▸ geometryType(value?
): void
| AutoShapeType
Gets or sets the geometry type of the picture.
代码示例
//This sample sets geometry type for the picture shape.
var shape = sheet.shapes.addPictureShape("Picture 1", "data:image/svg+xml;base64.....", 100, 50, 100, 100);
shape.geometryType(GC.Spread.Sheets.Shapes.AutoShapeType.oval);
属性名 | 类型 |
---|---|
value? |
AutoShapeType |
void
| AutoShapeType
If no value is set, returns the current geometry type of the picture.
▸ getFormula(path
): string
通过路径从形状中获取公式字符串
代码示例
sheet.name("Sheet1");
sheet.setValue(0, 1, 150);
var shape1 = sheet.shapes.add("myShape1", GC.Spread.Sheets.Shapes.AutoShapeType.rectangle, 100, 100, 200, 200);
shape1.setFormula("x", "=Sheet1!B1");
shape1.getFormula("x");//返回 "=Sheet1!B1"
属性名 | 类型 | 说明 |
---|---|---|
path |
string |
可以接收公式字符串的路径,可以是"x","y","width","height"之一 |
string
通过路径从形状返回公式字符串
▸ getOriginalHeight(): undefined
| number
获取图片的原始高度
代码示例
sheet.bind(GC.Spread.Sheets.Events.ShapeChanged, function(s, e) {
if (e.propertyName === "originalSize") {
// Set the size of the picture shape to the original size of the image.
e.shape.width(e.shape.getOriginalWidth());
e.shape.height(e.shape.getOriginalHeight());
}
});
var src = "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/Pjxzdmcgd2lkdGg9IjEwMCIgaGVpZ2h0PSIxMDAiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48Y2lyY2xlIGN4PSI1MCIgY3k9IjUwIiByPSI1MCIgZmlsbD0iYmx1ZSIvPjxwYXRoIGQ9Ik0xMCw1MCBRNDAsMzAgNTAsNTAgVDkwLDUwIiBmaWxsPSJub25lIiBzdHJva2U9Im9yYW5nZSIgc3Ryb2tlLXdpZHRoPSI1Ii8+PC9zdmc+";
var shape = sheet.shapes.addPictureShape("Picture 1", src, 100, 50, 200, 200);
undefined
| number
返回图像的原始高度,如果没有图像或图像未加载完成,则返回 undefiend
▸ getOriginalWidth(): undefined
| number
获取图片的原始宽度
代码示例
sheet.bind(GC.Spread.Sheets.Events.ShapeChanged, function(s, e) {
if (e.propertyName === "originalSize") {
// Set the size of the picture shape to the original size of the image.
e.shape.width(e.shape.getOriginalWidth());
e.shape.height(e.shape.getOriginalHeight());
}
});
var src = "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/Pjxzdmcgd2lkdGg9IjEwMCIgaGVpZ2h0PSIxMDAiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48Y2lyY2xlIGN4PSI1MCIgY3k9IjUwIiByPSI1MCIgZmlsbD0iYmx1ZSIvPjxwYXRoIGQ9Ik0xMCw1MCBRNDAsMzAgNTAsNTAgVDkwLDUwIiBmaWxsPSJub25lIiBzdHJva2U9Im9yYW5nZSIgc3Ryb2tlLXdpZHRoPSI1Ii8+PC9zdmc+";
var shape = sheet.shapes.addPictureShape("Picture 1", src, 100, 50, 200, 200);
undefined
| number
返回图像的原始宽度,如果没有图像或图像未加载完成,则返回 undefiend
▸ height(value?
): any
获取或设置形状的高度
代码示例
var heart = sheet.shapes.add("Shape1", GC.Spread.Sheets.Shapes.AutoShapeType.heart, 100, 60, 200, 160);
var n = heart.height();
heart.height(n + 50);
属性名 | 类型 | 说明 |
---|---|---|
value? |
string | number |
由数字或公式的形状高度(以=开头)可以获取数字值 |
any
如果未设置任何值,则返回形状的高度
▸ hyperlink(value?
): void
| IHyperlink
获取或设置形状的超链接
代码示例
var shape = sheet.shapes.add("myShape", GC.Spread.Sheets.Shapes.AutoShapeType.rectangle, 62 * 9, 0, 200, 200);
shape.hyperlink({url: "http://www.grapecity.com", target: 0, tooltip: 'goes to grapecity'});
属性名 | 类型 |
---|---|
value? |
IHyperlink |
void
| IHyperlink
如果未设置值,则返回形状的当前超链接设置
▸ isLocked(value?
): any
获取或设置此形状是否被锁定
代码示例
var heart = sheet.shapes.add("Shape1", GC.Spread.Sheets.Shapes.AutoShapeType.heart, 100, 60, 200, 160);
var state = heart.isLocked();
heart.isLocked(!state);
属性名 | 类型 | 说明 |
---|---|---|
value? |
boolean |
此形状是否被锁定的值 |
any
如果未设置任何值,则返回此形状是否被锁定
▸ isSelected(value?
): any
获取或设置是否选择此形状
代码示例
var heart = sheet.shapes.add("Shape1", GC.Spread.Sheets.Shapes.AutoShapeType.heart, 100, 60, 200, 160);
var state = heart.isSelected();
heart.isSelected(!state);
属性名 | 类型 | 说明 |
---|---|---|
value? |
boolean |
是否选择此形状的值 |
any
如果未设置任何值,则返回是否选择此形状
▸ isVisible(value?
): any
获取或设置此形状是否可见
代码示例
var heart = sheet.shapes.add("Shape1", GC.Spread.Sheets.Shapes.AutoShapeType.heart, 100, 60, 200, 160);
var state = heart.isVisible();
heart.isVisible(!state);
属性名 | 类型 | 说明 |
---|---|---|
value? |
boolean |
此形状是否可见的值 |
any
如果未设置任何值,则返回此形状是否可见
▸ name(value?
): any
获取或设置形状的名称
代码示例
var shape1 = sheet.shapes.add("myShape1", GC.Spread.Sheets.Shapes.AutoShapeType.rectangle, 62 * 9, 0, 200, 200);
var shape2 = sheet.shapes.add("myShape2", GC.Spread.Sheets.Shapes.AutoShapeType.rectangle, 20, 20, 200, 200);
var shape = sheet.shapes.group([shape1, shape2]);
shape.name("myGroupShape");
var shapeName = shape.name();
属性名 | 类型 | 说明 |
---|---|---|
value? |
string |
形状的名称 |
any
如果未设置任何值,则返回形状的名称
▸ pictureFormat(value?
): void
| IPictureFormat
获取或设置图片的格式。
代码示例
//This sample sets format for the picture shape.
var shape = sheet.shapes.addPictureShape("Picture 1", "data:image/svg+xml;base64.....", 100, 50, 100, 100);
shape.pictureFormat({ grayscale: true, crop: { left: 0.25, right: 0.25, top: 0.25, bottom: 0.25 }});
属性名 | 类型 |
---|---|
value? |
IPictureFormat |
void
| IPictureFormat
如果未设置值,则返回图片的当前格式。
▸ rotate(value?
): number
| void
获取或设置图片形状的旋转角度(单位为度)。
代码示例
var shape = sheet.shapes.addPictureShape("Picture 1", "data:image/svg+xml;base64.....", 100, 50, 100, 100);
var n = shape.rotate();
shape.rotate(n + 30);
属性名 | 类型 | 说明 |
---|---|---|
value? |
string | number |
由数字或公式(=开头)指定的图片形状(单位为度)旋转的角度可以得到一个数值 |
number
| void
如果未设置值,则返回图片形状的旋转角度(单位为度)。
▸ setFormula(path
, formula
): void
通过路径将公式字符串设置为形状
代码示例
sheet.name("Sheet1");
sheet.setValue(0, 1, 150);
var shape1 = sheet.shapes.add("myShape1", GC.Spread.Sheets.Shapes.AutoShapeType.rectangle, 100, 100, 200, 200);
shape1.setFormula("x", "=Sheet1!B1");
属性名 | 类型 | 说明 |
---|---|---|
path |
string |
可以接收公式字符串的路径,可以是"x","y","width","height"之一 |
formula |
string |
公式字符串 |
void
▸ showHandle(value?
): boolean
| void
获取或设置是否显示形状句柄
代码示例
var heart = sheet.shapes.add("Shape1", GC.Spread.Sheets.Shapes.AutoShapeType.heart, 100, 60, 200, 160);
var state = heart.showHandle();
heart.showHandle(!state);
属性名 | 类型 | 说明 |
---|---|---|
value? |
boolean |
是否显示形状句柄的设置 |
boolean
| void
如果未设置任何值,则返回是否显示形状句柄的设置
▸ src(value?
): string
| void
获取或设置图片的src
代码示例
var dataURL = "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/Pjxzdmcgd2lkdGg9IjEwMCIgaGVpZ2h0PSIxMDAiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48Y2lyY2xlIGN4PSI1MCIgY3k9IjUwIiByPSI1MCIgZmlsbD0iYmx1ZSIvPjxwYXRoIGQ9Ik0xMCw1MCBRNDAsMzAgNTAsNTAgVDkwLDUwIiBmaWxsPSJub25lIiBzdHJva2U9Im9yYW5nZSIgc3Ryb2tlLXdpZHRoPSI1Ii8+PC9zdmc+";
var shape = sheet.shapes.addPictureShape("Picture 1", dataURL, 100, 50, 200, 200);
// get current image source, the src is equal to dataURL.
var src = shape.src();
// set new image source.
shape.src("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/Pjxzdmcgd2lkdGg9IjEwMCIgaGVpZ2h0PSIxMDAiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48Y2lyY2xlIGN4PSI1MCIgY3k9IjUwIiByPSI1MCIgZmlsbD0iYmxhY2siLz48cGF0aCBkPSJNMTAsNTAgUTQwLDMwIDUwLDUwIFQ5MCw1MCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSJvcmFuZ2UiIHN0cm9rZS13aWR0aD0iNSIvPjwvc3ZnPg==");
属性名 | 类型 |
---|---|
value? |
string |
string
| void
如果未设置值,则返回图片的当前 src。
▸ startColumn(value?
): any
获取或设置形状位置的起始列索引
代码示例
var heart = sheet.shapes.add("Shape1", GC.Spread.Sheets.Shapes.AutoShapeType.heart, 100, 60, 200, 160);
var n = heart.startColumn();
heart.startColumn(n + 2);
属性名 | 类型 | 说明 |
---|---|---|
value? |
number |
形状位置的起始列索引 |
any
如果未设置任何值,则返回形状位置的起始列索引
▸ startColumnOffset(value?
): any
获取或设置相对于图形开始列的偏移量
代码示例
var heart = sheet.shapes.add("Shape1", GC.Spread.Sheets.Shapes.AutoShapeType.heart, 100, 60, 200, 160);
var n = heart.startColumnOffset();
heart.startColumnOffset(0);
属性名 | 类型 | 说明 |
---|---|---|
value? |
number |
相对于形状的起始列的偏移量 |
any
如果未设置任何值,则返回相对于图形起始列的偏移量
▸ startRow(value?
): any
获取或设置形状位置的起始行索引
代码示例
var heart = sheet.shapes.add("Shape1", GC.Spread.Sheets.Shapes.AutoShapeType.heart, 100, 60, 200, 160);
var n = heart.startRow();
heart.startRow(n + 2);
属性名 | 类型 | 说明 |
---|---|---|
value? |
number |
形状位置的起始行索引 |
any
如果未设置任何值,则返回形状的起始行索引
▸ startRowOffset(value?
): any
获取或设置相对于图形起始行的偏移量
代码示例
var heart = sheet.shapes.add("Shape1", GC.Spread.Sheets.Shapes.AutoShapeType.heart, 100, 60, 200, 160);
var n = heart.startRowOffset();
heart.startRowOffset(0);
属性名 | 类型 | 说明 |
---|---|---|
value? |
number |
相对于图形起始行的偏移量 |
any
如果未设置任何值,则返回相对于图形起始行的偏移量
▸ style(value?
): any
获取或设置图片形状的样式。
代码示例
//本示例设置形状的样式
var shape = sheet.shapes.addPictureShape("Picture 1", "data:image/svg+xml;base64.....", 100, 50, 100, 100);
var oldStyle = shape.style();
oldStyle.fill.color = "red";
oldStyle.line.color = "green";
oldStyle.line.lineStyle = GC.Spread.Sheets.Shapes.PresetLineDashStyle.dashDot;
oldStyle.line.width = 5;
oldStyle.line.capType = GC.Spread.Sheets.Shapes.LineCapStyle.square;
oldStyle.line.joinType = GC.Spread.Sheets.Shapes.LineJoinStyle.miter;
oldStyle.line.transparency = 0.5;
shape.style(oldStyle);
属性名 | 类型 | 说明 |
---|---|---|
value? |
ShapeStyle |
形状样式 |
any
如果未设置值,则返回形状的当前样式
▸ toImageSrc(): string
获取 Base64 字符串类型的形状 Image src。
代码示例
let shapeImageSrc = sheet.shapes.all()[0].toImageSrc();
string
返回形状 Image Base64 src 字符串。
▸ width(value?
): any
获取或设置形状的宽度
代码示例
var heart = sheet.shapes.add("Shape1", GC.Spread.Sheets.Shapes.AutoShapeType.heart, 100, 60, 200, 160);
var n = heart.width();
heart.width(n + 50);
属性名 | 类型 | 说明 |
---|---|---|
value? |
string | number |
由数字或公式的形状的宽度(以=开头)可以获取数字值 |
any
如果未设置任何值,则返回形状的宽度
▸ x(value?
): number
| void
获取或设置形状的水平位置
代码示例
var heart = sheet.shapes.add("Shape1", GC.Spread.Sheets.Shapes.AutoShapeType.heart, 100, 60, 200, 160);
var n = heart.x();
heart.x(n + 50);
属性名 | 类型 | 说明 |
---|---|---|
value? |
string | number |
由数字或公式的形状的水平位置(以=开头)可以获取数字值 |
number
| void
如果未设置任何值,则返回形状的水平位置
▸ y(value?
): any
获取或设置形状的垂直位置
代码示例
var heart = sheet.shapes.add("Shape1", GC.Spread.Sheets.Shapes.AutoShapeType.heart, 100, 60, 200, 160);
var n = heart.y();
heart.y(n + 50);
属性名 | 类型 | 说明 |
---|---|---|
value? |
string | number |
由数字或公式的形状的垂直位置(以=开头)可以获取数字值 |
any
如果未设置任何值,则返回形状的垂直位置