Aspose.PDF功能演示:使用Java以編程方式拆分PDF文件
有時(shí)需要將一個(gè)PDF拆分為多個(gè)PDF文件時(shí),可能會(huì)有多種情況。例如,可能必須分割包含發(fā)票/收據(jù)的PDF的每一頁(yè),并將它們另存為單獨(dú)的文件。另一方面,可能要從PDF文件中拆分頁(yè)面的特定集合。為了解決上述情況,本文介紹了如何使用Java通過(guò)編程將PDF文件拆分為多個(gè)PDF。
- 使用Java按每一頁(yè)拆分PDF文件
- 使用Java按頁(yè)面集合拆分PDF文件
為了分割PDF文件,我們將利用Aspose.PDF for Java的PDF操作功能。該API使您可以在幾個(gè)步驟中執(zhí)行PDF拆分操作。感興趣的朋友可點(diǎn)擊下方按鈕下載最新版。(安裝包僅提供部分功能,并設(shè)置限制,如需試用完整功能請(qǐng))
點(diǎn)擊下載最新版Aspose.PDF for Java
使用Java分割PDF文件
PDF拆分標(biāo)準(zhǔn)可能會(huì)根據(jù)要求在不同的方案中有所不同。首先,讓我們看看如何按頁(yè)面拆分PDF文件并將每頁(yè)另存為單獨(dú)的PDF。以下是執(zhí)行此操作的步驟。
- 使用Document 類加載PDF文檔 。
- 使用Document.getPages() 方法循環(huán)瀏覽頁(yè)面。
- 將每個(gè)頁(yè)面訪問(wèn)到Page 對(duì)象中。
- 在每次迭代中,創(chuàng)建一個(gè)新 Document,將當(dāng)前頁(yè)面添加到該文檔中,然后使用Document.save(String) 方法將其另存為PDF文件 。
以下代碼示例顯示了如何使用Java分割PDF文件。
// Open document Document pdfDocument = new Document("input.pdf"); // For page counter int pageCount = 1; // Loop through all the pages for (Page pdfPage : pdfDocument.getPages()) { // Create a new document Document newDocument = new Document(); // Add page to the document newDocument.getPages().add(pdfPage); // Save as PDF newDocument.save("page_" + pageCount + "_out" + ".pdf"); pageCount++; }
使用Java按頁(yè)面集合拆分PDF文件
為了演示,讓我們看一下另一個(gè)PDF拆分方案。在此示例中,我們將基于偶數(shù)和奇數(shù)頁(yè)碼拆分PDF。以下是執(zhí)行此操作的步驟。
- 使用Document 類加載PDF文檔 。
- 使用Document.getPages() 方法循環(huán)瀏覽頁(yè)面。
- 將偶數(shù)頁(yè)和奇數(shù)頁(yè)分成ArrayList對(duì)象。
- 創(chuàng)建一個(gè)新的 Document對(duì)象,將頁(yè)面添加到文檔中,然后使用Document.save(String) 方法將其另存為PDF文件 。
以下代碼示例顯示了如何使用Java拆分PDF文件中的偶數(shù)頁(yè)和奇數(shù)頁(yè)。
// Open document Document pdfDocument = new Document("input.pdf"); // Create array lists for even and odd pages ListevenPages = new ArrayList(); ListoddPages = new ArrayList(); // Loop through all the pages for (Page pdfPage : pdfDocument.getPages()) { if(pdfPage.getNumber()%2==0) { evenPages.add(pdfPage); } else { oddPages.add(pdfPage); } } // Save even pages as PDF Document newDocument = new Document(); newDocument.getPages().add(evenPages); newDocument.save("split_even_Pages.pdf"); // Save odd pages as PDF newDocument = new Document(); newDocument.getPages().add(oddPages); newDocument.save("split_odd_Pages.pdf");
如果您有任何疑問(wèn)或需求,請(qǐng)隨時(shí)加入Aspose技術(shù)交流群(761297826),我們很高興為您提供查詢和咨詢。