Przejdź do treści stopki
KORZYSTANIE Z IRONPDF FOR JAVA

Java PDF Stamper (samouczek dla początkujących)

IronPDF — biblioteka PDF dla języka Java

IronPDF to biblioteka Java do generowania, odczytu i edycji dokumentów PDF. Umożliwia użytkownikom łatwą i dokładną pracę z dokumentami PDF. IronPDF for Java opiera się na sukcesie IronPDF for .NET i zapewnia wydajność na różnych platformach. IronPDF for Java wykorzystuje IronPdfEngine, który jest szybki i zoptymalizowany pod kątem wydajności.

IronPDF pomaga wyodrębniać tekst i obrazy z plików PDF oraz inne obiekty z plików PDF. Pomaga tworzyć pliki PDF na podstawie ciągów znaków HTML, adresów URL i obrazów. Umożliwia również konwersję między różnymi formatami plików. Możesz łatwo dodawać nowe treści oraz podpisy cyfrowe do plików PDF wraz z metadanymi dokumentu do istniejących dokumentów PDF. Jest przeznaczony specjalnie dla Java 8+, Scala i Kotlin, na dowolnych platformach Windows, Linux i chmurowych.

Kroki tworzenia PDF Stamper przy użyciu IronPDF w aplikacji Java

Wymagania wstępne

Aby stworzyć PDF Stamper, potrzebne są następujące elementy:

1. Środowisko IDE dla języka Java

Możesz użyć dowolnego środowiska IDE obsługującego Javę. Istnieje wiele środowisk IDE dostępnych do programowania w Javie. W tej demonstracji zostanie użyte środowisko IntelliJ IDE. Można używać NetBeans, Eclipse itp.

2. Projekt Maven

Maven to menedżer zależności, który umożliwia kontrolę nad projektem Java. Maven dla języka Java można pobrać z oficjalnej strony internetowej Maven. Środowisko IntelliJ IDE dla języka Java obsługuje Maven.

3. IronPDF

IronPDF for Java można pobrać i zainstalować na wiele sposobów.

  • Dodanie zależności IronPDF w pliku pom.xml w projekcie Maven.
<dependency>
    <groupId>com.ironsoftware</groupId>
    <artifactId>ironpdf</artifactId>
    <version>LATEST_VERSION</version> 
</dependency>
<dependency>
    <groupId>com.ironsoftware</groupId>
    <artifactId>ironpdf</artifactId>
    <version>LATEST_VERSION</version> 
</dependency>
XML

4. Slf4j

Ta zależność jest również wymagana do umieszczania treści w istniejącym dokumencie PDF. Można ją dodać za pomocą menedżera zależności Maven w IntelliJ lub pobrać bezpośrednio ze strony internetowej Maven. Dodaj następującą zależność do pliku pom.xml:

<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-simple</artifactId>
    <version>2.0.5</version>
</dependency>
<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-simple</artifactId>
    <version>2.0.5</version>
</dependency>
XML

Dodawanie niezbędnych importów

Po zainstalowaniu wszystkich wymaganych elementów kolejnym krokiem jest zaimportowanie niezbędnych pakietów IronPDF do pracy z dokumentami PDF. Dodaj następujący kod na początku pliku Main.java:

import com.ironsoftware.ironpdf.License;
import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.edit.PageSelection;
import com.ironsoftware.ironpdf.metadata.MetadataManager;
import com.ironsoftware.ironpdf.security.PdfPrintSecurity;
import com.ironsoftware.ironpdf.security.SecurityManager;
import com.ironsoftware.ironpdf.security.SecurityOptions;
import com.ironsoftware.ironpdf.stamp.*;

import java.io.IOException;
import java.nio.file.Paths;
import java.util.Date;
import com.ironsoftware.ironpdf.License;
import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.edit.PageSelection;
import com.ironsoftware.ironpdf.metadata.MetadataManager;
import com.ironsoftware.ironpdf.security.PdfPrintSecurity;
import com.ironsoftware.ironpdf.security.SecurityManager;
import com.ironsoftware.ironpdf.security.SecurityOptions;
import com.ironsoftware.ironpdf.stamp.*;

import java.io.IOException;
import java.nio.file.Paths;
import java.util.Date;
JAVA

Klucz licencyjny

Niektóre metody dostępne w IronPDF wymagają licencji do korzystania. Możesz kupić licencję lub wypróbować IronPDF za darmo dzięki licencji Trial. Klucz można ustawić w następujący sposób:

// Set the IronPDF license key
License.setLicenseKey("YOUR-KEY");
// Set the IronPDF license key
License.setLicenseKey("YOUR-KEY");
JAVA

Otwórz istniejący dokument PDF

Aby zaimportować istniejący dokument w celu umieszczenia w nim nowej treści, używa się klasy PdfDocument. Jej statyczna metoda fromFile służy do ładowania pliku z określonej ścieżki o rzeczywistej nazwie pliku. Kod wygląda następująco:

// Load an existing PDF document
PdfDocument pd = PdfDocument.fromFile(Paths.get("sample.pdf"));
// Load an existing PDF document
PdfDocument pd = PdfDocument.fromFile(Paths.get("sample.pdf"));
JAVA

Załadowano oryginalny dokument:

Java PDF Stamper (samouczek dla początkujących), rysunek 1: Przykładowy dokument
Przykładowy dokument

Dodaj nową treść HTML

IronPDF oferuje pakiet stempli. Umożliwia to szereg przydatnych opcji znakowania, takich jak BarcodeStamper, HtmlStamper, ImageStamper, TextStamper i inne, służących do wyrównywania treści. Aby dodać nową treść HTML do tego dokumentu PDF, zostanie użyta klasa HtmlStamper. Wykorzystajmy plik z poprzedniej sekcji i dodajmy do niego trochę treści. Poniższy kod pomaga w realizacji tego zadania:

// Create an HtmlStamper and set its content
HtmlStamper htmlStamper = new HtmlStamper();
htmlStamper.setHtml("New content added!");
// Create an HtmlStamper and set its content
HtmlStamper htmlStamper = new HtmlStamper();
htmlStamper.setHtml("New content added!");
JAVA

Tworzony jest obiekt HtmlStamper, a następnie używana jest jego metoda setHtml w celu dołączenia nowego kodu HTML. Kolejnym krokiem jest zastosowanie go do istniejącego dokumentu PDF w celu utworzenia nowej wersji PDF.

Dodawanie wszystkich elementów interaktywnych do dokumentu PDF

Użycie obiektu PdfDocument utworzonego wcześniej w celu dodania kodu HTML do istniejącego dokumentu. Zapewnia applyStamp dwa przeciążenia, jedno akceptujące wyłącznie treść jako obiekt Stamper, a drugie również z możliwością wyboru strony.

// Apply the stamper to the PDF document
pd.applyStamp(htmlStamper);
// Apply the stamper to the PDF document
pd.applyStamp(htmlStamper);
JAVA

Spowoduje to dodanie opisu ciągu znaków do istniejącego dokumentu.

Zapisywanie zmian w pliku PDF

Aby zapisać plik, należy użyć metody saveAs obiektu PdfDocument.

// Save the modified PDF document
pd.saveAs("stamped.pdf");
// Save the modified PDF document
pd.saveAs("stamped.pdf");
JAVA

Java PDF Stamper (samouczek dla początkujących), rysunek 2: Plik PDF z nadrukiem
Plik PDF z pieczęcią

Ciąg HTML jest dodawany do każdej strony dokumentu PDF oraz w środkowej części każdej strony.

Stempel na określonych stronach

Możesz użyć innego przeciążenia metody applyStamp, aby dodać treść do konkretnej strony.

// Stamp content to a specific page
pd.applyStamp(htmlStamper, PageSelection.singlePage(1));
// Stamp content to a specific page
pd.applyStamp(htmlStamper, PageSelection.singlePage(1));
JAVA

Klasa PageSelection udostępnia różne metody do sterowania numerem strony. firstPage, lastPage, allPages oraz pageRange to niektóre z metod dostępnych w celu odpowiedniego dodania treści.

Dostosowanie treści

Można używać metod setVerticalAlignment, setHorizontalAlignment, setWidth, setHeight w każdej klasie Stamper, aby dostosować położenie treści dodanej do istniejącego dokumentu PDF. Poniższy przykładowy kod pomoże umieścić tekst w lewym dolnym rogu strony:

// Set the alignment of the stamper
htmlStamper.setHorizontalAlignment(HorizontalAlignment.LEFT);
htmlStamper.setVerticalAlignment(VerticalAlignment.BOTTOM);
// Set the alignment of the stamper
htmlStamper.setHorizontalAlignment(HorizontalAlignment.LEFT);
htmlStamper.setVerticalAlignment(VerticalAlignment.BOTTOM);
JAVA

Java PDF Stamper (samouczek dla początkujących), rysunek 3: Plik PDF z wynikiem z wyrównaniem stempla
Plik PDF z wyrównaniem stempla

Możesz użyć metod setVerticalOffset, setHorizontalOffset, aby dodatkowo dostosować rozmieszczenie treści.

Aby uzyskać więcej informacji na temat pracy z plikami PDF przy użyciu IronPDF, zapoznaj się z tym przykładem kodu służącym do konwersji HTML na PDF w Javie.

Dodawanie metadanych, podpisu i opcji zabezpieczeń do istniejącego dokumentu

IronPDF for Java to wszechstronna biblioteka, która umożliwia dodawanie opisów plików w postaci metadanych, uprawnień użytkownika, hasła użytkownika, dodawanie podpisu cyfrowego oraz tworzenie podpisanych dokumentów w celu zapisania wersji dokumentu PDF.

Metadane

// Edit file metadata
MetadataManager metadata = pd.getMetadata();
metadata.setAuthor("Satoshi Nakamoto");
metadata.setKeywords("SEO, Friendly");
metadata.setModifiedDate(new Date().toString());
// Edit file metadata
MetadataManager metadata = pd.getMetadata();
metadata.setAuthor("Satoshi Nakamoto");
metadata.setKeywords("SEO, Friendly");
metadata.setModifiedDate(new Date().toString());
JAVA

Opcje bezpieczeństwa

Możesz również kontrolować opcje zabezpieczeń pliku PDF, aby chronić dane przed nieuprawnionym użyciem. Oferuje opcje ustawiania setAllowUserPrinting, setAllowUserEdits, setAllowUserCopyPasteContent, setAllowUserAnnotations, setUserPassword, setAllowUserFormData na true lub false. Poniższy przykładowy kod pomoże ustawić wszystkie wspomniane powyżej właściwości obiektów.

// Edit file security settings
SecurityOptions securityOptions = new SecurityOptions();
securityOptions.setAllowUserCopyPasteContent(false);
securityOptions.setAllowUserAnnotations(false);
securityOptions.setAllowUserPrinting(PdfPrintSecurity.FULL_PRINT_RIGHTS);
securityOptions.setAllowUserFormData(false);
securityOptions.setOwnerPassword("top-secret");
securityOptions.setUserPassword("sharable");
// Edit file security settings
SecurityOptions securityOptions = new SecurityOptions();
securityOptions.setAllowUserCopyPasteContent(false);
securityOptions.setAllowUserAnnotations(false);
securityOptions.setAllowUserPrinting(PdfPrintSecurity.FULL_PRINT_RIGHTS);
securityOptions.setAllowUserFormData(false);
securityOptions.setOwnerPassword("top-secret");
securityOptions.setUserPassword("sharable");
JAVA

Hasło użytkownika

// Change or set the document encryption password
SecurityManager securityManager = pd.getSecurity();
securityManager.removePasswordsAndEncryption();
securityManager.makePdfDocumentReadOnly("secret-key");

securityManager.setSecurityOptions(securityOptions);
pd.saveAs(Paths.get("assets/secured.pdf"));
// Change or set the document encryption password
SecurityManager securityManager = pd.getSecurity();
securityManager.removePasswordsAndEncryption();
securityManager.makePdfDocumentReadOnly("secret-key");

securityManager.setSecurityOptions(securityOptions);
pd.saveAs(Paths.get("assets/secured.pdf"));
JAVA

Aby umieścić podpisy cyfrowe na samym pliku, zapoznaj się z tym szczegółowym przykładem kodu dotyczącym podpisów PDF.

Podsumowanie

W tym artykule omówiono, jak umieścić pieczątkę na istniejącym dokumencie PDF w języku Java. Dostępny jest pakiet stempli zawierający szereg przydatnych klas stempli, które można wykorzystać do dodania treści w wielu formatach do pliku PDF w dowolnym miejscu oryginalnego dokumentu.

IronPDF jest biblioteką wszechstronną, co widać również na powyższych przykładach kodu. Jest to dość proste, ale jednocześnie bardzo potężne narzędzie do generowania i edycji plików PDF. Pomaga to programistom w łatwej integracji wszystkich funkcji PDF w jednej aplikacji Java.

IronPDF jest bezpłatny do użytku w ramach pojedynczego projektu i oferuje bezplatną licencję probną bez znaku wodnego, umożliwiającą przetestowanie pełnej funkcjonalności. Jednak w przypadku wykorzystania komercyjnego należy uzyskać licencję od IronPDF.

Ponadto firma IronPDF oferuje specjalną promocję na Suite Iron Software, w ramach której programiści mogą nabyć wszystkie pięć produktów Iron Software w cenie dwóch licencji.

Często Zadawane Pytania

Jak mogę dodać treść do istniejącego dokumentu PDF w Javie?

Możesz użyć klasy HtmlStamper z biblioteki IronPDF for Java, aby dodać zawartość HTML do istniejącego dokumentu PDF. Klasa ta pozwala na integrację nowej zawartości przy zachowaniu oryginalnego formatowania.

Jakie są główne kroki tworzenia narzędzia do stemplowania plików PDF w Javie?

Aby utworzyć narzędzie do stemplowania plików PDF przy użyciu IronPDF for Java, należy skonfigurować środowisko Java IDE, utworzyć projekt Maven do zarządzania zależnościami oraz dołączyć bibliotekę IronPDF. Następnie należy zaimportować niezbędne klasy, zainicjować licencję, otworzyć istniejący plik PDF i użyć HtmlStamper do dodania treści.

Jak mogę zapewnić zachowanie formatowania pliku PDF podczas dodawania nowej treści?

IronPDF for Java zachowuje oryginalne formatowanie pliku PDF podczas dodawania nowej treści. Jest to możliwe dzięki solidnemu silnikowi renderowania, który dokładnie odtwarza istniejący układ, jednocześnie integrując nowe elementy.

Czy można umieścić stempel tylko na niektórych stronach pliku PDF?

Tak, dzięki IronPDF for Java można użyć metody applyStamp wraz z klasą PageSelection, aby wybrać konkretne strony w pliku PDF do stemplowania.

Jak dostosować położenie treści z pieczątką w dokumencie PDF?

Możesz dostosować położenie treści stemplowanej w pliku PDF, używając metod setVerticalAlignment i setHorizontalAlignment w klasie HtmlStamper, aby kontrolować miejsce pojawienia się nowej treści na stronie.

Jakie funkcje bezpieczeństwa są dostępne dla dokumentów PDF?

IronPDF for Java oferuje kilka funkcji bezpieczeństwa, w tym ustawianie uprawnień użytkowników, dodawanie haseł oraz kontrolowanie dostępu do drukowania, edycji i kopiowania treści w dokumentach PDF.

Czy potrzebuję licencji, aby korzystać z biblioteki PDF w celach komercyjnych?

Tak, do korzystania z IronPDF for Java w celach komercyjnych wymagana jest licencja komercyjna. Dostępna jest jednak bezplatna licencja probna, umożliwiająca przetestowanie pełnej funkcjonalności biblioteki bez znaku wodnego.

Jakie platformy są kompatybilne z IronPDF for Java?

IronPDF for Java jest kompatybilny z Java 8+, Scala, Kotlin i obsługuje różne platformy, w tym systemy Windows, Linux oraz środowiska chmurowe.

Jak przekonwertować zawartość HTML na plik PDF w Javie?

Możesz przekonwertować zawartość HTML na PDF, korzystając z metody RenderHtmlAsPdf biblioteki IronPDF for Java, która pozwala na dokładne renderowanie ciągów znaków lub plików HTML jako dokumentów PDF.

Co jest potrzebne, aby rozpocząć korzystanie z IronPDF for Java w projekcie?

Aby rozpocząć korzystanie z IronPDF for Java, upewnij się, że masz środowisko IDE dla Javy, takie jak IntelliJ, projekt Maven do zarządzania zależnościami oraz bibliotekę IronPDF. Musisz również zaimportować odpowiednie klasy i skonfigurować licencję dla biblioteki.

Darrius Serrant
Full Stack Software Engineer (WebOps)

Darrius Serrant posiada tytuł licencjata z informatyki z Uniwersytetu Miami i pracuje jako Full Stack WebOps Marketing Engineer w Iron Software. Już od młodych lat zainteresował się kodowaniem, postrzegając informatykę jako zarówno tajemniczą, jak i dostępną, co czyni ją doskonałym medium dla kreatywności ...

Czytaj więcej

Zespol wsparcia Iron

Jestesmy online 24 godziny, 5 dni w tygodniu.
Czat
Email
Zadzwon do mnie