Jak dzielić pliki PDF w Javie
W tym artykułe wykorzystamy bibliotekę IronPDF for Java do dzielenia plików PDF na podstawie pliku źródłowego.
Biblioteka IronPDF Java PDF
IronPDF dla Java to biblioteka Java, która stawia na dokładność, łatwość użytkowania i szybkość. Jest specjalnie zaprojektowany dla języka Java i jest łatwy w użyciu podczas pracy z dokumentami PDF. Wszystkie swoje funkcje dziedziczy po uznanej bibliotece IronPDF for .NET Framework. To sprawia, że IronPDF for Java jest wszechstronnym narzędziem do pracy z dokumentami PDF w różnych kontekstach.
IronPDF oferuje programistom metody renderowania dokumentów PDF na obrazy oraz wyodrębniania tekstu i treści z plików PDF. Ponadto IronPDF umożliwia również renderowanie wykresów w plikach PDF, nakładanie znaków wodnych na pliki PDF, pracę z formularzami PDF oraz programowe zarządzanie podpisami cyfrowymi.
Kroki dzielenia plików PDF
Wymagania wstępne dotyczące konfiguracji projektu
Aby IronPDF działał z plikami PDF w projekcie Java Maven, musisz upewnić się, że spełnione są następujące wymagania wstępne:
- JDK (Java Development Kit): Musisz mieć na komputerze aktualną wersję Javy oraz środowisko IDE. Jeśli jej nie masz, pobierz najnowszy JDK ze strony Oracle. Użyj dowolnego środowiska IDE, takiego jak NetBeans, Eclipse lub IntelliJ.
- Maven: Maven to ważne narzędzie stworzone specjalnie dla projektów Java, służące do zarządzania projektem i zależnościami. Jeśli nie masz zainstalowanego Mavena, pobierz go ze strony Apache Maven.
-
Biblioteka IronPDF for Java: Teraz potrzebujesz biblioteki IronPDF for Java. Mozna to zrobic, dodajac nastepujaca zaleznosc do pliku projektu
pom.xml. Maven automatycznie pobierze i zainstaluje ja w projekcie.<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 -
Kolejną wymaganą biblioteką jest SLF4J. Dodaj zaleznosc SLF4J w pliku
pom.xml.<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
Po pobraniu i zainstalowaniu wszystkiego w programie Java do obsługi podzielonych plików PDF możesz zacząć korzystać z biblioteki IronPDF.
Klasy importu
Najpierw zaimportuj wymagane klasy IronPDF do kodu Java. Dodaj następujący kod na początku pliku "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;
Teraz ustaw swoj klucz licencyjny, uzywajac metody IronPDF setLicenseKey() w metodzie Main:
License.setLicenseKey("Your license key");
License.setLicenseKey("Your license key");
Utwórz lub otwórz istniejący plik PDF
Aby podzielić plik PDF na wiele plików jednostronicowych, należy utworzyć plik PDF zawierający wiele stron lub otworzyć plik PDF zawierający wiele stron.
Poniższy przykład kodu pozwoli utworzyć czterostronicowy plik PDF, który można wykorzystać do tej demonstracji.
// 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"));
Dokument PDF wygląda następująco:
Tworzenie nowych plików PDF za pomocą IronPDF
Otwórz plik PDF w celu podziału
Jako alternatywe do poprzedniej sekcji, nastepna proba kodu uzywa metody [PdfDocument.fromFile](/java/object-reference/api/com/ironsoftware/ironpdf/PdfDocument.html#fromFile(java.nio.file.Path) do otwarcia istniejacego pliku PDF za pomoca IronPDF.
// 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"));
Mozesz rowniez otworzyc chroniony haslem plik, podajac haslo dokumentu jako drugi argument do metody [fromFile](/java/object-reference/api/com/ironsoftware/ironpdf/PdfDocument.html#fromFile(java.nio.file.Path).
Podziel plik PDF na wiele plików PDF
Kod służący do dzielenia pliku PDF jest prosty. Wystarczy skopiowac kilka stron z oryginalnego dokumentu, uzywajac metody [copyPage](/java/object-reference/api/com/ironsoftware/ironpdf/PdfDocument.html#copyPage(int), jak pokazano ponizej:
// 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"));
Plik PDF jest dzielony przez przekazanie numeru indeksu jako argumentu do metody copyPage. Następnie zapisz każdą stronę w osobnym pliku.
<div class="competitors-sectionwrapper"> <div class="competitorscard">
Strona 1
<img
class="competitors__image img-popup"
src="/static-assets/pdf/blog/split-pdf-java-tutorial/split-pdf-java-tutorial-2.webp" alt="Strona 1"
data-fullsize="/static-assets/pdf/blog/split-pdf-java-tutorial/split-pdf-java-tutorial-2.webp"
>
</div>
<div class="competitors__card">
<p class="competitors__header">Strona 2</p>
<img
class="competitors__image img-popup"
src="/static-assets/pdf/blog/split-pdf-java-tutorial/split-pdf-java-tutorial-3.webp" alt="Strona 2"
data-fullsize="/static-assets/pdf/blog/split-pdf-java-tutorial/split-pdf-java-tutorial-3.webp"
>
</div>
<div class="competitors__card">
<p class="competitors__header">Strona 3</p>
<img
class="competitors__image img-popup"
src="/static-assets/pdf/blog/split-pdf-java-tutorial/split-pdf-java-tutorial-4.webp" alt="Strona 3"
data-fullsize="/static-assets/pdf/blog/split-pdf-java-tutorial/split-pdf-java-tutorial-4.webp"
>
</div>
<div class="competitors__card">
<p class="competitors__header">Strona 4</p>
<img
class="competitors__image img-popup"
src="/static-assets/pdf/blog/split-pdf-java-tutorial/split-pdf-java-tutorial-5.webp" alt="Strona 4"
data-fullsize="/static-assets/pdf/blog/split-pdf-java-tutorial/split-pdf-java-tutorial-5.webp"
>
</div>
Metoda [copyPages](/java/object-reference/api/com/ironsoftware/ironpdf/PdfDocument.html#copyPages(int,int) moze rowniez podzielic PDF wedlug zakresu stron. Poniżej podzieliliśmy przykładowy plik PDF równo na pół.
// 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"));
Podział pliku PDF na dwie części
Pełny przykład kodu znajduje się poniżej:
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 umożliwia również łatwe łączenie dokumentów PDF.
Podsumowanie
W tym artykułe omówiono, w jaki sposób program napisany w języku Java otwiera istniejący dokument PDF i dzieli plik PDF na wiele plików PDF przy użyciu biblioteki IronPDF.
IronPDF znacznie ułatwia życie programistom pracującym z plikami PDF w Javie. Niezależnie od tego, czy chcesz utworzyć nowy dokument, czy pracować z istniejącymi dokumentami PDF, IronPDF pomaga zrealizować wszystkie zadania związane z plikami PDF za pomocą niemal jednej linii kodu.
Z IronPDF można korzystać w środowisku produkcyjnym za darmo, a na potrzeby komercyjne można uzyskać licencję z elastycznymi opcjami. Pakiet IronPDF Lite zaczyna sie od $999.





