iText - Hinzufügen einer Tabelle

In diesem Kapitel erfahren Sie, wie Sie mithilfe der iText-Bibliothek ein PDF-Dokument erstellen und eine Tabelle hinzufügen.

Hinzufügen einer Tabelle zu einem PDF

Sie können ein leeres PDF-Dokument erstellen, indem Sie das instanziieren DocumentKlasse. Während Sie diese Klasse instanziieren, müssen Sie a bestehenPdfDocumentObjekt als Parameter für seinen Konstruktor. Um dem Dokument eine Tabelle hinzuzufügen, müssen Sie die instanziierenTable Klasse und fügen Sie dieses Objekt dem Dokument mit der add() Methode.

Im Folgenden finden Sie die Schritte zum Erstellen eines PDF-Dokuments mit einer Tabelle.

Schritt 1: Erstellen eines PdfWriter-Objekts

Das PdfWriterKlasse repräsentiert den DocWriter für ein PDF. Diese Klasse gehört zum Paketcom.itextpdf.kernel.pdf. Der Konstruktor dieser Klasse akzeptiert eine Zeichenfolge, die den Pfad der Datei darstellt, in der die PDF erstellt werden soll.

Instanziieren Sie die PdfWriter Klasse, indem ein Zeichenfolgenwert (der den Pfad darstellt, in dem Sie eine PDF-Datei erstellen müssen) an den Konstruktor übergeben wird (siehe Abbildung unten).

// Creating a PdfWriter 
String dest = "C:/itextExamples/addingTable.pdf"; 
PdfWriter writer = new PdfWriter(dest);

Wenn das Objekt dieses Typs an ein PdfDocument (Klasse) übergeben wird, wird jedes zu diesem Dokument hinzugefügte Element in die angegebene Datei geschrieben.

Schritt 2: Erstellen eines PdfDocument-Objekts

Das PdfDocumentKlasse ist die Klasse, die das PDF-Dokument in iText darstellt. Diese Klasse gehört zum Paketcom.itextpdf.kernel.pdf. Um diese Klasse zu instanziieren (im Schreibmodus), müssen Sie ein Objekt der Klasse übergebenPdfWriter zu seinem Konstruktor.

Instanziieren Sie die PdfDocument-Klasse, indem Sie das oben erstellte PdfWriter-Objekt wie unten gezeigt an den Konstruktor übergeben.

// Creating a PdfDocument  
PdfDocument pdfDoc = new PdfDocument(writer);

Sobald ein PdfDocument-Objekt erstellt wurde, können Sie verschiedene Elemente wie Seite, Schriftart, Dateianhang und Ereignishandler mit den entsprechenden Methoden seiner Klasse hinzufügen.

Schritt 3: Erstellen des Dokumentobjekts

Das Document Klasse des Pakets com.itextpdf.layoutist das Stammelement beim Erstellen einer autarken PDF-Datei. Einer der Konstruktoren dieser Klasse akzeptiert ein Objekt der KlassePdfDocument.

Instanziieren Sie die Document Klasse durch Übergeben des Objekts der Klasse PdfDocument in den vorherigen Schritten erstellt, wie unten gezeigt.

// Creating a Document   
Document document = new Document(pdfDoc);

Schritt 4: Erstellen eines Tabellenobjekts

Das TableKlasse repräsentiert ein zweidimensionales Gitter, das mit Zellen gefüllt ist, die in Zeilen und Spalten angeordnet sind. Es gehört zum Paketcom.itextpdf.layout.element.

Instanziieren Sie die Table Klasse wie unten gezeigt.

// Creating a table object 
float [] pointColumnWidths = {150F, 150F, 150F}; 
Table table = new Table(pointColumnWidths);

Schritt 5: Hinzufügen von Zellen zur Tabelle

Ein ... kreieren cell Objekt durch Instanziierung der Cell Klasse des Pakets com.itextpdf.layout.element. Fügen Sie den Inhalt der Zelle mit dem hinzuadd() Methode dieser Klasse.

Um diese Zelle zur Tabelle hinzuzufügen, rufen Sie schließlich die auf addCell() Methode der Table Klasse und bestehen die cell Objekt als Parameter für diese Methode, wie unten gezeigt.

// Adding cell 1 to the table 
Cell cell1 = new Cell();   // Creating a cell 
cell1.add("Name");         // Adding content to the cell 
table.addCell(cell1);      // Adding cell to the table       

// Adding cell 2 to the table Cell 
cell2 = new Cell();       // Creating a cell 
cell2.add("Raju");        // Adding content to the cell 
table.addCell(cell2);     // Adding cell to the table

Schritt 6: Hinzufügen einer Tabelle zum Dokument

Ergänzen Sie die table Objekt, das im vorherigen Schritt mit dem erstellt wurde add() Methode der Document Klasse wie unten gezeigt.

// Adding list to the document 
document.add(table);

Schritt 7: Schließen des Dokuments

Schließen Sie das Dokument mit der close() Methode der Document Klasse, wie unten gezeigt.

// Closing the document 
document.close();

Beispiel

Das folgende Java-Programm zeigt, wie Sie mithilfe der iText-Bibliothek ein PDF-Dokument erstellen und eine Tabelle hinzufügen. Es wird ein PDF-Dokument mit dem Namen erstelltaddingTable.pdf, fügt eine Tabelle hinzu und speichert sie im Pfad C:/itextExamples/

Speichern Sie diesen Code in einer Datei mit dem Namen AddingTable.java.

import com.itextpdf.kernel.pdf.PdfDocument; 
import com.itextpdf.kernel.pdf.PdfWriter; 

import com.itextpdf.layout.Document; 
import com.itextpdf.layout.element.Cell; 
import com.itextpdf.layout.element.Table;  

public class AddingTable {      
   public static void main(String args[]) throws Exception {           
      // Creating a PdfDocument object   
      String dest = "C:/itextExamples/addingTable.pdf";   
      PdfWriter writer = new PdfWriter(dest);       
         
      // Creating a PdfDocument object      
      PdfDocument pdf = new PdfDocument(writer);                  
      
      // Creating a Document object       
      Document doc = new Document(pdf);                       
         
      // Creating a table       
      float [] pointColumnWidths = {150F, 150F, 150F};   
      Table table = new Table(pointColumnWidths);    
      
      // Adding cells to the table       
      table.addCell(new Cell().add("Name"));       
      table.addCell(new Cell().add("Raju"));       
      table.addCell(new Cell().add("Id"));       
      table.addCell(new Cell().add("1001"));       
      table.addCell(new Cell().add("Designation"));       
      table.addCell(new Cell().add("Programmer"));                 
         
      // Adding Table to document        
      doc.add(table);                  
         
      // Closing the document       
      doc.close();
      System.out.println("Table created successfully..");   
   }     
}

Kompilieren Sie die gespeicherte Java-Datei und führen Sie sie an der Eingabeaufforderung mit den folgenden Befehlen aus:

javac AddingTable.java 
java AddingTable

Bei der Ausführung erstellt das obige Programm ein PDF-Dokument mit der folgenden Meldung.

Table created successfully..

Wenn Sie den angegebenen Pfad überprüfen, finden Sie das erstellte PDF-Dokument wie unten gezeigt.