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.