眾所周知,PDF檔案除了具有較強穩定性和兼容性外, 還具有較強的安全性,在作業中可以有效避免別人無意中對檔案內容進行修改,但與此同時,也妨礙了對檔案的正常的修改,這時我們可以將PDF轉為Word檔案進行修改或再編輯,使用軟體將 PDF 檔案轉換為 Word 檔案十分簡單,然而要在轉換時保持布局甚至字體格式卻并不容易,本文將分為以下兩部分介紹如何在保持布局的情況下將PDF轉為Word檔案,
- 將 PDF 轉換為固定布局的 Doc/Docx 檔案
- 將 PDF 轉換為流動形態的 Doc/Docx 檔案
固定布局模式轉換速度快,有利于最大程度保持 PDF 檔案的原貌,但是,生成的檔案的可編輯性將受到限制,因為 PDF 中的每一行文本將在生成的 Word 檔案中顯示在單獨的框架中,
流動形態是一種完整的識別模式,轉換后的內容不會以框架形式呈現,并且生成的檔案的結構是可流動的,生成的 Word 檔案很容易重新編輯,但看起來可能與原始 PDF 檔案不同,
代碼編譯環境:
IntelliJ IDEA 2018(jdk 1.8.0)
PDF Jar包:Free Spire.PDF for Java 5.1.0
1.引入jar包
匯入方法1:
手動引入,將Free Spire.PDF for Java下載到本地,解壓,找到lib檔案夾下的Spire.PDF.jar檔案,在IDEA中打開如下界面,將本地路徑中的jar檔案引入Java程式:

匯入方法2:如果您想通過 Maven安裝,則可以在 pom.xml 檔案中添加以下代碼匯入 JAR 檔案
<repositories>
<repository>
<id>com.e-iceblue</id>
<url>https://repo.e-iceblue.cn/repository/maven-public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.pdf.free</artifactId>
<version>5.1.0</version>
</dependency>
</dependencies>
將 PDF 轉換為固定布局的 Doc/Docx 檔案
- 以下是將 PDF 轉為固定布局的Doc/Docx 檔案的具體步驟,
- 創建一個 PdfDocument 物件,
- 使用 PdfDocument.loadFromFile() 方法加載 PDF 檔案,
- 使用 PdfDocument.saveToFile(String fileName, FileFormat fileFormat) 方法將 PDF 檔案轉換為 Doc 或 Docx 格式檔案,
完整代碼
Java
import com.spire.pdf.FileFormat; import com.spire.pdf.PdfDocument; public class ConvertPdfToWordWithFixedLayout { public static void main(String[] args) { //創建一個 PdfDocument 物件 PdfDocument doc = new PdfDocument(); //加載 PDF 檔案 doc.loadFromFile("C:\\Users\\Administrator\\Desktop\\sample.pdf"); //將PDF轉換為Doc格式檔案并保存 doc.saveToFile("output/ToDoc.doc", FileFormat.DOC); //將PDF轉換為Docx格式檔案并保存 doc.saveToFile("output/ToDocx.docx", FileFormat.DOCX); doc.close(); } }
將 PDF 轉換為流動形態的 Doc/Docx 檔案
以下是將 PDF 轉換為流動形態的 Doc/Docx 檔案的具體步驟:
- 創建一個 PdfDocument 物件,
- 使用 PdfDocument.loadFromFile() 方法加載 PDF 檔案,
- 使用 PdfDocument. getConvertOptions().setConvertToWordUsingFlow() 方法將轉換模式設定為流,
- 使用 PdfDocument.saveToFile(String fileName, FileFormat fileFormat) 方法將 PDF 檔案轉換為 Doc 或 Docx 格式檔案,
完整代碼
Java
import com.spire.pdf.FileFormat; import com.spire.pdf.PdfDocument; public class ConvertPdfToWordWithFlowableStructure { public static void main(String[] args) { //創建一個 PdfDocument 物件 PdfDocument doc = new PdfDocument(); //加載 PDF 檔案 doc.loadFromFile("C:\\Users\\Administrator\\Desktop\\sample.pdf"); //將 PDF 轉換為流動形態的Word doc.getConvertOptions().setConvertToWordUsingFlow(true); //將PDF轉換為Doc格式檔案并保存 doc.saveToFile("output/ToDoc.doc", FileFormat.DOC); //將PDF轉換為Docx格式檔案并保存 doc.saveToFile("output/ToDocx.docx", FileFormat.DOCX); doc.close(); } }
效果圖

—本文完—
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/542252.html
標籤:Java
上一篇:學習筆記——Spring宣告式事務管理;Spring中支持事務管理;使用宣告式事務管理;Spring宣告式事務管理屬性
下一篇:Redis之key的淘汰策略
