如何在 Java 中拆分 PDF 文件
本文將使用 Java 中的IronPDF從來源 PDF 檔案中分割 PDF 子檔案。
IronPDF Java PDF 庫
IronPDF 適用於 Java是一個 Java 函式庫,它優先考慮準確性、易用性和速度。 它專為 Java 設計,在處理 PDF 文件時非常易於使用。 它繼承了成熟的IronPDF .NET Framework庫的所有功能。 這使得IronPDF 適用於 Java 成為在各種情況下處理 PDF 文件的多功能工具。
IronPDF為開發者提供了將 PDF 文件渲染成圖像以及從 PDF 中提取文字和內容的方法。 此外, IronPDF還能夠在 PDF 中渲染圖表、向 PDF 文件添加浮水印、處理PDF 表單以及以程式管理數位簽名。
分割 PDF 檔案的步驟
項目設定的前提條件
要讓IronPDF在 Java Maven專案中處理 PDF 文件,您需要確保具備以下先決條件:
- JDK(Java開發工具包):您的電腦上必須執行最新版本的Java以及整合開發環境(IDE)。如果沒有,請從Oracle網站下載最新的JDK。 可以使用任何整合開發環境,例如 NetBeans、Eclipse 或 IntelliJ。
- Maven: Maven是專為 Java 專案建置的重要工具,用於管理您的專案和相依性。 如果尚未安裝Maven ,請從Apache Maven網站下載。
-
IronPDF Java 函式庫:現在您需要IronPDF Java 函式庫。 Maven可以透過在專案的
pom.xml檔案中新增以下相依性來實現這一點。 Maven 將自動下載並將其安裝到專案中。<dependency> <groupId>com.ironpdf</groupId> <artifactId>ironpdf</artifactId> <version>1.0.0</version> </dependency><dependency> <groupId>com.ironpdf</groupId> <artifactId>ironpdf</artifactId> <version>1.0.0</version> </dependency>XML -
另一個必需的依賴項是 SLF4J。 在
pom.xml檔案中新增 SLF4J 相依性。<dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-simple</artifactId> <version>2.0.3</version> </dependency><dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-simple</artifactId> <version>2.0.3</version> </dependency>XML
將所有元件下載並安裝到分割 PDF 檔案 Java 程式後,即可使用IronPDF庫。
導入類別
首先,在 Java 程式碼中匯入IronPDF所需的類別。 在" Main.java "檔案的頂部加入以下程式碼:
import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.License;
import java.io.IOException;
import java.nio.file.Paths;
import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.License;
import java.io.IOException;
import java.nio.file.Paths;
現在,使用IronPDF 的setLicenseKey() 方法在 Main 方法中設定您的許可證金鑰:
License.setLicenseKey("Your license key");
License.setLicenseKey("Your license key");
建立或開啟現有 PDF 文件
要將 PDF 文件拆分成多個單頁文件,要么需要建立一個多頁的 PDF 文件,要么需要打開一個多頁的 PDF 文件。
下一個程式碼範例將建立一個四頁的 PDF 文件,可用於本次示範。
// HTML content used to create a four-page PDF
String html = "<p> [PDF With Multiple Pages] </p>"
+ "<p> 1st Page </p>"
+ "<div style='page-break-after: always;'></div>"
+ "<p> 2nd Page</p>"
+ "<div style='page-break-after: always;'></div>"
+ "<p> 3rd Page</p>"
+ "<div style='page-break-after: always;'></div>"
+ "<p> 4th Page</p>";
// Render HTML to a PDF document
PdfDocument pdf = PdfDocument.renderHtmlAsPdf(html);
// Save the PDF document
pdf.saveAs(Paths.get("assets/multiplePages.pdf"));
// HTML content used to create a four-page PDF
String html = "<p> [PDF With Multiple Pages] </p>"
+ "<p> 1st Page </p>"
+ "<div style='page-break-after: always;'></div>"
+ "<p> 2nd Page</p>"
+ "<div style='page-break-after: always;'></div>"
+ "<p> 3rd Page</p>"
+ "<div style='page-break-after: always;'></div>"
+ "<p> 4th Page</p>";
// Render HTML to a PDF document
PdfDocument pdf = PdfDocument.renderHtmlAsPdf(html);
// Save the PDF document
pdf.saveAs(Paths.get("assets/multiplePages.pdf"));
PDF文件如下所示:
使用IronPDF建立新的 PDF 文件
開啟PDF檔案進行分割
作為上一節的替代方案,下一個程式碼範例使用PdfDocument.fromFile 方法,透過IronPDF開啟現有的 PDF 檔案。
// Open the existing PDF document
PdfDocument pdf = PdfDocument.fromFile(Paths.get("assets/multiplePages.pdf"));
// Open the existing PDF document
PdfDocument pdf = PdfDocument.fromFile(Paths.get("assets/multiplePages.pdf"));
您也可以透過將文件密碼作為第二個參數提供給fromFile 方法來開啟受密碼保護的檔案。
將 PDF 文件拆分為多個 PDF 文件
分割 PDF 檔案的程式碼很簡單。 只需使用如下所示的方法[從](/java/object-reference/api/com/ironsoftware/ironpdf/PdfDocument.html#copyPage(int)原始文件複製幾頁即可:
// Take the first page
PdfDocument page1Doc = pdf.copyPage(0);
page1Doc.saveAs(Paths.get("assets/split1.pdf"));
// Take the second page
PdfDocument page2Doc = pdf.copyPage(1);
page2Doc.saveAs(Paths.get("assets/split2.pdf"));
// Take the third page
PdfDocument page3Doc = pdf.copyPage(2);
page3Doc.saveAs(Paths.get("assets/split3.pdf"));
// Take the fourth page
PdfDocument page4Doc = pdf.copyPage(3);
page4Doc.saveAs(Paths.get("assets/split4.pdf"));
// Take the first page
PdfDocument page1Doc = pdf.copyPage(0);
page1Doc.saveAs(Paths.get("assets/split1.pdf"));
// Take the second page
PdfDocument page2Doc = pdf.copyPage(1);
page2Doc.saveAs(Paths.get("assets/split2.pdf"));
// Take the third page
PdfDocument page3Doc = pdf.copyPage(2);
page3Doc.saveAs(Paths.get("assets/split3.pdf"));
// Take the fourth page
PdfDocument page4Doc = pdf.copyPage(3);
page4Doc.saveAs(Paths.get("assets/split4.pdf"));
透過將索引號作為參數傳遞給 copyPage 方法來分割 PDF 檔案。 然後,將每一頁儲存到單獨的文件中。
第 1 頁
第2頁
第3頁
第4頁
copyPages 方法也可以依頁面範圍拆分 PDF。 下面,我們將範例 PDF 平均分成兩半。
// Copy the first two pages into a new PDF document
PdfDocument halfPages = pdf.copyPages(0, 1);
halfPages.saveAs(Paths.get("assets/halfPages.pdf"));
// Copy the last two pages into another PDF document
PdfDocument endPages = pdf.copyPages(2, 3);
endPages.saveAs(Paths.get("assets/endPages.pdf"));
// Copy the first two pages into a new PDF document
PdfDocument halfPages = pdf.copyPages(0, 1);
halfPages.saveAs(Paths.get("assets/halfPages.pdf"));
// Copy the last two pages into another PDF document
PdfDocument endPages = pdf.copyPages(2, 3);
endPages.saveAs(Paths.get("assets/endPages.pdf"));
將PDF文件分割成兩部分
完整的程式碼範例如下所示:
import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.License;
import java.io.IOException;
import java.nio.file.Paths;
public class Main {
public static void main(String[] args) throws IOException {
// Set the IronPDF license key
License.setLicenseKey("Your license key");
// HTML content to create a four-page PDF document
String html = "<p> [PDF With Multiple Pages] </p>"
+ "<p> 1st Page </p>"
+ "<div style='page-break-after: always;'></div>"
+ "<p> 2nd Page</p>"
+ "<div style='page-break-after: always;'></div>"
+ "<p> 3rd Page</p>"
+ "<div style='page-break-after: always;'></div>"
+ "<p> 4th Page</p>";
// Render HTML to a PDF document
PdfDocument pdf = PdfDocument.renderHtmlAsPdf(html);
pdf.saveAs(Paths.get("assets/multiplePages.pdf"));
// Open the existing PDF document
pdf = PdfDocument.fromFile(Paths.get("assets/multiplePages.pdf"));
// Split each PDF page into separate documents
PdfDocument page1Doc = pdf.copyPage(0);
page1Doc.saveAs(Paths.get("assets/split1.pdf"));
PdfDocument page2Doc = pdf.copyPage(1);
page2Doc.saveAs(Paths.get("assets/split2.pdf"));
PdfDocument page3Doc = pdf.copyPage(2);
page3Doc.saveAs(Paths.get("assets/split3.pdf"));
PdfDocument page4Doc = pdf.copyPage(3);
page4Doc.saveAs(Paths.get("assets/split4.pdf"));
// Split the PDF into two halves
PdfDocument halfPages = pdf.copyPages(0, 1);
halfPages.saveAs(Paths.get("assets/halfPages.pdf"));
PdfDocument endPages = pdf.copyPages(2, 3);
endPages.saveAs(Paths.get("assets/endPages.pdf"));
}
}
import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.License;
import java.io.IOException;
import java.nio.file.Paths;
public class Main {
public static void main(String[] args) throws IOException {
// Set the IronPDF license key
License.setLicenseKey("Your license key");
// HTML content to create a four-page PDF document
String html = "<p> [PDF With Multiple Pages] </p>"
+ "<p> 1st Page </p>"
+ "<div style='page-break-after: always;'></div>"
+ "<p> 2nd Page</p>"
+ "<div style='page-break-after: always;'></div>"
+ "<p> 3rd Page</p>"
+ "<div style='page-break-after: always;'></div>"
+ "<p> 4th Page</p>";
// Render HTML to a PDF document
PdfDocument pdf = PdfDocument.renderHtmlAsPdf(html);
pdf.saveAs(Paths.get("assets/multiplePages.pdf"));
// Open the existing PDF document
pdf = PdfDocument.fromFile(Paths.get("assets/multiplePages.pdf"));
// Split each PDF page into separate documents
PdfDocument page1Doc = pdf.copyPage(0);
page1Doc.saveAs(Paths.get("assets/split1.pdf"));
PdfDocument page2Doc = pdf.copyPage(1);
page2Doc.saveAs(Paths.get("assets/split2.pdf"));
PdfDocument page3Doc = pdf.copyPage(2);
page3Doc.saveAs(Paths.get("assets/split3.pdf"));
PdfDocument page4Doc = pdf.copyPage(3);
page4Doc.saveAs(Paths.get("assets/split4.pdf"));
// Split the PDF into two halves
PdfDocument halfPages = pdf.copyPages(0, 1);
halfPages.saveAs(Paths.get("assets/halfPages.pdf"));
PdfDocument endPages = pdf.copyPages(2, 3);
endPages.saveAs(Paths.get("assets/endPages.pdf"));
}
}
IronPDF也可以輕鬆合併 PDF 文件。
概括
本文探討了 Java 程式如何使用IronPDF庫開啟現有的 PDF 文件並將 PDF 文件拆分為多個 PDF 文件。
IronPDF讓開發人員在 Java 中處理 PDF 文件時變得輕鬆許多。 無論您是想建立新文檔還是處理現有的 PDF 文檔, IronPDF都能幫助您用幾乎一行程式碼完成所有與 PDF 相關的任務。
您可以免費在生產環境中使用IronPDF ,也可以透過靈活的選項獲得商業用途的許可。 IronPDF Lite軟體包從 $999 開始。
常見問題解答
如何在Java中分割PDF檔案而不遺失格式?
在 Java 中使用IronPDF ,您可以利用copyPage方法將 PDF 檔案拆分為單獨的頁面,而不會遺失格式,從而建立單獨的 PDF 文件。
如何設定用於分割 PDF 的 Java 專案?
若要設定使用IronPDF分割 PDF 的 Java 項目,請確保已安裝 JDK 和 Maven,然後將IronPDF作為依賴項新增至您的 Maven 專案中。導入必要的類,例如com.ironsoftware.ironpdf.PdfDocument 。
是否可以在 Java 中按頁面範圍分割 PDF 檔案?
是的,使用 IronPDF 的copyPages方法,您可以透過指定頁面範圍輕鬆地將 PDF 拆分為多個單獨的 PDF 文件(在 Java 中)。
在 Java 中分割 PDF 檔案時,如何處理受密碼保護的 PDF 檔案?
IronPDF允許您透過將密碼作為參數傳遞給fromFile方法來處理受密碼保護的 PDF 文件,從而允許您存取和分割文件。
IronPDF除了分割 PDF 文件外,還能用於其他任務嗎?
是的, IronPDF for Java 提供了多種 PDF 操作功能,例如將 PDF 渲染成圖像、提取文字、管理數位簽名和合併 PDF 文件。
如何將IronPDF整合到 Java Maven 專案中?
您可以透過將 IronPDF 的 Maven 依賴項新增至pom.xml檔案中,然後在 Java 程式碼中匯入必要的類,將IronPDF整合到 Java Maven 專案中。
在 Java 中使用IronPDF分割 PDF 有什麼好處?
IronPDF透過提供copyPage和copyPages等易於使用的方法,簡化了 Java 中分割 PDF 的流程,確保高效的 PDF 管理,同時不會遺失文件格式。
IronPDF是否為商業用途提供靈活的許可選項?
是的, IronPDF為商業用途提供靈活的許可選項,同時也提供免費版本用於生產環境,非常適合開發和測試用途。




