• 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、就这么简单!

  • 相关阅读:
    用js切割文字,超出省略
    robots (攻防世界)
    linux 给根目录扩容(lvm CentOS 7.6 &kylinx86)
    论文阅读--Energy efficiency in heterogeneous wireless access networks
    MVC和Filter
    Android异步之旅:探索HandlerThread
    Elasticsearch系列(五)ES数据写入
    django|报错SQLite 3.8.3 or later is required的解决方案
    Python数据容器通用操作
    通过profibus PA转Modbus rtu协议网关把RTU数据传到pa设备上
  • 原文地址:https://blog.csdn.net/engineerlzk/article/details/134398987