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

Jak stworzyć tabelę w dokumencie PDF przy użyciu Java (Samouczek)

W tym artykule pokażemy, jak tworzyć tabele w dokumencie PDF przy użyciu języka Java.

Do tworzenia tabel w dokumentach PDF za pomocą programu Java niezbędna jest biblioteka zewnętrzna. Dostępnych jest wiele bibliotek, które można wykorzystać do tworzenia tabel w plikach PDF za pomocą programu Java. Mogą one jednak być drogie, trudne w użyciu lub mieć problemy z wydajnością. Znalezienie biblioteki, która jest łatwa w użyciu, bezpłatna dla programistów i działa skutecznie, może być trudne.

IronPDF to biblioteka, która jest bardzo przydatna do manipulowania plikami PDF. Więcej informacji na temat IronPDF można znaleźć, klikając oficjalną stronę IronPDF for Java.

W niniejszym artykule omówiono następujące kroki:

  1. Utwórz nowy projekt
  2. Zainstaluj bibliotekę IronPDF
  3. Utwórz nowy dokument PDF
  4. Utwórz tabelę
  5. Dodaj wartości dynamiczne do dokumentu PDF

Utwórz nowy projekt Java

Otwórz swoje ulubione środowisko IDE. W tym artykule zalecamy IntelliJ, więc kroki tworzenia nowego projektu mogą się różnić w przypadku innego środowiska IDE.

Otwórz środowisko IntelliJ IDE, kliknij Plik > Nowy projekt na górnym pasku menu. Nadaj nazwę projektowi, wybierz lokalizację, język, system kompilacji i JDK, jak pokazano poniżej.

Jak utworzyć tabelę w dokumencie PDF przy użyciu języka Java (samouczek), rysunek 1: Okno nowego projektu w środowisku IntelliJ IDE Okno nowego projektu w środowisku IntelliJ IDE

Kliknij przycisk Utwórz projekt, a zostanie utworzony nowy projekt.

Zainstaluj bibliotekę IronPDF

Teraz zainstaluj bibliotekę IronPDF w nowo utworzonym projekcie. Przejdź do kolejnych kroków.

Otwórz plik pom.xml i dodaj niezbędne zależności oraz repozytoria, aby korzystać z IronPDF. W tym artykule nie podano konkretnej treści dla pom.xml, ale pamiętaj, aby poprawnie dołączyć bibliotekę IronPDF za pomocą zarządzania zależnościami Maven.


<dependencies>

    <dependency>
        <groupId>com.ironsoftware</groupId>
        <artifactId>ironpdf</artifactId>
        <version>VERSION_NUMBER</version>
    </dependency>
</dependencies>

<dependencies>

    <dependency>
        <groupId>com.ironsoftware</groupId>
        <artifactId>ironpdf</artifactId>
        <version>VERSION_NUMBER</version>
    </dependency>
</dependencies>
XML

Wpisz następujące polecenie w terminalu i naciśnij Enter, aby zainstalować określone zależności Maven.

mvn install
mvn install
SHELL

Spowoduje to zainstalowanie IronPDF w tym projekcie.

Dodaj następującą instrukcję importu, aby korzystać z klas IronPDF.

import com.ironsoftware.ironpdf.*;
import com.ironsoftware.ironpdf.*;
JAVA

Na początek nauczymy się tworzyć proste dokumenty PDF w Javie.

Utwórz dokument PDF

Poniższy przykładowy kod utworzy nowy dokument PDF.

public static void main(String[] args) throws IOException {
    // Create a PDF document from an HTML string
    PdfDocument myPdf = PdfDocument.renderHtmlAsPdf("This is a sample PDF file");

    try {
        // Save the created PDF document to a file
        myPdf.saveAs(Paths.get("html_saved.pdf"));
    } catch (IOException e) {
        throw new RuntimeException(e);
    }
}
public static void main(String[] args) throws IOException {
    // Create a PDF document from an HTML string
    PdfDocument myPdf = PdfDocument.renderHtmlAsPdf("This is a sample PDF file");

    try {
        // Save the created PDF document to a file
        myPdf.saveAs(Paths.get("html_saved.pdf"));
    } catch (IOException e) {
        throw new RuntimeException(e);
    }
}
JAVA

Metoda renderHtmlAsPdf przyjmuje ciąg znaków jako argument i konwertuje go na instancję dokumentu PDF.

Funkcja saveAs przyjmuje ścieżkę do pliku jako argument i zapisuje nowo utworzony dokument PDF w ścieżce określonej w argumencie.

Na podstawie powyższego kodu tworzony jest plik PDF, przedstawiony na poniższym obrazku.

Jak utworzyć tabelę w dokumencie PDF przy użyciu języka Java (samouczek), rysunek 2: Nowy dokument PDF Nowy dokument PDF

Utwórz tabelę dla pliku PDF

Poniższy kod utworzy tabelę w formacie PDF.

public static void main(String[] args) throws IOException {
    // HTML content for creating a table
    String tableContent = "<table>\n" +
        "  <tr>\n" +
        "    <th>Company</th>\n" +
        "    <th>Contact</th>\n" +
        "    <th>Country</th>\n" +
        "  </tr>\n" +
        "  <tr>\n" +
        "    <td>Alfreds Futterkiste</td>\n" +
        "    <td>Maria Anders</td>\n" +
        "    <td>Germany</td>\n" +
        "  </tr>\n" +
        "  <tr>\n" +
        "    <td>Centro comercial Moctezuma</td>\n" +
        "    <td>Francisco Chang</td>\n" +
        "    <td>Mexico</td>\n" +
        "  </tr>\n" +
        "  <tr>\n" +
        "    <td>Ernst Handel</td>\n" +
        "    <td>Roland Mendel</td>\n" +
        "    <td>Austria</td>\n" +
        "  </tr>\n" +
        "  <tr>\n" +
        "    <td>Island Trading</td>\n" +
        "    <td>Helen Bennett</td>\n" +
        "    <td>UK</td>\n" +
        "  </tr>\n" +
        "  <tr>\n" +
        "    <td>Laughing Bacchus Winecellars</td>\n" +
        "    <td>Yoshi Tannamuri</td>\n" +
        "    <td>Canada</td>\n" +
        "  </tr>\n" +
        "  <tr>\n" +
        "    <td>Magazzini Alimentari Riuniti</td>\n" +
        "    <td>Giovanni Rovelli</td>\n" +
        "    <td>Italy</td>\n" +
        "  </tr>\n" +
        "</table>";

    // Create a PDF document with table content
    PdfDocument myPdf = PdfDocument.renderHtmlAsPdf("<h1>Example of adding table in a PDF</h1>" + tableContent);

    try {
        // Save the created PDF document to a file
        myPdf.saveAs(Paths.get("html_saved.pdf"));
    } catch (IOException e) {
        throw new RuntimeException(e);
    }
}
public static void main(String[] args) throws IOException {
    // HTML content for creating a table
    String tableContent = "<table>\n" +
        "  <tr>\n" +
        "    <th>Company</th>\n" +
        "    <th>Contact</th>\n" +
        "    <th>Country</th>\n" +
        "  </tr>\n" +
        "  <tr>\n" +
        "    <td>Alfreds Futterkiste</td>\n" +
        "    <td>Maria Anders</td>\n" +
        "    <td>Germany</td>\n" +
        "  </tr>\n" +
        "  <tr>\n" +
        "    <td>Centro comercial Moctezuma</td>\n" +
        "    <td>Francisco Chang</td>\n" +
        "    <td>Mexico</td>\n" +
        "  </tr>\n" +
        "  <tr>\n" +
        "    <td>Ernst Handel</td>\n" +
        "    <td>Roland Mendel</td>\n" +
        "    <td>Austria</td>\n" +
        "  </tr>\n" +
        "  <tr>\n" +
        "    <td>Island Trading</td>\n" +
        "    <td>Helen Bennett</td>\n" +
        "    <td>UK</td>\n" +
        "  </tr>\n" +
        "  <tr>\n" +
        "    <td>Laughing Bacchus Winecellars</td>\n" +
        "    <td>Yoshi Tannamuri</td>\n" +
        "    <td>Canada</td>\n" +
        "  </tr>\n" +
        "  <tr>\n" +
        "    <td>Magazzini Alimentari Riuniti</td>\n" +
        "    <td>Giovanni Rovelli</td>\n" +
        "    <td>Italy</td>\n" +
        "  </tr>\n" +
        "</table>";

    // Create a PDF document with table content
    PdfDocument myPdf = PdfDocument.renderHtmlAsPdf("<h1>Example of adding table in a PDF</h1>" + tableContent);

    try {
        // Save the created PDF document to a file
        myPdf.saveAs(Paths.get("html_saved.pdf"));
    } catch (IOException e) {
        throw new RuntimeException(e);
    }
}
JAVA

Powyższy kod wykorzystuje proste tagi HTML do utworzenia tabeli w formacie PDF przy użyciu języka Java. Aby więc utworzyć tabelę, musisz posiadać podstawową wiedzę na temat używania tagów HTML. Prawie każdy programista Java zna HTML, więc bardzo łatwo jest utworzyć nową tabelę i komórki tabeli za pomocą tagów HTML.

Plik PDF wygenerowany przez ten program pokazano na poniższym obrazku:

Jak utworzyć tabelę w dokumencie PDF przy użyciu języka Java (samouczek), rysunek 3: Dokument PDF zawierający tabelę z kodu HTML Dokument PDF zawierający tabelę z HTML

Jest to prosta tabela bez stylizacji.

Teraz dodajmy do tej tabeli kilka elementów stylizacji, takich jak szerokość tabeli, marginesy, układ, czcionka, kolor tła i inne.

Dodaj styl do tabeli

Poniższy przykładowy kod sformatuje naszą tabelę i doda stylizację do naszych komórek.

public static void main(String[] args) throws IOException {
    // HTML and CSS content for styling the table
    String htmlstyle="<!DOCTYPE html>\n" +
        "<html>\n" +
            "<head>\n" +
                "<style>\n" +
                    "table {\n" +
                    "  font-family: arial, sans-serif;\n" +
                    "  border-collapse: collapse;\n" +
                    "  width: 100%;\n" +
                    "}\n" +
                    "\n" +
                    "td, th {\n" +
                    "  border: 1px solid #dddddd;\n" +
                    "  text-align: left;\n" +
                    "  padding: 8px;\n" +
                    "}\n" +
                    "\n" +
                    "tr:nth-child(even) {\n" +
                    "  background-color: #dddddd;\n" +
                    "}\n" +
                "</style>\n" +
            "</head>\n" +
        "<body>";

    String tableContent = "<table>\n" +
        "  <tr>\n" +
        "    <th>Company</th>\n" +
        "    <th>Contact</th>\n" +
        "    <th>Country</th>\n" +
        "  </tr>\n" +
        "  <tr>\n" +
        "    <td>Alfreds Futterkiste</td>\n" +
        "    <td>Maria Anders</td>\n" +
        "    <td>Germany</td>\n" +
        "  </tr>\n" +
        "  <tr>\n" +
        "    <td>Centro comercial Moctezuma</td>\n" +
        "    <td>Francisco Chang</td>\n" +
        "    <td>Mexico</td>\n" +
        "  </tr>\n" +
        "  <tr>\n" +
        "    <td>Ernst Handel</td>\n" +
        "    <td>Roland Mendel</td>\n" +
        "    <td>Austria</td>\n" +
        "  </tr>\n" +
        "  <tr>\n" +
        "    <td>Island Trading</td>\n" +
        "    <td>Helen Bennett</td>\n" +
        "    <td>UK</td>\n" +
        "  </tr>\n" +
        "  <tr>\n" +
        "    <td>Laughing Bacchus Winecellars</td>\n" +
        "    <td>Yoshi Tannamuri</td>\n" +
        "    <td>Canada</td>\n" +
        "  </tr>\n" +
        "  <tr>\n" +
        "    <td>Magazzini Alimentari Riuniti</td>\n" +
        "    <td>Giovanni Rovelli</td>\n" +
        "    <td>Italy</td>\n" +
        "  </tr>\n" +
        "</table>\n</body>\n" +
        "</html>";

    // Create a PDF document with styled table content
    PdfDocument myPdf = PdfDocument.renderHtmlAsPdf(htmlStyle + "Sample PDF" + tableContent);

    try {
        // Save the created PDF document to a file
        myPdf.saveAs(Paths.get("html_saved.pdf"));
    } catch (IOException e) {
        throw new RuntimeException(e);
    }
}
public static void main(String[] args) throws IOException {
    // HTML and CSS content for styling the table
    String htmlstyle="<!DOCTYPE html>\n" +
        "<html>\n" +
            "<head>\n" +
                "<style>\n" +
                    "table {\n" +
                    "  font-family: arial, sans-serif;\n" +
                    "  border-collapse: collapse;\n" +
                    "  width: 100%;\n" +
                    "}\n" +
                    "\n" +
                    "td, th {\n" +
                    "  border: 1px solid #dddddd;\n" +
                    "  text-align: left;\n" +
                    "  padding: 8px;\n" +
                    "}\n" +
                    "\n" +
                    "tr:nth-child(even) {\n" +
                    "  background-color: #dddddd;\n" +
                    "}\n" +
                "</style>\n" +
            "</head>\n" +
        "<body>";

    String tableContent = "<table>\n" +
        "  <tr>\n" +
        "    <th>Company</th>\n" +
        "    <th>Contact</th>\n" +
        "    <th>Country</th>\n" +
        "  </tr>\n" +
        "  <tr>\n" +
        "    <td>Alfreds Futterkiste</td>\n" +
        "    <td>Maria Anders</td>\n" +
        "    <td>Germany</td>\n" +
        "  </tr>\n" +
        "  <tr>\n" +
        "    <td>Centro comercial Moctezuma</td>\n" +
        "    <td>Francisco Chang</td>\n" +
        "    <td>Mexico</td>\n" +
        "  </tr>\n" +
        "  <tr>\n" +
        "    <td>Ernst Handel</td>\n" +
        "    <td>Roland Mendel</td>\n" +
        "    <td>Austria</td>\n" +
        "  </tr>\n" +
        "  <tr>\n" +
        "    <td>Island Trading</td>\n" +
        "    <td>Helen Bennett</td>\n" +
        "    <td>UK</td>\n" +
        "  </tr>\n" +
        "  <tr>\n" +
        "    <td>Laughing Bacchus Winecellars</td>\n" +
        "    <td>Yoshi Tannamuri</td>\n" +
        "    <td>Canada</td>\n" +
        "  </tr>\n" +
        "  <tr>\n" +
        "    <td>Magazzini Alimentari Riuniti</td>\n" +
        "    <td>Giovanni Rovelli</td>\n" +
        "    <td>Italy</td>\n" +
        "  </tr>\n" +
        "</table>\n</body>\n" +
        "</html>";

    // Create a PDF document with styled table content
    PdfDocument myPdf = PdfDocument.renderHtmlAsPdf(htmlStyle + "Sample PDF" + tableContent);

    try {
        // Save the created PDF document to a file
        myPdf.saveAs(Paths.get("html_saved.pdf"));
    } catch (IOException e) {
        throw new RuntimeException(e);
    }
}
JAVA

Dodany kod CSS służy do stylizacji tabeli w pliku PDF. Dlatego bardzo efektywne jest stosowanie CSS do stylizacji w razie potrzeby.

Poniżej znajduje się plik PDF wygenerowany przez ten program.

Jak utworzyć tabelę w dokumencie PDF przy użyciu języka Java (samouczek), rysunek 4: Dokument PDF zawierający tabelę z kodu HTML i stylizowany za pomocą CSS Dokument PDF zawierający tabelę z HTML i stylizowany za pomocą CSS

Powyższy kod wygląda na bardzo nieuporządkowany. Można to jednak uporządkować, przenosząc całą zawartość HTML do pliku HTML, a następnie generując plik PDF na podstawie tego pliku.

Utwórz tabelę przy użyciu pliku HTML w formacie PDF za pomocą języka Java

Utwórz nowy plik HTML i dodaj do niego całą treść HTML, tak jak pokazano poniżej:

Jak utworzyć tabelę w dokumencie PDF przy użyciu języka Java (samouczek), rysunek 5: Kod HTML przeniesiony do osobnego pliku HTML Kod HTML został przeniesiony do osobnego pliku HTML

Dodaj następujący kod do programu Java.

// Create a PDF document from an HTML file
PdfDocument myPdf = PdfDocument.renderHtmlFileAsPdf("Create_Table.html");

try {
    // Save the created PDF document to a file
    myPdf.saveAs(Paths.get("html_saved.pdf"));
} catch (IOException e) {
    throw new RuntimeException(e);
}
// Create a PDF document from an HTML file
PdfDocument myPdf = PdfDocument.renderHtmlFileAsPdf("Create_Table.html");

try {
    // Save the created PDF document to a file
    myPdf.saveAs(Paths.get("html_saved.pdf"));
} catch (IOException e) {
    throw new RuntimeException(e);
}
JAVA

Możemy zobaczyć, jak łatwo jest wygenerować plik PDF na podstawie dokumentu HTML. Jeśli chcesz utworzyć pliki PDF w Javie, najłatwiejszym sposobem jest stworzenie osobnego dokumentu HTML z treścią i stylem, a następnie po prostu przekonwertowanie tego dokumentu HTML na PDF za pomocą jednej linii kodu.

Jak utworzyć tabelę w dokumencie PDF przy użyciu języka Java (samouczek), rysunek 6: Ostateczny dokument PDF ze stylizacją Ostateczny dokument PDF ze stylizacją

Podsumowanie

W tym samouczku pokazano, jak utworzyć stylizowaną tabelę w pliku PDF przy użyciu języka Java, oraz nauczyliśmy się konwertować pliki HTML na pliki PDF. IronPDF for Java oferuje również funkcje dodawania obrazów do plików PDF, dzielenia plików PDF, dodawania nagłówków i stopek, stosowania podpisów cyfrowych i wiele więcej. Zapoznaj się z dokumentacją IronPDF, aby dowiedzieć się więcej o tych funkcjach i dodatkowych możliwościach.

Usuń znak wodny IronPDF z wygenerowanych dokumentów PDF, kupując klucz licencyjny lub rejestrując się na bezpłatną wersję próbną.

Często Zadawane Pytania

Jak rozpocząć nowy projekt Java do tworzenia plików PDF?

Aby rozpocząć nowy projekt Java służący do tworzenia plików PDF, można użyć środowiska IDE, takiego jak IntelliJ. Należy zacząć od skonfigurowania projektu i zainstalowania biblioteki IronPDF za pośrednictwem Mavena w celu obsługi tworzenia i manipulacji plikami PDF.

Jakie kroki trzeba wykonać, żeby przekonwertować treść HTML na PDF w Javie?

Aby przekonwertować zawartość HTML na plik PDF w Javie, można użyć metody PdfDocument.renderHtmlAsPdf biblioteki IronPDF. Wymaga to napisania treści HTML, opcjonalnego sformatowania jej za pomocą CSS oraz renderowania do formatu PDF.

Czy mogę używać CSS do stylizowania tabel w plikach PDF wygenerowanych za pomocą Javy?

Tak, można używać CSS do stylizowania tabel w plikach PDF, umieszczając kod CSS w treści HTML przed renderowaniem jej do formatu PDF za pomocą IronPDF. Pozwala to na definiowanie czcionek, obramowań, kolorów i innych elementów.

Jak utworzyć plik PDF z zewnętrznego pliku HTML przy użyciu języka Java?

Aby utworzyć plik PDF z zewnętrznego pliku HTML w Javie, można użyć metody PdfDocument.renderHtmlFileAsPdf biblioteki IronPDF, która konwertuje cały plik HTML na dokument PDF.

Jakie są zalety korzystania z biblioteki zewnętrznej do tworzenia plików PDF w Javie?

Korzystanie z biblioteki innej firmy, takiej jak IronPDF, upraszcza proces tworzenia plików PDF w Javie, oferując funkcje takie jak konwersja HTML do PDF, stylizacja tabel oraz dodatkowe funkcje, takie jak obsługa obrazów i podpisów cyfrowych.

Jak mogę dołączyć obrazy do dokumentu PDF przy użyciu bibliotek Java?

Możesz dołączyć obrazy do dokumentu PDF, osadzając je w treści HTML, którą renderujesz do formatu PDF za pomocą IronPDF. Ta metoda pozwala na płynne włączenie elementów wizualnych.

Jakie opcje są dostępne do dzielenia plików PDF w Javie?

IronPDF oferuje opcje dzielenia plików PDF, co pozwala podzielić pojedynczy plik PDF na wiele dokumentów. Ta funkcja może być szczególnie przydatna do zarządzania dużymi dokumentami lub wyodrębniania określonych sekcji.

Jak mogę stosować podpisy cyfrowe w plikach PDF przy użyciu języka Java?

Możesz dodawać podpisy cyfrowe do plików PDF, korzystając z wbudowanych funkcji IronPDF, które obsługują dodawanie podpisów cyfrowych w celu zwiększenia bezpieczeństwa i autentyczności dokumentów.

Co zrobić, jeśli na moich dokumentach PDF znajduje się znak wodny?

Jeśli na dokumentach PDF utworzonych za pomocą IronPDF znajduje się znak wodny, można go usunąć, kupując klucz licencyjny lub rejestrując się w celu uzyskania bezpłatnej licencji probnej.

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