iText - Menambahkan Tabel

Di bab ini, kita akan melihat cara membuat dokumen PDF dan menambahkan tabel ke dalamnya menggunakan pustaka iText.

Menambahkan Tabel ke Pdf

Anda dapat membuat Dokumen PDF kosong dengan membuat instance Documentkelas. Saat membuat instance kelas ini, Anda harus meneruskan aPdfDocumentobjek sebagai parameter untuk konstruktornya. Kemudian, untuk menambahkan tabel ke dokumen, Anda perlu membuat instanceTable kelas dan tambahkan objek ini ke dokumen menggunakan add() metode.

Berikut langkah-langkah membuat dokumen PDF dengan Tabel di dalamnya.

Langkah 1: Membuat objek PdfWriter

Itu PdfWriterkelas mewakili DocWriter untuk PDF. Kelas ini termasuk dalam paketcom.itextpdf.kernel.pdf. Konstruktor kelas ini menerima string, yang mewakili jalur file tempat PDF akan dibuat.

Instantiate PdfWriter kelas dengan meneruskan nilai string (mewakili jalur tempat Anda perlu membuat PDF) ke konstruktornya, seperti yang ditunjukkan di bawah ini.

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

Saat objek jenis ini diteruskan ke PdfDocument (kelas), setiap elemen yang ditambahkan ke dokumen ini akan ditulis ke file yang ditentukan.

Langkah 2: Membuat objek PdfDocument

Itu PdfDocumentkelas adalah kelas yang mewakili Dokumen PDF di iText. Kelas ini termasuk dalam paketcom.itextpdf.kernel.pdf. Untuk membuat instance kelas ini (dalam mode menulis), Anda perlu meneruskan objek kelasPdfWriter ke konstruktornya.

Instantiate kelas PdfDocument dengan meneruskan objek PdfWriter yang dibuat di atas ke konstruktornya, seperti yang ditunjukkan di bawah ini.

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

Setelah objek PdfDocument dibuat, Anda dapat menambahkan berbagai elemen seperti halaman, font, lampiran file, dan penanganan kejadian menggunakan metode masing-masing yang disediakan oleh kelasnya.

Langkah 3: Membuat objek Dokumen

Itu Document kelas paket com.itextpdf.layoutadalah elemen root saat membuat PDF mandiri. Salah satu konstruktor kelas ini menerima objek kelasPdfDocument.

Instantiate Document kelas dengan melewatkan objek kelas PdfDocument dibuat pada langkah sebelumnya, seperti yang ditunjukkan di bawah ini.

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

Langkah 4: Membuat objek Tabel

Itu Tableclass mewakili kisi dua dimensi yang diisi dengan sel yang diurutkan dalam baris dan kolom. Itu milik paketcom.itextpdf.layout.element.

Instantiate Table kelas seperti yang ditunjukkan di bawah ini.

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

Langkah 5: Menambahkan sel ke tabel

Membuat cell objek dengan membuat instance Cell kelas paket com.itextpdf.layout.element. Tambahkan konten sel menggunakanadd() metode kelas ini.

Terakhir, untuk menambahkan sel ini ke tabel, panggil addCell() metode dari Table kelas dan lulus cell objek sebagai parameter untuk metode ini, seperti yang ditunjukkan di bawah ini.

// 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

Langkah 6: Menambahkan tabel ke dokumen

Tambahkan table objek yang dibuat pada langkah sebelumnya menggunakan add() metode dari Document kelas seperti yang ditunjukkan di bawah ini.

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

Langkah 7: Menutup Dokumen

Tutup dokumen menggunakan close() metode dari Document kelas, seperti yang ditunjukkan di bawah ini.

// Closing the document 
document.close();

Contoh

Program Java berikut mendemonstrasikan cara membuat dokumen PDF dan menambahkan tabel ke dalamnya menggunakan perpustakaan iText. Ini membuat dokumen PDF dengan namaaddingTable.pdf, menambahkan tabel ke dalamnya, dan menyimpannya di jalur C:/itextExamples/

Simpan kode ini dalam file dengan nama 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..");   
   }     
}

Kompilasi dan jalankan file Java yang disimpan dari Command prompt menggunakan perintah berikut -

javac AddingTable.java 
java AddingTable

Setelah dieksekusi, program di atas membuat dokumen PDF, menampilkan pesan berikut.

Table created successfully..

Jika Anda memverifikasi jalur yang ditentukan, Anda dapat menemukan dokumen PDF yang dibuat, seperti yang ditunjukkan di bawah ini.