iText - Anotasi Teks
Pada bab ini, kita akan melihat bagaimana menambahkan anotasi teks ke dokumen PDF menggunakan pustaka iText.
Membuat Anotasi Teks dalam PDF
Anda dapat membuat Dokumen PDF kosong dengan membuat instance Documentkelas. Saat membuat instance kelas ini, Anda harus meneruskan aPdfDocument objek sebagai parameter untuk konstruktornya.
Untuk menggunakan anotasi teks dalam dokumen PDF Anda, Anda perlu membuat objek PdfTextAnnotation kelas dan tambahkan ini ke PdfPage.
Berikut adalah langkah-langkah untuk menggunakan anotasi teks dalam dokumen PDF.
Langkah 1: Membuat objek PdfWriter
Itu PdfWriterkelas mewakili DocWriter 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/textAnnotation.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 PdfDocument kelas dengan melewati PdfWriter menolak 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 PdfAnnotation
Itu PdfAnnotation kelas paket com.itextpdf.kernel.pdf.annot mewakili superclass dari semua anotasi.
Di antara kelas turunannya, PdfTextAnnotationkelas mewakili anotasi teks. Buat objek dari kelas ini seperti yang ditunjukkan di bawah ini.
// Creating PdfAnnotation
Rectangle rect = new Rectangle(20, 800, 0, 0);
PdfAnnotation ann = new PdfTextAnnotation(rect);
Langkah 5: Mengatur warna anotasi
Setel warna pada anotasi menggunakan setColor() metode dari PdfAnnotationkelas. Untuk metode ini, teruskancolor objek yang mewakili warna anotasi sebagai parameter.
// Setting color to the annotation
ann.setColor(Color.GREEN);
Langkah 6: Mengatur judul dan konten anotasi
Tetapkan judul dan konten anotasi menggunakan setTitle() dan setContents() metode dari PdfAnnotation kelas masing-masing, seperti yang ditunjukkan di bawah ini.
// Setting title to the annotation
ann.setTitle(new PdfString("Hello"));
// Setting contents of the annotation
ann.setContents("Hi welcome to Tutorialspoint.");
Langkah 7: Menambahkan anotasi ke halaman
Buat yang baru PdfPage kelas menggunakan addNewPage() metode kelas PdfDocument dan tambahkan anotasi di atas menggunakan addAnnotation() metode dari PdfPage kelas, seperti yang ditunjukkan di bawah ini.
// Creating a new page PdfPage page =
pdf.addNewPage();
// Adding annotation to a page in a PDF
page.addAnnotation(ann);
Langkah 8: 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 bagaimana menambahkan anotasi teks ke dokumen PDF menggunakan perpustakaan iText. Ini membuat dokumen PDF dengan namatextAnnotation.pdf, menambahkan anotasi teks ke dalamnya, dan menyimpannya di jalur C:/itextExamples/
Simpan kode ini dalam file dengan nama TextAnnotation.java.
import com.itextpdf.kernel.color.Color;
import com.itextpdf.kernel.geom.Rectangle;
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfPage;
import com.itextpdf.kernel.pdf.PdfString;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.kernel.pdf.annot.PdfAnnotation;
import com.itextpdf.kernel.pdf.annot.PdfTextAnnotation;
import com.itextpdf.layout.Document;
public class TextAnnotation {
public static void main(String args[]) throws Exception {
// Creating a PdfWriter
String dest = "C:/itextExamples/textAnnotation.pdf";
PdfWriter writer = new PdfWriter(dest);
// Creating a PdfDocument
PdfDocument pdf = new PdfDocument(writer);
// Creating a Document
Document document = new Document(pdf);
// Creating PdfTextAnnotation object
Rectangle rect = new Rectangle(20, 800, 0, 0);
PdfAnnotation ann = new PdfTextAnnotation(rect);
// Setting color to the annotation
ann.setColor(Color.GREEN);
// Setting title to the annotation
ann.setTitle(new PdfString("Hello"));
// Setting contents of the annotation
ann.setContents("Hi welcome to Tutorialspoint.");
// Creating a new page
PdfPage page = pdf.addNewPage();
// Adding annotation to a page in a PDF
page.addAnnotation(ann);
// Closing the document
document.close();
System.out.println("Annotation added successfully");
}
}
Kompilasi dan jalankan file Java yang disimpan dari command prompt menggunakan perintah berikut.
javac TextAnnotation.java
java TextAnnotation
Setelah dijalankan, program di atas membuat dokumen PDF yang menampilkan pesan berikut.
Annotation added successfully
Jika Anda memverifikasi jalur yang ditentukan, Anda dapat menemukan dokumen PDF yang dibuat, seperti yang ditunjukkan di bawah ini.