擔心在多個平台合併或拆分各種類型的文檔?你腦子裡可能有很多說法:
- 如何在 Java 中將 PDF 文檔合併在一起?
- 想要拆分 word 文檔,或合併 excel 電子表格。
- 如果我需要合併 PPT/PPTX 演示文稿怎麼辦。
- 還有很多問題,列表可能不會結束。
GroupDocs 為所有此類需求提供了文檔合併解決方案。它的 Java API 允許您在 Java 中跨各種受支持的文檔格式合併文檔和操作文檔結構。它還允許操作文檔頁面、頁面轉換、從文檔中提取信息、生成預覽等等。
在本文中,我們將探討以下主題:
下面解釋的代碼示例和步驟使用 GroupDocs.Merger for Java,因此您可以 下載 或使用 pom.xml 配置將其集成到基於 maven 的應用程序中。
在 Java 中合併 PDF 文件
我們只需幾行代碼就可以合併兩個或多個 PDF 文件。下面是來自 examples 的代碼片段,不言自明,無需進一步說明,因此展示瞭如何在 Java 中合併多個 PDF 文檔。如果您已確定要合併的文檔,步驟非常簡單:
// Set paths for the documents to join together in a single file.
String filePath1 = "document-1.pdf";
String filePath2 = "document-2.pdf";
String filePath3 = "document-3.pdf";
// Merger multiple PDF documents into a single PDF file.
Merger merger = new Merger(filePath1 );
merger.join(filePath2 ); // Joining 2nd Document
merger.join(filePath3 ); // Joining 3rd Document
// Save the merged document.
String filePathOutput = "mergedDocument.pdf";
merger.save(filePathOutput);
在 Java 中合併 Excel、Word、PowerPoint 文檔
您可以組合多個 Word 文檔、Excel 電子表格、PowerPoint 演示文稿,事實上,幾乎任何相同格式的文檔。上述合併 PDF 文檔的代碼可用於合併多種文檔。在文章的底部,我會提到可以用相同代碼合併的文件格式列表。在這裡舉個例子,我展示瞭如何通過幾行 Java 代碼將兩個以上的 Word 文檔組合成一個 Word 文件。
// Merger multiple Word documents into a single DOCX file.
Merger merger = new Merger("document1.docx" );
merger.join("document2.docx" ); // Joining 2nd Document
merger.join("document3.docx" ); // Joining 3rd Document
// Save the merged document.
merger.save("mergedDocument.pdf");
在 Java 中合併文檔頁面
可以通過選擇頁面以及指定所需的頁面範圍來合併多個文檔。您的代碼將與上面提到的類似,只是在使用 JoinOptions 類設置合併選項時稍作更改。
下面是顯示如何通過指定特定頁面來合併文檔的源代碼片段。
// Set the start and end page number in JoinOptions class.
JoinOptions joinOptions = new JoinOptions(1, 2);
// Merge two files with selective pages using join method.
Merger merger = new Merger("document-1.docx");
merger.join("document-2.docx" , joinOptions);
merger.save("merged-Document.docx");
在 Java 中將文檔拆分為多個文檔
就像我們上面合併文檔一樣,我們也可以通過不同的方式快速拆分 Word 文檔、Excel 電子表格、演示文稿、PDF 文件和許多其他文檔。
- 按確切的頁碼拆分
- 將文檔拆分為多個多頁文檔
- 按頁面範圍拆分
- 按偶數頁和奇數頁拆分
按確切頁碼拆分
我們可以通過在 Java 中提供準確的頁數來拆分文檔。下面的代碼將一個 PDF 文件拆分成 3 個文檔,每個文檔都有提到的單頁。
- 使用要拆分的輸出文件和模式初始化 SplitOptions 對象。
- 使用要拆分的源文件或流實例化 Merger 對象。
- 調用 split 方法拆分提供的文檔並保存。
String filePath = "document.pdf";
String filePathOut = "document\_{0}.{1}";
// Split the document into multiple single page documents.
SplitOptions splitOptions = new SplitOptions(filePathOut, new int\[\] { 3, 6, 8 });
Merger merger = new Merger(filePath);
merger.split(splitOptions);
將文檔拆分為多頁文檔
如果您有一個 6 頁的文檔,下面提到的上述代碼中的小修改將按照以下方式將您的文檔拆分為 3 個單獨的文檔:
文檔名稱 | 頁碼 |
---|---|
文檔 1 | 1, 2 |
文檔 2 | 3, 4, 5 |
文檔 3 | 6 |
SplitOptions splitOptions = new SplitOptions(filePathOut, SplitMode.Interval, new int\[\] { 3, 6 },);
按開始和結束頁面範圍拆分
如果您只想通過提供頁面範圍來拆分任何文檔,這裡是如何將 Powerpoint 演示文稿拆分為 3 個單頁演示文稿。
String filePath = "presentation.ppt";
String filePathOut = "presentation\_{0}.{1}";
// Split the presentation into multiple single page presentations.
SplitOptions splitOptions = new SplitOptions(filePathOut, 3, 5);
Merger merger = new Merger(filePath);
merger.split(splitOptions)
按偶數或奇數頁範圍拆分
您可以將偶數頁範圍和奇數頁範圍設置為拆分。以下 SplitOptions 將允許將提供的文檔拆分為多個單頁文檔,用於 3 到 8 範圍內的奇數頁。
SplitOptions splitOptions = new SplitOptions(filePathOut, 3, 8, RangeMode.OddPages);
支持的文檔格式
正如所承諾的,這裡是可以與上述示例合併或拆分的文檔格式列表。您可以隨時訪問 docs 查看更新的列表。
文件類型 | 文件格式 |
---|---|
文字處理 | DOC、DOCX、DOCM、DOT、DOTX、DOTM、ODT、OTT、RTF、TXT |
電子表格 | XLS、XLSX、XLSM、XLSB、XLT、XLTX、XLTM、ODS、CSV、TSV |
簡報 | PPT、PPTX、PPS、PPSX、ODP、OTP |
圖紙 | VSDX、VSDM、VSSX、VSSM、VSTX、VSTM、VDX、VSX、VTX |
網頁 | HTML、MHT |
頁面描述語言 | 紡織、XPS |
電子書及其他 | PDF, EPUB, 合一 |
很高興在這裡見到你,如果你感到任何困難或有一些困惑或想提出一些好的建議,你可以在論壇上自由聯繫我們。