iText - Menambahkan Daftar ke Tabel
Dalam bab ini, kita akan melihat bagaimana menambahkan daftar ke tabel dalam dokumen PDF menggunakan perpustakaan iText.
Menambahkan Daftar ke Tabel dalam 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.
Untuk menambahkan file list ke tabel, Anda perlu membuat instance List kelas dari com.itextpdf.layout.element paket dan masukkan ke dalam cell objek menggunakan add() metode dari Cell kelas.
Berikut adalah langkah-langkah untuk menambahkan daftar ke sel tabel.
Langkah 1: Membuat objek PdfWriter
Itu PdfWriterkelas mewakili Penulis Doc untuk PDF. Kelas ini termasuk dalam paketcom.itextpdf.kernel.pdf. Konstruktor kelas ini menerima string, mewakili jalur file tempat PDF akan dibuat.
Buat instance kelas PdfWriter 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/addingObjects.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 paket com.itextpdf.kernel.pdf. Untuk membuat instance kelas ini (dalam mode menulis), Anda perlu meneruskan objek kelasPdfWriter ke konstruktornya.
Instantiate PdfDocument kelas 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 dari kelas PdfDocument.
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 merepresentasikan grid dua dimensi yang diisi dengan sel, diurutkan dalam baris dan kolom. Itu milik paketcom.itextpdf.layout.element.
Instantiate Table kelas seperti yang ditunjukkan di bawah ini.
// Creating a table
float [] pointColumnWidths = {200F, 200F};
Table table = new Table(pointColumnWidths);
Langkah 5: Membuat sel
Membuat cell objek dengan membuat instance Cell kelas paket com.itextpdf.layout, seperti yang ditunjukkan di bawah ini.
// Adding cell to the table
Cell listCell = new Cell(); // Creating a cell
Langkah 6: Membuat objek List
Setelah membuat sel, buat file list objek dengan membuat instance List kelas paket com.itextpdf.layout.element. Buat item daftar dengan membuat instanceListItem kelas dan tambahkan item yang dibuat menggunakan add() metode dari List kelas, seperti yang ditunjukkan di bawah ini.
List list = new List();
ListItem item1 = new ListItem("JavaFX");
ListItem item2 = new ListItem("Java");
ListItem item3 = new ListItem("Java Servlets");
list.add(item1);
list.add(item2);
list.add(item3);
Langkah 7: Menambahkan daftar ke sel tabel
Sekarang, tambahkan daftar yang dibuat di atas ke sel tabel menggunakan add()metode kelas sel. Dan, tambahkan sel ini ke tabel menggunakanaddCell() metode dari Table kelas, seperti yang ditunjukkan di bawah ini.
listCell.add(list);
table.addCell(listCell);
Langkah 8: 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 9: 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 menunjukkan cara menambahkan daftar ke sel tabel dalam dokumen PDF menggunakan pustaka iText. Ini membuat dokumen PDF dengan namaaddingObjects.pdf, menambahkan tabel ke dalamnya, menyisipkan daftar ke salah satu selnya, dan menyimpannya di jalur C:/itextExamples/
Simpan kode ini dalam file dengan nama AddingListsToTable.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.List;
import com.itextpdf.layout.element.ListItem;
import com.itextpdf.layout.element.Table;
import com.itextpdf.layout.property.TextAlignment;
public class AddingListsToTable {
public static void main(String args[]) throws Exception {
// Creating a PdfWriter object
String file = "C:/itextExamples/addingObjects.pdf";
PdfDocument pdfDoc = new PdfDocument(new PdfWriter(file));
// Creating a Document object
Document doc = new Document(pdfDoc);
// Creating a table
float [] pointColumnWidths = {300F, 300F};
Table table = new Table(pointColumnWidths);
// Adding row 1 to the table
Cell c1 = new Cell();
c1.add("Java Related Tutorials");
c1.setTextAlignment(TextAlignment.LEFT);
table.addCell(c1);
List list1 = new List();
ListItem item1 = new ListItem("JavaFX");
ListItem item2 = new ListItem("Java");
ListItem item3 = new ListItem("Java Servlets");
list1.add(item1);
list1.add(item2);
list1.add(item3);
Cell c2 = new Cell();
c2.add(list1);
c2.setTextAlignment(TextAlignment.LEFT);
table.addCell(c2);
// Adding row 2 to the table
Cell c3 = new Cell();
c3.add("No SQL Databases");
c3.setTextAlignment(TextAlignment.LEFT);
table.addCell(c3);
List list2 = new List();
list2.add(new ListItem("HBase"));
list2.add(new ListItem("Neo4j"));
list2.add(new ListItem("MongoDB"));
Cell c4 = new Cell();
c4.add(list2);
c4.setTextAlignment(TextAlignment.LEFT);
table.addCell(c4);
// Adding Table to document
doc.add(table);
// Closing the document
doc.close();
System.out.println("Lists added to table successfully..");
}
}
Kompilasi dan jalankan file Java yang disimpan dari Command prompt menggunakan perintah berikut -
javac AddingListsToTable.java
java AddingListsToTable
Setelah dieksekusi, program di atas membuat dokumen PDF, menampilkan pesan berikut.
Lists added to table successfully..
Jika Anda memverifikasi jalur yang ditentukan, Anda dapat menemukan dokumen PDF yang dibuat, seperti yang ditunjukkan di bawah ini.