有些网站为了对PPT资源进行保护,经常将PPT转换为pdf在web上逐页进行展示,在该页面上不能复制、也不能另存为,为了打破这种限制,可通过页面缩略图将pdf的每一个页面进行批量选择复制,再粘贴到word中,由于图片数量多,大小和word窗口不匹配,一张一张手工调整图片至合适的大小非常费事。为了解决这一问题,可以通过编写宏代码来一次性完成自动调整所有图片的大小,代码如下:
Sub setpicsize() '设置图片大小
Dim n '图片个数
Dim picwidth
Dim picheight
On Error Resume Next '忽略错误
For n = 1 To ActiveDocument.InlineShapes.Count 'InlineShapes类型图片
picheight = ActiveDocument.InlineShapes(n).Height
picwidth = ActiveDocument.InlineShapes(n).Width
ActiveDocument.InlineShapes(n).Height = picheight * 0.74 '设置高度为0.74倍
ActiveDocument.InlineShapes(n).Width = picwidth * 0.74 '设置宽度为0.74倍
Next n
For n = 1 To ActiveDocument.Shapes.Count 'Shapes类型图片
picheight = ActiveDocument.Shapes(n).Height
picwidth = ActiveDocument.Shapes(n).Width
ActiveDocument.Shapes(n).Height = picheight * 0.74 '设置高度为0.74倍
ActiveDocument.Shapes(n).Width = picwidth * 0.74 '设置宽度为0.74倍
Next n
End Sub
word中的图片有两种:InlineShapes和Shapes,程序会根据不同的图片进行识别。我这里是设置缩小74%,可以根据自己情况进行修改。
在当前word页面运行以上宏,则所有图片大小都自动修稿好,节省了大量时间。