可借助三种互不依赖的方法批量提取Word文档嵌入图片:一、另存为网页格式,自动生成含图片的\_files文件夹;二、将.docx重命名为.zip解压,从word/media路径提取;三、运行VBA宏调用WIA接口导出为PNG。

如果您在Windows 10系统中需要从多个Word文档中快速获取全部嵌入图片,但手动一张张复制效率低下,则可借助原生功能或轻量工具实现批量提取。以下是三种互不依赖、可独立操作的解决方案:
一、将Word文档另存为网页格式提取图片
该方法利用Word内置的“另存为网页”功能,自动将文档中所有内嵌图像解包并集中存放于同名文件夹中,无需安装额外软件,兼容Word 2007及以上版本。
1、打开任一需提取图片的Word文档(.docx格式)。
2、点击左上角【文件】→【另存为】,选择保存位置。
3、在“保存类型”下拉菜单中,选定网页(*.htm; *.html)。
4、点击【保存】后,在保存路径下会生成一个HTML文件及一个同名且带_files后缀的文件夹。
5、双击进入该文件夹,所有图片以原始格式(如.jpeg、.png、.gif)按插入顺序命名并存放其中。
二、重命名.docx为.zip后解压提取图片
Word .docx文件本质是符合Open XML标准的ZIP压缩包,图片资源统一存放在内部word/media/路径下,通过文件系统级解压即可直接访问全部图像文件。
1、确保Word程序已关闭,找到目标.docx文档所在目录。
2、右键单击文档→【重命名】,将扩展名.docx改为.zip;若弹出确认提示,点击【是】。
3、双击打开该ZIP文件,依次展开word → media子文件夹。
4、全选media文件夹内所有文件(通常为image1.png、image2.jpeg等),右键→【解压到当前文件夹】或【解压到指定文件夹】。
5、解压完成后,所有图片即以原始分辨率和格式出现在目标位置。
三、使用VBA宏代码一键导出所有图片
VBA脚本可在Word内部遍历全部InlineShape对象,调用WIA(Windows Image Acquisition)接口将每张图实时复制为PNG文件,适用于需自定义命名规则或批量处理多个文档的场景。
1、打开Word文档,按Alt + F11启动VBA编辑器。
2、在左侧工程资源管理器中,右键【Normal】→【插入】→【模块】。
3、在新模块空白窗口中粘贴以下代码:
Sub ExtractImages()
Dim oILShp As InlineShape
Dim SavePath As String
SavePath = "C:\ExtractedImages\"
MkDir SavePath
Dim i As Integer: i = 0
For Each oILShp In ActiveDocument.InlineShapes
i = i + 1
oILShp.Select
Selection.Copy
With CreateObject("WIA.Imaging")
.LoadFromClipboard
.SaveToFile SavePath & "Image_" & i & ".png"
End With
Next oILShp
End Sub
4、修改代码中SavePath = "C:\ExtractedImages\"为本地存在的有效路径(如D:\WordImages\),确保末尾含反斜杠。
5、将光标置于Sub与End Sub之间任意位置,按F5运行宏。
6、运行结束后,前往指定路径查看导出的连续编号PNG图像文件。










