图片操作

本节介绍图片的创建和几何变换。

添加图片

使用Shape对象的AddPicture方法从现有文件创建图片。 该方法返回一个表示新图片的Shape对象。该方法的语法格式为:

code.python
sht.api.Shapes.AddPicture(FileName,LinkToFile,SaveWithDocument,Left,Top,Width,Height)

其中,sht为工作表。各参数的意义如表4-22中所示。

表4-22 AddPicture方法各参数的意义

名 称 必需/可选 数据类型 说 明
FileName 必需 String 图片文件名
LinkToFile 必需 MsoTriState 设置为False时,使图片成为文件的独立副本,不链接。设置为True时将图片链接到创建它的文件
SaveWithDocument 必需 MsoTriState 将图片与文档一起保存。使用False仅将链接信息存储在文档中。 使用True将链接的图片与插入到的文档一起保存。 如果LinkToFile的值为 False,则此参数必须为 True
Left 必需 Single 图片左上角相对于文档左上角的位置 (以磅为单位)
Top 必需 Single 图片左上角相对于文档顶部的位置(以磅为单位)
Width 必需 Single 图片的宽度, 以磅为单位 (输入-1 可保留现有文件的宽度)
Height 必需 Single 图片的高度, 以磅为单位 (输入-1 可保留现有文件的高度)

本示例将一张图片添加到工作表sht中,该图片链接到创建它的文件, 并与工作表sht一起保存。

code.python
>>> sht.api.Shapes.AddPicture(r"D:\picpy.jpg", True, True, 100, 50, 100, 100)

效果如图4-48所示。

Document Image

图4-48 创建图片

图片的几何变换

4.3节介绍了图形的几何变换,使用Shape对象提供的方法,可以对给定的图形进行平移变换、旋转变换、比例变换和对称变换。在实现方法上,图片几何变换的完全相同。

下面利用指定文件创建图片后,对它连续进行旋转变换和水平对称变换。

code.python
>>> shp=sht.api.Shapes.AddPicture(r"D:\picpy.jpg", True, True, 100, 50, 100, 100)
>>> shp.IncrementRotation(30)  #绕中心顺时针方向旋转30度
>>> shp.Flip(0)  #水平翻转

旋转变换和对称变换后的图片如图4-49和图4-50所示。注意,对称变换是在前面旋转变换结果的基础上进行的,而不是针对原始图片。

Document Image Document Image

图4-49 对图片作旋转变换 图4-50 对图片作对称变换