在 Java 中拆分 PDF 文件

當您需要將 PDF 拆分為多個 PDF 文件時,可能會出現多種情況。例如,您可能必須拆分包含發票/收據的 PDF 的每一頁並將它們另存為單獨的文件。另一方面,您可能希望從 PDF 文件中拆分特定的頁面集合。為了應對上述場景,本文介紹瞭如何使用 Java 將一個 PDF 文件拆分為多個 PDF。

用於拆分 PDF 文件的 Java API – 免費下載

為了拆分 PDF 文件,我們將利用 Aspose.PDF for Java 的 PDF 操作功能。 API 讓您可以在幾個步驟內執行 PDF 拆分操作。您可以 下載 API 或使用以下配置將其安裝在基於 Maven 的應用程序中。

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-pdf</artifactId>
    <version>20.12</version>
    <classifier>jdk17</classifier>
</dependency>

使用 Java 拆分 PDF 文件

PDF 拆分標準可能會根據需要在不同的場景中有所不同。首先,讓我們看看如何按頁面拆分 PDF 文件並將每個頁面另存為單獨的 PDF。以下是執行此操作的步驟。

以下代碼示例顯示瞭如何使用 Java 拆分 PDF 文件。

// 打開文檔
Document pdfDocument = new Document("input.pdf");

// 對於頁面計數器
int pageCount = 1;

// 循環遍歷所有頁面
for (Page pdfPage : pdfDocument.getPages()) {
	// 創建一個新文檔
	Document newDocument = new Document();

	// 向文檔添加頁面
	newDocument.getPages().add(pdfPage);

	// 另存為 PDF
	newDocument.save("page_" + pageCount + "_out" + ".pdf");
	pageCount++;
}

使用 Java 按頁面集合拆分 PDF 文件

為了演示,讓我們看一下另一個 PDF 拆分場景。在此示例中,我們將根據偶數頁碼和奇數頁碼拆分 PDF。以下是執行此操作的步驟。

以下代碼示例顯示瞭如何使用 Java 拆分 PDF 文件中的偶數頁和奇數頁。

// 打開文檔
Document pdfDocument = new Document("input.pdf");

// 為偶數頁和奇數頁創建數組列表
List<Page> evenPages = new ArrayList<Page>();
List<Page> oddPages = new ArrayList<Page>();

// 循環遍歷所有頁面
for (Page pdfPage : pdfDocument.getPages())
{
	if(pdfPage.getNumber()%2==0)
	{
		evenPages.add(pdfPage);
	}
	else
	{
		oddPages.add(pdfPage);
	}		  	
}
// 將偶數頁另存為 PDF
Document newDocument = new Document();
newDocument.getPages().add(evenPages);
newDocument.save("split_even_Pages.pdf");

// 將奇數頁另存為 PDF
newDocument = new Document();
newDocument.getPages().add(oddPages);
newDocument.save("split_odd_Pages.pdf");

獲得免費許可證

您可以獲得免費的臨時許可證,以便在沒有評估限制的情況下試用 API。

結論

在本文中,您學習瞭如何使用 Java 拆分 PDF 文件。此外,您還了解瞭如何根據需要自定義 PDF 拆分標準。您可以使用 文檔 探索有關 API 的更多信息。

也可以看看