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

Generowanie plików PDF za pomocą biblioteki Java (pełny przykład kodu)

W tym artykule omówimy bibliotekę IronPDF, doskonałe narzędzie do tworzenia plików PDF w języku Java.

IronPDF: biblioteka PDF dla języka Java

IronPDF to popularna biblioteka Java do obsługi plików PDF, która pozwala programistom w łatwy sposób tworzyć dokumenty PDF, formularze PDF, podpisywać cyfrowo pliki PDF i nie tylko. Dzięki IronPDF możesz używać istniejących dokumentów PDF jako szablonów do generowania nowych plików PDF, przechowywać dane PDF w bazach danych do wykorzystania w przyszłości, konwertować pliki PDF na inne formaty, takie jak HTML, a nawet łączyć wiele plików PDF w jeden.

IronPDF pozwala użytkownikom dodawać adnotacje tekstowe do plików PDF w celu personalizacji tworzonych plików. Ponadto dzięki IronPDF można dołączać do plików PDF ustawienia zabezpieczeń, takie jak hasła lub znaki wodne. Pomaga to w integracji funkcji PDF z programami Java. IronPDF to niezwykle wszechstronne i potężne narzędzie do szybkiego i bezpiecznego generowania plików PDF. Zobaczmy, jak można wykorzystać IronPDF do tworzenia plików PDF.

Generowanie plików PDF za pomocą IronPDF

IronPDF to nieocenione narzędzie do tworzenia plików PDF. Posiada wszystkie funkcje potrzebne do szybkiej konwersji dokumentów, stron internetowych i obrazów na stabilne, bezpieczne pliki PDF, które można łatwo udostępniać. Zainstalujmy IronPDF w tym programie demonstracyjnym.

Zainstaluj bibliotekę IronPDF Java PDF

Aby zainstalować IronPDF for Java w projekcie Maven, możesz dodać następujące zależności do pliku pom.xml swojego projektu:

<dependencies>

    <dependency>
        <groupId>com.ironsoftware</groupId>
        <artifactId>ironpdf</artifactId>
        <version>YOUR-VERSION-HERE</version>
    </dependency>

    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>YOUR-VERSION-HERE</version>
    </dependency>
</dependencies>
<dependencies>

    <dependency>
        <groupId>com.ironsoftware</groupId>
        <artifactId>ironpdf</artifactId>
        <version>YOUR-VERSION-HERE</version>
    </dependency>

    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>YOUR-VERSION-HERE</version>
    </dependency>
</dependencies>
XML

Spowoduje to dodanie biblioteki IronPDF for Java oraz używanego przez nią loggera SLF4J. Zaleca się korzystanie z najnowszej wersji IronPDF for Java. Po dodaniu zależności można uruchomić mvn install, aby zainstalować je w lokalnym repozytorium, a projekt będzie gotowy do korzystania z IronPDF for Java.

Kod Java do tworzenia dokumentów PDF

Ten kod jest napisany w Javie i wykorzystuje bibliotekę IronPDF do konwersji HTML na dokument PDF.

// Import statement for IronPDF Java  
import com.ironsoftware.ironpdf.*;

import java.io.IOException;
import java.nio.file.Paths;

public class Main {
    public static void main(String[] args) throws IOException {
        // Apply your license key
        License.setLicenseKey("YOUR-LICENSE-KEY");

        // Set a log path to store log files generated by IronPDF
        Settings.setLogPath(Paths.get("C:/tmp/IronPdfEngine.log"));

        // Define the HTML content to convert into a PDF
        String html = "<!DOCTYPE html>\r\n"
                + "<html>\r\n"
                + "  <head>\r\n"
                + "    <link href='https://fonts.googleapis.com/css2?family=Popin&display=swap' rel='stylesheet'>\r\n"
                + "    <style>\r\n"
                + "      /* Add CSS styles for the invoice here */\r\n"
                + "      body {\r\n"
                + "        font-family: 'Popin', cursive;\r\n"
                + "      }\r\n"
                + "      .invoice {\r\n"
                + "        width: 80%;\r\n"
                + "        margin: 0 auto;\r\n"
                + "        border: 1px solid #ccc;\r\n"
                + "        padding: 20px;\r\n"
                + "        background-color: #f5f5f5;\r\n"
                + "        color: #333;\r\n"
                + "      }\r\n"
                + "      .invoice h1 {\r\n"
                + "        text-align: center;\r\n"
                + "      }\r\n"
                + "      .invoice .invoice-info {\r\n"
                + "        display: flex;\r\n"
                + "        justify-content: space-between;\r\n"
                + "        margin-bottom: 20px;\r\n"
                + "      }\r\n"
                + "      .invoice .invoice-info div {\r\n"
                + "        width: 45%;\r\n"
                + "      }\r\n"
                + "      .invoice table {\r\n"
                + "        width: 100%;\r\n"
                + "        border-collapse: collapse;\r\n"
                + "      }\r\n"
                + "      .invoice table th, .invoice table td {\r\n"
                + "        border: 1px solid #ccc;\r\n"
                + "        padding: 10px;\r\n"
                + "      }\r\n"
                + "      .invoice table th {\r\n"
                + "        text-align: left;\r\n"
                + "        background-color: #f5f5f5;\r\n"
                + "      }\r\n"
                + "      .invoice table td {\r\n"
                + "        text-align: right;\r\n"
                + "      }\r\n"
                + "      .invoice table td.total {\r\n"
                + "        font-weight: bold;\r\n"
                + "      }\r\n"
                + "    </style>\r\n"
                + "  </head>\r\n"
                + "  <body>\r\n"
                + "    <div class=\"invoice\">\r\n"
                + "      <h1>Invoice</h1>\r\n"
                + "      <div class=\"invoice-info\">\r\n"
                + "        <div>\r\n"
                + "          <p><strong>From:</strong></p>\r\n"
                + "          <p>Your Company Name</p>\r\n"
                + "          <p>123 Main St</p>\r\n"
                + "          <p>City, State ZIP</p>\r\n"
                + "        </div>\r\n"
                + "        <div>\r\n"
                + "          <p><strong>To:</strong></p>\r\n"
                + "          <p>Customer Name</p>\r\n"
                + "          <p>456 Park Ave</p>\r\n"
                + "          <p>City, State ZIP</p>\r\n"
                + "        </div>\r\n"
                + "      </div>\r\n"
                + "      <table>\r\n"
                + "        <thead>\r\n"
                + "          <tr>\r\n"
                + "            <th>Product</th>\r\n"
                + "            <th>Quantity</th>\r\n"
                + "            <th>Price</th>\r\n"
                + "            <th>Total</th>\r\n"
                + "          </tr>\r\n"
                + "        </thead>\r\n"
                + "        <tbody>\r\n"
                + "          <tr>\r\n"
                + "            <td>Product 1</td>\r\n"
                + "            <td>1</td>\r\n"
                + "            <td>$10.00</td>\r\n"
                + "            <td>$10.00</td>\r\n"
                + "          </tr>\r\n"
                + "          <tr>\r\n"
                + "            <td>Product 2</td>\r\n"
                + "            <td>2</td>\r\n"
                + "            <td>$5.00</td>\r\n"
                + "            <td>$10.00</td>\r\n"
                + "          </tr>\r\n"
                + "          <tr>\r\n"
                + "            <td colspan=\"3\" class=\"total\">Total:</td>\r\n"
                + "            <td class=\"total\">$20.00</td>\r\n"
                + "          </tr>\r\n"
                + "        </tbody>\r\n"
                + "      </table>\r\n"
                + "    </div>\r\n"
                + "  </body>\r\n"
                + "</html>";

        // Convert HTML to PDF document
        PdfDocument myPdf = PdfDocument.renderHtmlAsPdf(html);

        // Save the PDF document to a specified path
        myPdf.saveAs(Paths.get("C://HTMLtoPDF.pdf"));
    }
}
// Import statement for IronPDF Java  
import com.ironsoftware.ironpdf.*;

import java.io.IOException;
import java.nio.file.Paths;

public class Main {
    public static void main(String[] args) throws IOException {
        // Apply your license key
        License.setLicenseKey("YOUR-LICENSE-KEY");

        // Set a log path to store log files generated by IronPDF
        Settings.setLogPath(Paths.get("C:/tmp/IronPdfEngine.log"));

        // Define the HTML content to convert into a PDF
        String html = "<!DOCTYPE html>\r\n"
                + "<html>\r\n"
                + "  <head>\r\n"
                + "    <link href='https://fonts.googleapis.com/css2?family=Popin&display=swap' rel='stylesheet'>\r\n"
                + "    <style>\r\n"
                + "      /* Add CSS styles for the invoice here */\r\n"
                + "      body {\r\n"
                + "        font-family: 'Popin', cursive;\r\n"
                + "      }\r\n"
                + "      .invoice {\r\n"
                + "        width: 80%;\r\n"
                + "        margin: 0 auto;\r\n"
                + "        border: 1px solid #ccc;\r\n"
                + "        padding: 20px;\r\n"
                + "        background-color: #f5f5f5;\r\n"
                + "        color: #333;\r\n"
                + "      }\r\n"
                + "      .invoice h1 {\r\n"
                + "        text-align: center;\r\n"
                + "      }\r\n"
                + "      .invoice .invoice-info {\r\n"
                + "        display: flex;\r\n"
                + "        justify-content: space-between;\r\n"
                + "        margin-bottom: 20px;\r\n"
                + "      }\r\n"
                + "      .invoice .invoice-info div {\r\n"
                + "        width: 45%;\r\n"
                + "      }\r\n"
                + "      .invoice table {\r\n"
                + "        width: 100%;\r\n"
                + "        border-collapse: collapse;\r\n"
                + "      }\r\n"
                + "      .invoice table th, .invoice table td {\r\n"
                + "        border: 1px solid #ccc;\r\n"
                + "        padding: 10px;\r\n"
                + "      }\r\n"
                + "      .invoice table th {\r\n"
                + "        text-align: left;\r\n"
                + "        background-color: #f5f5f5;\r\n"
                + "      }\r\n"
                + "      .invoice table td {\r\n"
                + "        text-align: right;\r\n"
                + "      }\r\n"
                + "      .invoice table td.total {\r\n"
                + "        font-weight: bold;\r\n"
                + "      }\r\n"
                + "    </style>\r\n"
                + "  </head>\r\n"
                + "  <body>\r\n"
                + "    <div class=\"invoice\">\r\n"
                + "      <h1>Invoice</h1>\r\n"
                + "      <div class=\"invoice-info\">\r\n"
                + "        <div>\r\n"
                + "          <p><strong>From:</strong></p>\r\n"
                + "          <p>Your Company Name</p>\r\n"
                + "          <p>123 Main St</p>\r\n"
                + "          <p>City, State ZIP</p>\r\n"
                + "        </div>\r\n"
                + "        <div>\r\n"
                + "          <p><strong>To:</strong></p>\r\n"
                + "          <p>Customer Name</p>\r\n"
                + "          <p>456 Park Ave</p>\r\n"
                + "          <p>City, State ZIP</p>\r\n"
                + "        </div>\r\n"
                + "      </div>\r\n"
                + "      <table>\r\n"
                + "        <thead>\r\n"
                + "          <tr>\r\n"
                + "            <th>Product</th>\r\n"
                + "            <th>Quantity</th>\r\n"
                + "            <th>Price</th>\r\n"
                + "            <th>Total</th>\r\n"
                + "          </tr>\r\n"
                + "        </thead>\r\n"
                + "        <tbody>\r\n"
                + "          <tr>\r\n"
                + "            <td>Product 1</td>\r\n"
                + "            <td>1</td>\r\n"
                + "            <td>$10.00</td>\r\n"
                + "            <td>$10.00</td>\r\n"
                + "          </tr>\r\n"
                + "          <tr>\r\n"
                + "            <td>Product 2</td>\r\n"
                + "            <td>2</td>\r\n"
                + "            <td>$5.00</td>\r\n"
                + "            <td>$10.00</td>\r\n"
                + "          </tr>\r\n"
                + "          <tr>\r\n"
                + "            <td colspan=\"3\" class=\"total\">Total:</td>\r\n"
                + "            <td class=\"total\">$20.00</td>\r\n"
                + "          </tr>\r\n"
                + "        </tbody>\r\n"
                + "      </table>\r\n"
                + "    </div>\r\n"
                + "  </body>\r\n"
                + "</html>";

        // Convert HTML to PDF document
        PdfDocument myPdf = PdfDocument.renderHtmlAsPdf(html);

        // Save the PDF document to a specified path
        myPdf.saveAs(Paths.get("C://HTMLtoPDF.pdf"));
    }
}
JAVA
  • Pierwszym krokiem jest zastosowanie klucza licencyjnego przy użyciu metody setLicenseKey. Klucz jest przekazywany jako argument typu string; W tym przypadku "YOUR-LICENSE-KEY" należy zastąpić rzeczywistym kluczem licencyjnym.
  • Następnym krokiem jest ustawienie ścieżki logów przy użyciu metody setLogPath. W tym miejscu zostanie zapisany plik dziennika silnika IronPDF. W tym przypadku jest to "C:/tmp/IronPdfEngine.log".
  • Zdefiniowano metodę główną i utworzono obiekt PdfDocument poprzez wywołanie metody renderHtmlAsPdf, przekazując jako argument ciąg znaków HTML. Spowoduje to konwersję kodu HTML do formatu PDF i zapisanie go w obiekcie myPdf.
  • Ostatnim krokiem jest zapisanie obiektu myPdf do pliku za pomocą metody saveAs. Lokalizacja pliku jest przekazywana jako argument w postaci obiektu Paths, w tym przypadku "HTMLtoPDF.pdf".

Tutaj można zobaczyć wynik działania powyższego programu, w którym plik PDF jest tworzony przy użyciu biblioteki IronPDF Java PDF.

Biblioteka Java do generowania plików PDF (pełny przykład kodu), rysunek 1: Plik PDF wygenerowany na podstawie ciągu znaków HTML Plik PDF wygenerowany na podstawie ciągu znaków HTML

Utwórz plik PDF z adresu URL

IronPDF może renderować strony internetowe do plików PDF z różnych źródeł, w tym z sieci lokalnych i serwerów zewnętrznych.

import com.ironsoftware.ironpdf.*;

import java.io.IOException;
import java.nio.file.Paths;

public class UrlToPdfExample {
    public static void main(String[] args) throws IOException {
        // Apply your license key
        License.setLicenseKey("YOUR-LICENSE-KEY");

        // Set a log path to store log files generated by IronPDF
        Settings.setLogPath(Paths.get("C:/tmp/IronPdfEngine.log"));

        // Convert a webpage to a PDF by specifying the URL
        PdfDocument myPdf = PdfDocument.renderUrlAsPdf("https://ironpdf.com");

        // Save the PdfDocument to a file
        myPdf.saveAs(Paths.get("url.pdf"));
    }
}
import com.ironsoftware.ironpdf.*;

import java.io.IOException;
import java.nio.file.Paths;

public class UrlToPdfExample {
    public static void main(String[] args) throws IOException {
        // Apply your license key
        License.setLicenseKey("YOUR-LICENSE-KEY");

        // Set a log path to store log files generated by IronPDF
        Settings.setLogPath(Paths.get("C:/tmp/IronPdfEngine.log"));

        // Convert a webpage to a PDF by specifying the URL
        PdfDocument myPdf = PdfDocument.renderUrlAsPdf("https://ironpdf.com");

        // Save the PdfDocument to a file
        myPdf.saveAs(Paths.get("url.pdf"));
    }
}
JAVA
  • Metoda PdfDocument.renderUrlAsPdf została zaprojektowana specjalnie do tego celu i przyjmuje ciąg znaków zawierający adres URL strony internetowej, która ma zostać przekonwertowana. Metoda pobiera zawartość HTML strony internetowej i przekształca ją w dokument PDF. IronPDF zachowuje wygląd wszystkich elementów stron internetowych, zapewniając jednocześnie funkcjonalność elementów interaktywnych (linków, pól formularzy itp.).

Poniżej przedstawiono wyniki:

Biblioteka Java do generowania plików PDF (pełny przykład kodu), rysunek 2: Plik PDF wygenerowany na podstawie adresu URL Plik PDF wygenerowany z adresu URL

Podsumowanie

Podsumowując, IronPDF to cenna biblioteka Java z wieloma funkcjami do tworzenia i edycji plików PDF. Niezależnie od tego, czy chcesz podpisać cyfrowo dokument PDF, wypełnić formularze PDF, czy wykonać inne zadania, IronPDF ułatwia to przy minimalnym nakładzie kodowania.

Dzięki dostępnej bezpłatnej wersji próbnej i elastycznym opcjom cenowym zaczynającym się od $799, IronPDF jest opłacalnym rozwiązaniem dla programistów pragnących dodać funkcjonalność PDF do swoich projektów.

Często Zadawane Pytania

Jak utworzyć dokument PDF w Javie?

Korzystając z IronPDF, można tworzyć dokumenty PDF w języku Java, wykorzystując jego rozbudowany interfejs API do generowania nowych plików PDF od podstaw lub konwertowania istniejących dokumentów do formatu PDF.

Jak wygląda proces konwersji HTML do PDF w Javie?

Aby przekonwertować HTML na PDF w Javie, IronPDF udostępnia metodę renderHtmlAsPdf, która pozwala wprowadzić ciąg znaków HTML i otrzymać dokument PDF jako wynik.

Jak przekonwertować adres URL strony internetowej na plik PDF w aplikacji Java?

IronPDF umożliwia konwersję adresu URL strony internetowej do formatu PDF za pomocą metody renderUrlAsPdf. Metoda ta pobiera zawartość HTML z adresu URL i konwertuje ją na dokument PDF.

Czy mogę podpisywać cyfrowo dokumenty PDF za pomocą biblioteki Java?

Tak, IronPDF umożliwia cyfrowe podpisywanie dokumentów PDF, zapewniając autentyczność i integralność dokumentu.

Jak mogę dodać funkcje zabezpieczeń do pliku PDF za pomocą Javy?

IronPDF oferuje funkcje bezpieczeństwa, takie jak ochrona hasłem i znaki wodne, które można zastosować do plików PDF w celu zwiększenia ich bezpieczeństwa.

Jakie kroki należy wykonać, aby zainstalować bibliotekę PDF w projekcie Maven?

Aby zainstalować IronPDF w projekcie Maven, należy dodać zależność IronPDF oraz zależność logowania SLF4J do pliku pom.xml, a następnie wykonać polecenie mvn install.

Jak mogę modyfikować istniejące pliki PDF za pomocą Javy?

IronPDF umożliwia manipulowanie istniejącymi plikami PDF, udostępniając metody edycji tekstu, scalania dokumentów, dodawania adnotacji oraz stosowania podpisów cyfrowych.

Czy istnieje możliwość przetestowania funkcji IronPDF przed zakupem?

Tak, IronPDF oferuje bezpłatną wersję próbną, która pozwala programistom przetestować jego funkcje przed podjęciem decyzji o zakupie.

Jakie są zalety korzystania z biblioteki PDF w Javie?

Korzystanie z biblioteki PDF, takiej jak IronPDF w Javie, usprawnia proces tworzenia, edycji i konwersji plików PDF, zmniejszając potrzebę rozbudowanego kodowania i poprawiając wydajność.

Jak mogę połączyć wiele plików PDF w jeden za pomocą Javy?

IronPDF zawiera funkcję łączenia wielu plików PDF w jeden dokument, co ułatwia konsolidację wielu plików PDF w jeden plik.

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