发布网友 发布时间:2022-04-23 07:49
共1个回答
热心网友 时间:2022-06-17 22:26
把word中的所有图片修改成固定的并且相同的长和宽
1
打开word,工具-宏-宏(或者直接按Alt+F8)进入宏的界面,如下面所示。
2
输入一个宏名,宏名自己起,能记住就行。
3
宏名起好了,单击“创建”进入Visual Basic 编辑器,输入如下代码并保存
Sub setpicsize() '设置图片大小
Dim n '图片个数
On Error Resume Next '忽略错误
Forn = 1 ToActiveDocument.InlineShapes.Count 'InlineShapes类型图片
ActiveDocument.InlineShapes(n).Height = 400 '设置图片高度为
400pxActiveDocument.InlineShapes(n).Width = 300 '设置图片宽度
300pxNextnForn = 1 ToActiveDocument.Shapes.Count 'Shapes类型图片
ActiveDocument.Shapes(n).Height = 400 '设置图片高度为 400pxActiveDocument.Shapes(n).Width = 300 '设置图片宽度 300pxNextnEnd Sub
4
返回word,工具-宏-宏(或者直接按Alt+F8),再次进入宏的界面,选择刚才编辑好的宏,并单击“运行”按钮,就可以了!(图片多时,可能会花一些时间)
END
把word中的所有图片按比例缩放
1
具体操作同上:打开word,工具-宏-宏(或者直接按Alt+F8)进入宏的界面,如下面所示。
2
输入一个宏名,宏名自己起,能记住就行。
3
宏名起好了,单击“创建”进入Visual Basic 编辑器,输入如下代码并存。 代码如下:Sub setpicsize() '设置图片大小Dim n '图片个数DimpicwidthDimpicheightOn Error Resume Next '忽略错误For n = 1 ToActiveDocument.InlineShapes.Count 'InlineShapes类型图片picheight = ActiveDocument.InlineShapes(n).Heightpicwidth = ActiveDocument.InlineShapes(n).WidthActiveDocument.InlineShapes(n).Height = picheight * 1.1 '设置高度为1.1倍ActiveDocument.InlineShapes(n).Width = picwidth * 1.1 '设置宽度为1.1倍NextnFor n = 1 To ActiveDocument.Shapes.Count 'Shapes类型图片picheight = ActiveDocument.Shapes(n).Heightpicwidth = ActiveDocument.Shapes(n).WidthActiveDocument.Shapes(n).Height = picheight * 1.1 '设置高度为1.1倍ActiveDocument.Shapes(n).Width = picwidth * 1.1 '设置宽度为1.1倍NextnEnd Sub
4
若还想使所有图片居中对齐,可在循环中加入下面的语句:ActiveDocument.InlineShapes(n).Range.ParagraphFormat.Alignment= wdAlignParagraphCenter
‘左对齐:wdAlignParagraphLeft
END
注意事项
需要注意的地方 就是注意厘米与像素的换算关系。一般情况下1厘米=28px 。这个换算关系其实可以用计算器计算出来。计算公式为图片改变之后的像素除以改变之后图片的大小厘米。
这里的Shapes(InlineShapes)不仅仅是指图片,也包含其它的,自选图形、任意多边形、OLE 对象、ActiveX 控件、图片等。