Word或者WPS批量调整文中图片大小的快捷方法

文章目录


0、前言

不知道大家是不是也和我一样,经常需要在编写的Word(或者WPS)文档里插入大量的图片,但是这些图片的尺寸大小一般都不一样,有时甚至超出了页面范围,一张一张的调整图片大小来适合页面宽度或者满足版面美观的需要,那真是一件非常费力的事。有没有快捷的方法来取代这种费力不讨好的人工调整方式呢?经过我的一番学习,还终于找到了一个非常简单得方法,那就是编写VBA宏的方式,且代码仅仅几行!这下可以彻底解放我的眼睛和鼠标手了,无限的提高了写作效率。下面就来分享部署过程吧。


1、编写宏代码

当然得前提是你使用的Word或者WPS要有VBA模块才行,如果没有的话,也可以搜索安装VBA模块后使其具备VBA编程功能的。

任意打开一篇文档(或新建一篇文档),在【开发工具】菜单中找到【VB编辑器】,打开它。

然后在工程-Normal-项目下插入模块编写宏代码------相当于在常规模版中添加宏,这样就可以在所有的文档中均可以调出该宏,而不是只在当前文档中才能调用。

然后参照如下示例编写2个宏(示例中是否需要锁定纵横比、图片宽度和高度可根据需要调整)并保存:

Sub 批量调整图片高宽()

Dim iSha As InlineShape

For Each iSha In ActiveDocument.InlineShapes

If iSha.Type = wdInlineShapePicture Then

iSha.LockAspectRatio = msoFalse '不锁定纵横比

iSha.Width = CentimetersToPoints(15) '宽15CM,根据你的需要调整

iSha.Height = CentimetersToPoints(10) '高10CM

End If

Next

End Sub

Sub 批量设置图片等宽()

Dim iSha As InlineShape

For Each iSha In ActiveDocument.InlineShapes

If iSha.Type = wdInlineShapePicture Then

iSha.LockAspectRatio = msoTrue '锁定纵横比

iSha.Width = CentimetersToPoints(15) '宽15CM,一般情况下与页宽相协调,可根据你的需要调整修改

End If

Next

End Sub

2、在文档中调用宏实现一键批量调整

经过上述设置后,我们打开任意一篇包含图片的文章,点击【开发工具】菜单下的【VB宏】,会弹出下图类似的宏菜单,我们选择一个宏(比如【批量设置图片等宽】),然后再点击【运行】按钮。

文中的所有图片马上就按照宏中的15cm宽度进行自动调整了:


3、就这么简单!

相关推荐
黑咩狗夜.cm6 小时前
Aspose.word实现表格每页固定表头、最后一行填满整个页面
开发语言·c#·word
gCode Teacher 格码致知6 小时前
Python教学基础:用Python和openpyxl结合Word模板域写入数据-由Deepseek产生
python·word
蒲公英10011 天前
在wps软件的word中使用js宏命令设置表格背景色
javascript·word·wps
封奚泽优1 天前
word导入样式模版
word
随便叫个啥呢1 天前
java使用poi-tl模版+vform自定义表单生成word,使用LibreOffice导出为pdf
java·pdf·word
随便叫个啥呢1 天前
java使用poi-tl模版+vform自定义表单生成word,使用LibreOffice导出为pdf,批量下载为压缩文件
java·pdf·word·zip
CodeCraft Studio1 天前
国产化Word处理控件Spire.Doc教程:使用Java将RTF文件转换为PDF的全面教程
java·pdf·word·spire.doc·rtf转pdf·文件格式转换·文档开发sdk
随便叫个啥呢1 天前
java使用poi-tl模版+vform自定义表单生成word
java·word·poi-tl
青浅l1 天前
vue中回显word、Excel、txt、markdown文件
vue.js·word·excel
十五年专注C++开发1 天前
DocxFactory: 一个C++操作word的开源库(不依赖office控件)
c++·开源·word·后端开发