图形

本文介绍使用文字文档时如何获取图形对象、图形个数、插入图片等。

获取图形对象

获取文档中所有图形对象的集合。

  • 语法

    表达式.ActiveDocument.Shapes

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
      
      //获取图形对象
      const shapes = await app.ActiveDocument.Shapes;
    }

插入图片

插入非嵌入式图片。

  • 语法:

    表达式.ActiveDocument.Shapes.AddPicture({ FileName, LinkToFile, SaveWithDocument, Left, Top, Width, Height })

    表达式:文档类型应用对象

  • 参数

    属性

    数据类型

    是否必填

    描述

    FileName

    String

    图片的路径和文件名。

    LinkToFile

    Boolean

    图片是否链接到文件。取值范围如下:

    • true:将图片链接到创建它的文件。

    • false(默认):使图片文件成为独立副本。

    SaveWithDocument

    Boolean

    图片是否随文档保存。取值范围如下:

    • true:链接的图片随文档一起保存。

    • false(默认):链接的图片不随文档一起保存。

    Left

    Number

    新图片的左边缘相对于绘图画布的位置,以磅为单位。

    Top

    Number

    新图片的上边缘相对于绘图画布的位置,以磅为单位。

    Width

    Number

    图片的宽度,以磅为单位。

    Height

    Number

    图片的高度,以磅为单位。

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
      
      //获取图形对象
      const shapes = await app.ActiveDocument.Shapes;
    
      //插入非嵌入式图片
      await shapes.AddPicture({
        FileName: 'https://example.com/a.jpg', //图片地址
        LinkToFile: true,
        SaveWithDocument: true,
        Left: 10, //图片距离左边位置
        Top: 10, //图片距离顶部位置
        Width: 60, //图片宽度
        Height: 120, //图片高度
      });
    }

获取图形个数

获取图形对象的个数。

  • 语法

    表达式.ActiveDocument.Shapes.Count

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
      
      //获取图形对象
      const shapes = await app.ActiveDocument.Shapes;
    
      //插入非嵌入式图片
      await shapes.AddPicture({
        FileName: 'https://example.com/a.jpg', //图片地址
        LinkToFile: true,
        SaveWithDocument: true,
        Left: 10, //图片距离左边位置
        Top: 10, //图片距离顶部位置
        Width: 60, //图片宽度
        Height: 120, //图片高度
      });
    
      //获取所有图形数量
      const count = await shapes.Count;
      console.log(count);
    }

单个图形

获取单个图形对象

获取图形对象集合的单个对象。

  • 语法

    表达式.ActiveDocument.Shapes.Item(Index)

    表达式:文档类型应用对象

  • 参数

    属性

    数据类型

    是否必填

    描述

    Index

    String

    第Index个图形。

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
      
      //获取图形对象
      const shapes = await app.ActiveDocument.Shapes;
    
      //插入非嵌入式图片
      await shapes.AddPicture({
        FileName: 'https://example.com/a.jpg', //图片地址
        LinkToFile: true,
        SaveWithDocument: true,
        Left: 10, //图片距离左边位置
        Top: 10, //图片距离顶部位置
        Width: 60, //图片宽度
        Height: 120, //图片高度
      });
    
      //获取第1个图形对象
      const shape = await shapes.Item(1);
    }

图形宽度

设置单个图形对象的宽度。

  • 语法

    表达式.ActiveDocument.Shapes.Item(Index).Width

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
      
      //获取图形对象
      const shapes = await app.ActiveDocument.Shapes;
    
      //插入非嵌入式图片
      await shapes.AddPicture({
        FileName: 'https://example.com/a.jpg', //图片地址
        LinkToFile: true,
        SaveWithDocument: true,
        Left: 10, //图片距离左边位置
        Top: 10, //图片距离顶部位置
        Width: 60, //图片宽度
        Height: 120, //图片高度
      });
    
      //获取第1个图形对象
      const shape = await shapes.Item(1);
    
      //设置第1个图形的宽度
      shape.Width = 200;
    }

图形高度

设置单个图形对象的高度。

  • 语法

    表达式.ActiveDocument.Shapes.Item(Index).Height

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
      
      //获取图形对象
      const shapes = await app.ActiveDocument.Shapes;
    
      //插入非嵌入式图片
      await shapes.AddPicture({
        FileName: 'https://example.com/a.jpg', //图片地址
        LinkToFile: true,
        SaveWithDocument: true,
        Left: 10, //图片距离左边位置
        Top: 10, //图片距离顶部位置
        Width: 60, //图片宽度
        Height: 120, //图片高度
      });
    
      //获取第1个图形对象
      const shape = await shapes.Item(1);
    
      //设置第1个图形的高度
      shape.Height = 240;
    }

删除图形

删除单个图形对象。

  • 语法

    表达式.ActiveDocument.Shapes.Item(Index).Delete()

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
      
      //获取图形对象
      const shapes = await app.ActiveDocument.Shapes;
    
      //插入非嵌入式图片
      await shapes.AddPicture({
        FileName: 'https://example.com/a.jpg', //图片地址
        LinkToFile: true,
        SaveWithDocument: true,
        Left: 10, //图片距离左边位置
        Top: 10, //图片距离顶部位置
        Width: 60, //图片宽度
        Height: 120, //图片高度
      });
    
      //获取第1个图形对象
      const shape = await shapes.Item(1);
    
      //删除单个图形
      await shape.Delete();
    }

转换成嵌入式图形

非嵌入式图形对象转换成嵌入式图形对象。

  • 语法

    表达式.ActiveDocument.Shapes.Item(Index).ConvertToInlineShape()

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
      
      //获取图形对象
      const shapes = await app.ActiveDocument.Shapes;
    
      //插入非嵌入式图片
      await shapes.AddPicture({
        FileName: 'https://example.com/a.jpg', //图片地址
        LinkToFile: true,
        SaveWithDocument: true,
        Left: 10, //图片距离左边位置
        Top: 10, //图片距离顶部位置
        Width: 60, //图片宽度
        Height: 120, //图片高度
      });
    
      //获取第1个图形对象
      const shape = await shapes.Item(1);
    
      //将第1个图形对象转换成嵌入式对象
      await shape.ConvertToInlineShape();
    }

设置图形距左值

将指定图形对象水平移动指定的磅数。

  • 语法

    表达式.ActiveDocument.Shapes.Item(Index).IncrementLeft(Increment)

    表达式:文档类型应用对象

  • 参数

    属性

    数据类型

    是否必填

    描述

    Increment

    Number

    指定图形对象水平移动的距离,以磅为单位。取值范围如下:

    • 正数:将图形对象右移。

    • 负数:将图形对象左移。

    • 0:图形对象不移动。

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
      
      //获取图形对象
      const shapes = await app.ActiveDocument.Shapes;
    
      //插入非嵌入式图片
      await shapes.AddPicture({
        FileName: 'https://example.com/a.jpg', //图片地址
        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);
    }

设置图形距上值

将指定图形对象垂直移动指定的磅数。

  • 语法

    表达式.ActiveDocument.Shapes.Item(Index).IncrementTop(Increment)

    表达式:文档类型应用对象

  • 参数

    属性

    数据类型

    是否必填

    描述

    Increment

    Number

    指定图形对象垂直移动的距离,以磅为单位。取值范围如下:

    • 正数:将图形对象下移。

    • 负数:将图形对象上移。

    • 0:图形对象不移动。

示例:

async function example() {
  await instance.ready();

  const app = instance.Application;
  
  //获取图形对象
  const shapes = await app.ActiveDocument.Shapes;

  //插入非嵌入式图片
  await shapes.AddPicture({
    FileName: 'https://example.com/a.jpg', //图片地址
    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);
}

嵌入式图形

获取嵌入式图形对象

获取所选内容中的所有嵌入式图形对象。

  • 语法

    表达式.ActiveDocument.InlineShapes

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
      
      //获取所选内容中的所有嵌入式对象
      const info = await app.ActiveDocument.InlineShapes;
    }

插入嵌入式图片

  • 语法

    表达式.ActiveDocument.InlineShapes.AddPicture({ FileName, LinkToFile, SaveWithDocument, Range })

    表达式:文档类型应用对象

  • 参数

    属性

    数据类型

    是否必填

    描述

    FileName

    String

    图片的路径和文件名。

    LinkToFile

    String

    图片是否链接到文件。取值范围如下:

    • true:将图片链接到创建它的文件。

    • false(默认):使图片文件成为独立副本。

    SaveWithDocument

    String

    图片是否随文档保存。取值范围如下:

    • true:链接的图片随文档一起保存。

    • false(默认):链接的图片不随文档一起保存。

    Range

    String

    图片置于文本中的位置。

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
      
      //获取图形对象
      const shapes = await app.ActiveDocument.InlineShapes;
    
      //插入嵌入式图片
      await shapes.AddPicture({
        FileName: 'https://example.com/a.jpg', //图片路径
        LinkToFile: false,
        SaveWithDocument: false,
        //Range:图形对象
      });
    }

获取嵌入式图形对象个数

  • 语法

    表达式.ActiveDocument.InlineShapes.Count

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
      
      //获取图形对象
      const shapes = await app.ActiveDocument.InlineShapes;
    
      //插入嵌入式图片
      await shapes.AddPicture({
        FileName: 'https://example.com/a.jpg', //图片路径
        LinkToFile: false,
        SaveWithDocument: false,
      });
    
      //获取嵌入式对象的个数
      const count = await shapes.Count;
      console.log(count);
    }

单个嵌入式图形

获取单个嵌入式图形对象

  • 语法

    表达式.ActiveDocument.InlineShapes.Item(Index)

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
      
      //获取图形对象
      const shapes = await app.ActiveDocument.InlineShapes;
    
      //插入嵌入式图片
      await shapes.AddPicture({
        FileName: 'https://example.com/a.jpg', //图片路径
        LinkToFile: false,
        SaveWithDocument: false,
      });
    
      //获取第1个嵌入式图形对象
      const shape = await shapes.Item(1);
    }

设置嵌入式图形宽度

设置单个嵌入式图形对象的宽度。

  • 语法

    表达式.ActiveDocument.InlineShapes.Item(Index).Width

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
      
      //获取图形对象
      const shapes = await app.ActiveDocument.InlineShapes;
    
      //插入嵌入式图片
      await shapes.AddPicture({
        FileName: 'https://example.com/a.jpg', //图片路径
        LinkToFile: false,
        SaveWithDocument: false,
      });
    
      //获取第1个嵌入式图形对象
      const shape = await shapes.Item(1);
    
      //设置嵌入式图形对象的宽度
      shape.Width = 200;
    }

设置嵌入式图形高度

设置单个嵌入式图形对象的高度。

  • 语法

    表达式.ActiveDocument.InlineShapes.Item(Index).Height

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
      
      //获取图形对象
      const shapes = await app.ActiveDocument.InlineShapes;
    
      //插入嵌入式图片
      await shapes.AddPicture({
        FileName: 'https://example.com/a.jpg', //图片路径
        LinkToFile: false,
        SaveWithDocument: false,
      });
    
      //获取第1个嵌入式图形对象
      const shape = await shapes.Item(1);
    
      //设置嵌入式图形对象的高度
      shape.Height = 200;
    }

删除嵌入式图形对象

  • 语法

    表达式.ActiveDocument.InlineShapes.Item(Index).Delete()

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
      
      //获取图形对象
      const shapes = await app.ActiveDocument.InlineShapes;
    
      //插入嵌入式图片
      await shapes.AddPicture({
        FileName: 'https://example.com/a.jpg', //图片路径
        LinkToFile: false,
        SaveWithDocument: false,
      });
    
      //获取第1个嵌入式图形对象
      const shape = await shapes.Item(1);
    
      //删除嵌入式图形对象
      await shape.Delete();
    }

转换为非嵌入式图形对象

将嵌入式图形对象转换为非嵌入式图形对象。

  • 语法

    表达式.ActiveDocument.InlineShapes.Item(Index).ConvertToShape()

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
      
      //获取图形对象
      const shapes = await app.ActiveDocument.InlineShapes;
    
      //插入嵌入式图片
      await shapes.AddPicture({
        FileName: 'https://example.com/a.jpg', //图片路径
        LinkToFile: false,
        SaveWithDocument: false,
      });
    
      //获取第1个嵌入式图形对象
      const shape = await shapes.Item(1);
    
      //嵌入式图形对象转换为非嵌入式图形对象
      await shape.ConvertToShape();
    }

选中嵌入式图形

选中单个嵌入式图形对象。

  • 语法

    表达式.ActiveDocument.Shapes.Item(Index).Select()

    表达式:文档类型应用对象

  • 示例

    async function example() {
      await instance.ready();
    
      const app = instance.Application;
      
      //获取图形对象
      const shapes = await app.ActiveDocument.Shapes;
    
      //插入单个图片
      await shapes.AddPicture({
        FileName: 'https://example.aliyundoc.com/583546003_25a7bc59d95249c2a3c257fa369ca289?imageMogr2/thumbnail/180x180!', // 图片路径
        LinkToFile: false,
        SaveWithDocument: false,
      });
    
      //获取第1个图形对象
      const shape = await shapes.Item(1);
    
      //选中单个图形对象
      await shape.Select();
    }