Word中有PDF文件如何导出来?四种实用方法详解
在日常办公中,我们有时会将PDF文件作为附件或对象嵌入到Word文档中。但当我们需要单独使用这个PDF文件时,如何把它从Word文档中“取出”却成了难题。本文将详细介绍几种有效的导出方法,适用于不同情况。
方法一:利用PDF阅读器直接另存
最直接的方法是使用Word中嵌入PDF的右键菜单。
- 在Word文档中,找到嵌有PDF的图标或区域。
- 右键单击该对象,在弹出菜单中依次选择“文档对象”->“打开”(或“打开对象”)。
- 此时系统会启动默认的PDF阅读器(如Adobe Acrobat Reader),并打开该PDF文件。
- 在PDF阅读器中,点击“文件”->“另存为”,选择合适的路径即可保存为独立的PDF文件。
该方法简单快捷,前提是你的电脑上已安装可关联PDF的阅读器。如果Word中只显示图标,右键后可能直接有“打开”选项,操作大同小异。
方法二:修改文档扩展名,从压缩包中提取
docx格式的Word文档本质上是一个ZIP压缩包,嵌入的PDF文件会被存放于内部的word/embeddings文件夹中。我们可以利用这一点手动提取。
- 先将Word文档复制一份,以免误操作。
- 将副本文件扩展名由
.docx改为.zip,系统提示时点击“确定”。 - 使用解压软件(如WinRAR、7-Zip或Windows资源管理器)打开该zip压缩包。
- 依次进入
word文件夹,找到embeddings子文件夹。 - 在其中可以看到以
.pdf为后缀的文件(可能以数字命名),直接将其复制出来并重命名即可。
此方法不需要任何额外工具,且能提取出原始的完整PDF文件,非常适合批量处理。但仅适用于新版Word文档(.docx),老版.doc则不支持。
方法三:使用VBA宏将嵌入对象保存为文件
如果你熟悉宏操作,可以借助VBA代码快速导出嵌入的PDF。以下是一个简单示例:
Sub SaveEmbeddedPDF()
Dim obj As OLEObject
Dim folderPath As String
folderPath = "C:/ExportedPDF"
' 创建文件夹
If Dir(folderPath, vbDirectory) = "" Then MkDir folderPath
For Each obj In ActiveDocument.InlineShapes
If obj.OLEFormat.ProgID = "AcroExch.Document" Or obj.OLEFormat.ProgID = "Acrobat.Document" Then
obj.OLEFormat.Object.SaveAs folderPath & "/" & Mid(obj.Name, 2) & ".pdf"
End If
Next obj
End Sub- 在Word中按
Alt+F11打开VBA编辑器。 - 点击菜单栏“插入”->“模块”,将上述代码粘贴进去。
- 根据需要修改
folderPath为实际的导出路径。 - 按下
F5运行宏,即可将文档中所有嵌入的PDF保存至指定文件夹。
此方法适合嵌入多个PDF时批量导出,但需要具备基本的VBA知识,且Word版本不同可能有差异。
方法四:另存为网页或打印成PDF(变通方法)
如果以上方法都不适用,还可以考虑将PDF对象的内容复制粘贴到某个可编辑的软件中,再导出为PDF。不过这种方法可能损坏原有排版,仅用于应急。
另一个思路是直接打印Word文档中的PDF对象,但打印机选择“Microsoft Print to PDF”,也能得到PDF文件,不过这实际上是对文档的打印,并非原始文件。
因此,更加推荐的还是前三种方法。
简单来说,若只需导出一次,用方法一;若需要提取原始且完整的PDF,方法二最可靠;面对多个嵌入文件,方法三效率最高。希望本文对你有所帮助。