主题
形状
Shapes
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
文档中的所有形状对象集合
语法
表达式.ActiveDocument.Shapes
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 图形对象
const shapes = await app.ActiveDocument.Shapes
}
Count
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
形状对象的个数
语法
表达式.ActiveDocument.Shapes.Count
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取图形对象
const shapes = await app.ActiveDocument.Shapes
// 插入非嵌入式图片
await shapes.AddPicture({
FileName:
'https://img.qwps.cn/583546003_25a7bc59d95249c2a3c257fa369ca289?imageMogr2/thumbnail/180x180!', // 图片地址
LinkToFile: true,
SaveWithDocument: true,
Left: 10, // 图片距离左边位置
Top: 10, // 图片距离顶部位置
Width: 60, // 图片宽度
Height: 120 // 图片高度
})
// 获取所有图形数量
const count = await shapes.Count
console.log(count)
}
AddPicture()
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
插入非嵌入式图片
语法
表达式.ActiveDocument.Shapes.AddPicture({ FileName, LinkToFile, SaveWithDocument, Left, Top, Width, Height })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
FileName | String | 是 | 图片的路径和文件名 | |
LinkToFile | Boolean | 否 | 为 true 表示要将图片链接到创建它的文件,false 使图片文件的独立副本。默认值为 false | |
SaveWithDocument | Boolean | 否 | 为 true 要随文档一起保存的链接的图片。默认值为 false | |
Left | Number | 否 | 新图片的左边缘相对于绘图画布的位置,以磅为单位 | |
Top | Number | 否 | 新图片的上边缘相对于绘图画布的位置,以磅为单位 | |
Width | Number | 否 | 图片的宽度,以磅为单位 | |
Height | Number | 否 | 图片的高度,以磅为单位 |
返回值
返回一个 Shape 对象(WebOffice v4.1.1+ 支持)
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取图形对象
const shapes = await app.ActiveDocument.Shapes
// 插入非嵌入式图片
const shape = await shapes.AddPicture({
FileName:
'https://img.qwps.cn/583546003_25a7bc59d95249c2a3c257fa369ca289?imageMogr2/thumbnail/180x180!', // 图片地址
LinkToFile: true,
SaveWithDocument: true,
Left: 10, // 图片距离左边位置
Top: 10, // 图片距离顶部位置
Width: 60, // 图片宽度
Height: 120 // 图片高度
})
// 设置嵌入式图形对象的宽度
shape.Width = 200
}
Item()
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
形状对象集合的单个对象,返回 Shape
对象
语法
表达式.ActiveDocument.Shapes.Item(Index)
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Index | String | 是 | 第 Index 个图形 |
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取图形对象
const shapes = await app.ActiveDocument.Shapes
// 插入非嵌入式图片
await shapes.AddPicture({
FileName:
'https://img.qwps.cn/583546003_25a7bc59d95249c2a3c257fa369ca289?imageMogr2/thumbnail/180x180!', // 图片地址
LinkToFile: true,
SaveWithDocument: true,
Left: 10, // 图片距离左边位置
Top: 10, // 图片距离顶部位置
Width: 60, // 图片宽度
Height: 120 // 图片高度
})
// 获取第 1 个图形对象,返回 Shape 对象
const shape = await shapes.Item(1)
}
Item(Index).Data
JSSDK: v1.1.14+、WebOffice v3.1.1+ 支持
异步返回文档里面的图片的 Base64 数据
语法
表达式.ActiveDocument.Shapes.Item(Index).Data
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取图形对象
const shapes = await app.ActiveDocument.Shapes
// 插入非嵌入式图片
await shapes.AddPicture({
FileName:
'https://img.qwps.cn/583546003_25a7bc59d95249c2a3c257fa369ca289?imageMogr2/thumbnail/180x180!', // 图片地址
LinkToFile: true,
SaveWithDocument: true,
Left: 10, // 图片距离左边位置
Top: 10, // 图片距离顶部位置
Data: 60, // 图片宽度
Height: 120 // 图片高度
})
// 获取第 1 个图形对象
const shape = await shapes.Item(1)
// 异步返回文档里面的图片的 Base64 数据
const Data = await shape.Data
console.log(Data)
}
Item(Index).Height
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
单个图形对象的高度
语法
表达式.ActiveDocument.Shapes.Item(Index).Height
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取图形对象
const shapes = await app.ActiveDocument.Shapes
// 插入非嵌入式图片
await shapes.AddPicture({
FileName:
'https://img.qwps.cn/583546003_25a7bc59d95249c2a3c257fa369ca289?imageMogr2/thumbnail/180x180!', // 图片地址
LinkToFile: true,
SaveWithDocument: true,
Left: 10, // 图片距离左边位置
Top: 10, // 图片距离顶部位置
Width: 60, // 图片宽度
Height: 120 // 图片高度
})
// 获取第 1 个图形对象
const shape = await shapes.Item(1)
// 设置第 1 个图形的高度
shape.Height = 240
}
Item(Index).OLEFormat
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
返回一个 OLEFormat 对象,该对象表示指定的内嵌形状的 OLE 特征(而不是链接)。此为只读属性
语法
表达式.ActiveDocument.Shapes.Item(Index).OLEFormat
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取图形对象
const shapes = await app.ActiveDocument.Shapes
// 插入非嵌入式图片
await shapes.AddPicture({
FileName:
'https://img.qwps.cn/583546003_25a7bc59d95249c2a3c257fa369ca289?imageMogr2/thumbnail/180x180!', // 图片地址
LinkToFile: true,
SaveWithDocument: true,
Left: 10, // 图片距离左边位置
Top: 10, // 图片距离顶部位置
Width: 60, // 图片宽度
Height: 120 // 图片高度
})
// 获取第 1 个图形对象
const shape = await shapes.Item(1)
// 返回一个 OLEFormat 对象,该对象表示指定的内嵌形状的 OLE 特征(而不是链接)。此为只读属性
const OLEFormat = await shape.OLEFormat
}
Item(Index).OriginData
JSSDK: v1.1.14+、WebOffice v3.1.1+ 支持
异步返回图片 原图 的 Base64 数据
语法
表达式.ActiveDocument.Shapes.Item(Index).OriginData
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取图形对象
const shapes = await app.ActiveDocument.Shapes
// 插入非嵌入式图片
await shapes.AddPicture({
FileName:
'https://img.qwps.cn/583546003_25a7bc59d95249c2a3c257fa369ca289?imageMogr2/thumbnail/180x180!', // 图片地址
LinkToFile: true,
SaveWithDocument: true,
Left: 10, // 图片距离左边位置
Top: 10, // 图片距离顶部位置
OriginData: 60, // 图片宽度
Height: 120 // 图片高度
})
// 获取第 1 个图形对象
const shape = await shapes.Item(1)
// 异步返回图片 原图 的 Base64 数据
const OriginData = await shape.OriginData
console.log(OriginData)
}
Item(Index).Width
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
单个图形对象的宽度
语法
表达式.ActiveDocument.Shapes.Item(Index).Width
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取图形对象
const shapes = await app.ActiveDocument.Shapes
// 插入非嵌入式图片
await shapes.AddPicture({
FileName:
'https://img.qwps.cn/583546003_25a7bc59d95249c2a3c257fa369ca289?imageMogr2/thumbnail/180x180!', // 图片地址
LinkToFile: true,
SaveWithDocument: true,
Left: 10, // 图片距离左边位置
Top: 10, // 图片距离顶部位置
Width: 60, // 图片宽度
Height: 120 // 图片高度
})
// 获取第 1 个图形对象
const shape = await shapes.Item(1)
// 设置第 1 个图形的宽度
shape.Width = 200
}
Item(Index).WrapFormat
JSSDK: v1.1.15+、WebOffice v4.1.1+ 支持
设置文字环绕模式
语法
表达式.ActiveDocument.Shapes.Item(Index).WrapFormat = WdWrapType
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
WdWrapType | Enum | 是 | 指定如何在形状周围环绕文字,可参照 Enum.WdWrapType |
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取图形对象
const shapes = await app.ActiveDocument.Shapes
// 插入非嵌入式图片
await shapes.AddPicture({
FileName:
'https://img.qwps.cn/583546003_25a7bc59d95249c2a3c257fa369ca289?imageMogr2/thumbnail/180x180!', // 图片地址
LinkToFile: true,
SaveWithDocument: true,
Left: 10, // 图片距离左边位置
Top: 10, // 图片距离顶部位置
WrapFormat: 60, // 图片宽度
Height: 120 // 图片高度
})
// 获取第 1 个图形对象
const shape = await shapes.Item(1)
// 设置文字环绕模式
shape.WrapFormat = app.Enum.WdWrapType.wdWrapSquare
}
Item(Index).AlignShapeTo()
JSSDK: v1.1.15+、WebOffice v4.1.1+ 支持
将非嵌入式图片移动到特定位置,并用图片的某个点对齐这个位置
语法
表达式.ActiveDocument.Shapes.Item(Index).AlignShapeTo({ Gcp, BasePoint })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Gcp | Number | 是 | 正文的位置 | |
BasePoint | Enum | 是 | 指定如何在形状周围环绕文字,可参照 Enum.BasePoint |
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取图形对象
const shapes = await app.ActiveDocument.Shapes
// 插入非嵌入式图片
await shapes.AddPicture({
FileName:
'https://img.qwps.cn/583546003_25a7bc59d95249c2a3c257fa369ca289?imageMogr2/thumbnail/180x180!', // 图片地址
LinkToFile: true,
SaveWithDocument: true,
Left: 10, // 图片距离左边位置
Top: 10, // 图片距离顶部位置
Width: 60, // 图片宽度
Height: 120 // 图片高度
})
// 获取第 1 个图形对象
const shape = await shapes.Item(1)
// 将非嵌入式图片移动到特定位置,并用图片的某个点对齐这个位置
await shape.AlignShapeTo(1, app.Enum.BasePoint.leftTop)
}
Item(Index).ConvertToInlineShape()
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
非嵌入式对象转换成嵌入式对象
语法
表达式.ActiveDocument.Shapes.Item(Index).ConvertToInlineShape()
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取图形对象
const shapes = await app.ActiveDocument.Shapes
// 插入非嵌入式图片
await shapes.AddPicture({
FileName:
'https://img.qwps.cn/583546003_25a7bc59d95249c2a3c257fa369ca289?imageMogr2/thumbnail/180x180!', // 图片地址
LinkToFile: true,
SaveWithDocument: true,
Left: 10, // 图片距离左边位置
Top: 10, // 图片距离顶部位置
Width: 60, // 图片宽度
Height: 120 // 图片高度
})
// 获取第 1 个图形对象
const shape = await shapes.Item(1)
// 将第 1 个图形对象转换成嵌入式对象
await shape.ConvertToInlineShape()
}
Item(Index).Delete()
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
删除单个图形
语法
表达式.ActiveDocument.Shapes.Item(Index).Delete()
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取图形对象
const shapes = await app.ActiveDocument.Shapes
// 插入非嵌入式图片
await shapes.AddPicture({
FileName:
'https://img.qwps.cn/583546003_25a7bc59d95249c2a3c257fa369ca289?imageMogr2/thumbnail/180x180!', // 图片地址
LinkToFile: true,
SaveWithDocument: true,
Left: 10, // 图片距离左边位置
Top: 10, // 图片距离顶部位置
Width: 60, // 图片宽度
Height: 120 // 图片高度
})
// 获取第 1 个图形对象
const shape = await shapes.Item(1)
// 删除单个图形
await shape.Delete()
}
Item(Index).IncrementLeft()
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
将指定形状水平移动指定的磅数
语法
表达式.ActiveDocument.Shapes.Item(Index).IncrementLeft(Increment)
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Increment | Number | 是 | 指定形状水平移动的距离,以磅为单位。为正值时将形状右移;为负值时将形状左移 |
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取图形对象
const shapes = await app.ActiveDocument.Shapes
// 插入非嵌入式图片
await shapes.AddPicture({
FileName:
'https://img.qwps.cn/583546003_25a7bc59d95249c2a3c257fa369ca289?imageMogr2/thumbnail/180x180!', // 图片地址
LinkToFile: true,
SaveWithDocument: true,
Left: 10, // 图片距离左边位置
Top: 10, // 图片距离顶部位置
Width: 60, // 图片宽度
Height: 120 // 图片高度
})
// 获取第 1 个图形对象
const shape = await shapes.Item(1)
// 将第 1 个图形往右移动 30 磅
await shape.IncrementLeft(30)
}
Item(Index).IncrementTop()
JSSDK: v1.1.10+、WebOffice v1.67.1+ 支持
将指定形状垂直移动指定的磅数
语法
表达式.ActiveDocument.Shapes.Item(Index).IncrementTop(Increment)
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
Increment | Number | 是 | 指定形状水平移动的距离,以磅为单位。为正值时将形状右移;为负值时将形状左移 |
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取图形对象
const shapes = await app.ActiveDocument.Shapes
// 插入非嵌入式图片
await shapes.AddPicture({
FileName:
'https://img.qwps.cn/583546003_25a7bc59d95249c2a3c257fa369ca289?imageMogr2/thumbnail/180x180!', // 图片地址
LinkToFile: true,
SaveWithDocument: true,
Left: 10, // 图片距离左边位置
Top: 10, // 图片距离顶部位置
Width: 60, // 图片宽度
Height: 120 // 图片高度
})
// 获取第 1 个图形对象
const shape = await shapes.Item(1)
// 将第 1 个图形往下移动 30 磅
await shape.IncrementTop(30)
}
Item(Index).Select()
JSSDK: v1.1.10+、WebOffice v2.3.1+ 支持
选中单个图形对象
语法
表达式.ActiveDocument.Shapes.Item(Index).Select()
表达式:文档类型应用对象
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取图形对象
const shapes = await app.ActiveDocument.Shapes
// 插入单个图片
await shapes.AddPicture({
FileName:
'https://img.qwps.cn/583546003_25a7bc59d95249c2a3c257fa369ca289?imageMogr2/thumbnail/180x180!', // 图片路径
LinkToFile: false,
SaveWithDocument: false
})
// 获取第 1 个图形对象
const shape = await shapes.Item(1)
// 选中单个图形对象
await shape.Select()
}
Item(Index).ZOrder()
JSSDK: v1.1.15+、WebOffice v4.1.1+ 支持
选中单个图形对象
语法
表达式.ActiveDocument.Shapes.Item(Index).ZOrder({ ZOrderCmd })
表达式:文档类型应用对象
参数
属性 | 数据类型 | 默认值 | 必填 | 说明 |
---|---|---|---|---|
ZOrderCmd | Enum | 是 | 指定要将形状移动到的相对于其他形状的 z-index 位置,可参照 Enum.ZOrderCmd |
示例
//@file=base.docx
async function example() {
await instance.ready()
const app = instance.Application
// 获取图形对象
const shapes = await app.ActiveDocument.Shapes
// 插入非嵌入式图片
await shapes.AddPicture({
FileName:
'https://img.qwps.cn/583546003_25a7bc59d95249c2a3c257fa369ca289?imageMogr2/thumbnail/180x180!', // 图片地址
LinkToFile: true,
SaveWithDocument: true,
Left: 10, // 图片距离左边位置
Top: 10, // 图片距离顶部位置
ZOrder: 60, // 图片宽度
Height: 120 // 图片高度
})
// 获取第 1 个图形对象
const shape = await shapes.Item(1)
// 指定要将形状移动到的相对于其他形状的 z-index 位置
shape.ZOrder(app.Enum.ZOrderCmd.bringInFrontOfText)
}