Word中有PDF文件如何导出来?四种实用方法详解

在日常办公中,我们有时会将PDF文件作为附件或对象嵌入到Word文档中。但当我们需要单独使用这个PDF文件时,如何把它从Word文档中“取出”却成了难题。本文将详细介绍几种有效的导出方法,适用于不同情况。

方法一:利用PDF阅读器直接另存

最直接的方法是使用Word中嵌入PDF的右键菜单。

  1. 在Word文档中,找到嵌有PDF的图标或区域。
  2. 右键单击该对象,在弹出菜单中依次选择“文档对象”->“打开”(或“打开对象”)。
  3. 此时系统会启动默认的PDF阅读器(如Adobe Acrobat Reader),并打开该PDF文件。
  4. 在PDF阅读器中,点击“文件”->“另存为”,选择合适的路径即可保存为独立的PDF文件。

该方法简单快捷,前提是你的电脑上已安装可关联PDF的阅读器。如果Word中只显示图标,右键后可能直接有“打开”选项,操作大同小异。

方法二:修改文档扩展名,从压缩包中提取

docx格式的Word文档本质上是一个ZIP压缩包,嵌入的PDF文件会被存放于内部的word/embeddings文件夹中。我们可以利用这一点手动提取。

  1. 先将Word文档复制一份,以免误操作。
  2. 将副本文件扩展名由.docx改为.zip,系统提示时点击“确定”。
  3. 使用解压软件(如WinRAR、7-Zip或Windows资源管理器)打开该zip压缩包。
  4. 依次进入word文件夹,找到embeddings子文件夹。
  5. 在其中可以看到以.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
  1. 在Word中按Alt+F11打开VBA编辑器。
  2. 点击菜单栏“插入”->“模块”,将上述代码粘贴进去。
  3. 根据需要修改folderPath为实际的导出路径。
  4. 按下F5运行宏,即可将文档中所有嵌入的PDF保存至指定文件夹。

此方法适合嵌入多个PDF时批量导出,但需要具备基本的VBA知识,且Word版本不同可能有差异。

方法四:另存为网页或打印成PDF(变通方法)

如果以上方法都不适用,还可以考虑将PDF对象的内容复制粘贴到某个可编辑的软件中,再导出为PDF。不过这种方法可能损坏原有排版,仅用于应急。

另一个思路是直接打印Word文档中的PDF对象,但打印机选择“Microsoft Print to PDF”,也能得到PDF文件,不过这实际上是对文档的打印,并非原始文件。

因此,更加推荐的还是前三种方法。

简单来说,若只需导出一次,用方法一;若需要提取原始且完整的PDF,方法二最可靠;面对多个嵌入文件,方法三效率最高。希望本文对你有所帮助。