因需处理上千张图片在网上找的方法,需要用到word里面的宏,现总结一下:
第一步:点击文件——选项——高级——把插入图片的格式从嵌入型改为四周型
第二步:看是否Word工具栏里有开发工具选项 若没有在选项里添加,工具栏里有开发工具
按住键盘alt+fn+F11 打开VBA界面,点击插入——模块(点两次需要插入两个代码):
模块1里代码:
Sub ResizeImages()
Dim shp As Shape
' 更改下面的宽度和高度为所需的尺寸(以厘米为单位)
Dim targetWidth As Single
targetWidth = CentimetersToPoints(4.3) ' 例如,将图片宽度调整为5厘米
Dim targetHeight As Single
targetHeight = CentimetersToPoints(3.38) ' 例如,将图片高度调整为5厘米
' 循环处理文档中的所有图片
For Each shp In ActiveDocument.Shapes
If shp.Type = msoPicture Then
' 更改图片大小
shp.LockAspectRatio = msoFalse
shp.Width = targetWidth
shp.Height = targetHeight
End If
Next shp
End Sub
模块2代码是把四周型图片转化为嵌入型:
Sub ConvertToInlineShapeWrap()
On Error Resume Next
Dim P As Shape
Dim arr()
Dim k
k = 0
For Each P In ActiveDocument.Shapes
ReDim Preserve arr(k)
arr(k) = P.Name
k = k + 1
Next
For k = 0 To UBound(arr)
ActiveDocument.Shapes(arr(k)).ConvertToInlineShape
Next
MsgBox "转换【" & k & "】个图片!"
End Sub
最后点运行
第三步:回到word页面点击开发工具——宏——先点Resizelmages(改变大小)——再点ConvertTolneShapeWrap(改变成嵌入式)
最后把文件保存为word-97-2003(这样下次可以启用宏):