本文介绍三种方法。
一、利用软件,如BatchDoc,可以快速批量的设置图片格式。
二、word自带功能
1.将word格式另存为97-2003的格式,即后缀名为doc,非docx。
2.打开word“文件”-中的“选项”卡,选择“自定义功能”,设置为“所有命令”,选择“选择多个对象”,自定义功能区在“开始”面板下“新建组”,将“选择多个对象”添加至此。
3.在“开始”选项卡下,点击刚刚添加的“选择多个对象”功能,在弹出的对话框中选择“全选”,点击“确定”。在一大摞图片上右键点击鼠标,选择“设置自选图形/图片格式“,在弹出的对话框中更改“大小”等样式,所有的图片都会发生改变。
*注: 在设置所有的图片的“大小”时一定要记得打开“锁定纵横比”。因为你插入的多张图片的长宽比可能不同,如果不锁定纵横比,会导致部分图片被拉长或压扁,影响图片质量。
三、使用VBA宏命令。
1.首先将所有的图片格式转为嵌入式,这样才能设置如居中等格式。参考下列代码。
Sub 图片版式转换()
Dim oShape As Variant, shapeType As WdWrapType
On Error Resume Next
If MsgBox("Y将图片由嵌入式转为浮动式,N将图片由浮动式转为嵌入式", 68) = 6 Then
shapeType = Val(InputBox(Prompt:="请输入图片版式:0=四周型,1=紧密型, " & vbLf & _
"3=衬于文字下方,4=浮于文字上方", Default:=0))
For Each oShape In ActiveDocument.InlineShapes
Set oShape = oShape.ConvertToShape
With oShape
Select Case shapeType
Case 0, 1
.WrapFormat.Type = shapeType
Case 3
.WrapFormat.Type = 3
.ZOrder 5
Case 4
.WrapFormat.Type = 3
.ZOrder 4
Case Else
Exit Sub
End Select
.WrapFormat.AllowOverlap = False '不允许重叠
End With
Next
Else
For Each oShape In ActiveDocument.Shapes
oShape.ConvertToInlineShape
Next
End If
End Sub
2.批量设置图片格式
Sub 图片居中()
Dim iSha As InlineShape
For i = 1 To ActiveDocument.Paragraphs.Count
If ActiveDocument.Paragraphs(i).Range.InlineShapes.Count > 0 Then
With ActiveDocument.Paragraphs(i).Format '在这里可以设置图片的格式
.CharacterUnitFirstLineIndent = 0
.FirstLineIndent = 0
.LeftIndent = 0
.Alignment = wdAlignParagraphCenter
End With
End If
Next i
End Sub
注意,对于不需要进行批量设置的图片,比如文本行中像素较小和文字混在一块的图片,可根据实际情况设置过滤条件,比如图片的高度