对于一大堆相似的图片要进行相同的裁剪,上下左右裁剪的距离都差不多,可以使用下面的宏代码,按一次快捷键即可裁剪一张图片。代码来自知乎word2010怎样批量裁剪图片宏命令 该链接下面还有一个一次性裁剪所有图片的代码,我没有尝试,所以这里只说一张一张快速裁剪的代码,如果图片只有几十张一百多张,其实也挺快的,下面设置宏命令的操作方法非常详细。```
Sub cut()
left_cut = 0
right_cut = 0
top_cut = 0
bottom_cut = 17
pic_height = 28
pic_width = 20
On Error Resume Next '
scales = 1 / 0.03528
If Selection.InlineShapes.Count > 0 Then
With Selection.InlineShapes(1).PictureFormat
.CropBottom = bottom_cut * scales
.CropLeft = left_cut * scales
.CropRight = right_cut * scales
.CropTop = top_cut * scales
End With
Selection.InlineShapes(1).LockAspectRatio = msoFalse
Selection.InlineShapes(1).Height = pic_height * scales
Selection.InlineShapes(1).Width = pic_width * scales
Else
With Selection.ShapeRange(1).PictureFormat
.CropBottom = bottom_cut * scales
.CropLeft = left_cut * scales
.CropRight = right_cut * scales
.CropTop = top_cut * scales
End With
Selection.ShapeRange(1).LockAspectRatio = msoFalse
Selection.ShapeRange(1).Height = pic_height * scales
Selection.ShapeRange(1).Width = pic_width * scales
End If
End Sub
代码到此结束,其中
left_cut = 0
right_cut = 0
top_cut = 0
bottom_cut = 17
这四句话表示左右上下分别要裁剪的尺度,单位是cm,根据不同的需求更改等号后面的数字即可。
操作方法:
1. 打开word2016
2. 单击 视图 选项卡
3. 单击 宏——录制宏
4. 取宏名为cut,如果取其他名字的话代码第一排cut更改为你取得宏名也可以
5. 将宏指定到 键盘
6. 按你想设置的快捷键,比如我按的是 ctrl+f
7. 单击指定,然后关闭,此时鼠标就不一样了,这时候已经进入录制宏状态了,我们不管
8. 继续,单击 视图 选项卡,单击宏——停止录制
9. 继续,单击 查看宏,选择刚刚录制的那一个宏,即选中宏名为cut 的那一个
10.单击右侧的编辑,将界面的所有代码用我们上面的代码覆盖掉, 将上下左右的数字改为你的图片需要裁剪的尺寸,保存后关闭这个页面即可。
11. 按道理来说改到这里应该可以使用了,使用方法如下:选择你要裁剪的图片,按ctrl+f(你设置的快捷键)。多张图片重复操作即可。
12. 但是我还是不可以,所以继续操作
13. 文件——选项——自定义功能区——键盘快捷方式:自定义(最下方)
14. 类别 拉到最下面,选择宏,在右边选择你刚刚的宏,也就是 cut
15. 请按新的快捷键——按ctrl+f——指定——关闭——关闭
这个时候就可以了,选择要裁剪的图片,按ctrl+f,搞定。
tips:可以多次修改代码中的裁剪距离,达到自己的目的,每一次裁剪都是在原图的基础上执行裁剪,而不是已经修改的图上再次执行。比如之前top裁剪了top_cut = 5,还要再裁剪1cm才合适,那么改成top_cut = 6再次执行即可,而不是top_cut = 1。