iText - Zeilenanmerkung

In diesem Kapitel erfahren Sie, wie Sie einem PDF-Dokument mithilfe der iText-Bibliothek Zeilenanmerkungen hinzufügen.

Erstellen einer Zeilenanmerkung in 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 bestehenPdfDocument Objekt als Parameter an seinen Konstruktor.

Um Textanmerkungen in Ihrem PDF-Dokument zu verwenden, müssen Sie ein Objekt von erstellen PdfTextAnnotation Klasse und fügen Sie dies der PdfPage.

Im Folgenden finden Sie die Schritte zum Verwenden von Textanmerkungen im PDF-Dokument.

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 Sie einen Zeichenfolgenwert, der den Pfad darstellt, in dem Sie eine PDF-Datei erstellen müssen, an den Konstruktor übergeben, wie unten gezeigt.

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

Wenn ein 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 PDFDocument 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 PdfWriter-Objekt wie unten gezeigt an seinen 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, indem Sie das Objekt der Klasse übergeben PdfDocument in den vorherigen Schritten erstellt, wie unten gezeigt.

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

Schritt 4: Erstellen eines PdfAnnotation-Objekts

Das PdfAnnotation Klasse des Pakets com.itextpdf.kernel.pdf.annot stellt die Oberklasse aller Anmerkungen dar.

Unter seinen abgeleiteten Klassen, PdfLineAnnotationKlasse repräsentiert die Zeilenanmerkung. Erstellen Sie ein Objekt dieser Klasse wie unten gezeigt.

// Creating PdfAnnotation 
Rectangle rect = new Rectangle(20, 800, 0, 0); 
PdfAnnotation annotation = new PdfLineAnnotation(rect);

Schritt 5: Festlegen der Farbe der Anmerkung

Stellen Sie die Farbe mit der Taste auf die Anmerkung ein setColor() Methode der PdfAnnotationKlasse. Übergeben Sie bei dieser Methode das Farbobjekt, das die Farbe der Anmerkung darstellt, als Parameter.

// Setting color to the annotation 
annotation.setColor(Color.BLUE);

Schritt 6: Festlegen des Titels und des Inhalts der Anmerkung

Stellen Sie den Titel und den Inhalt der Anmerkung mit der Taste ein setTitle() und setContents() Methoden der PdfAnnotation Klasse jeweils wie unten gezeigt.

// Setting title to the PdfLineAnnotation 
annotation.setTitle(new PdfString("iText"));        

// Setting contents of the PdfLineAnnotation 
annotation.setContents("Hi welcome to Tutorialspoint");

Schritt 7: Hinzufügen der Anmerkung zu einer Seite

Erstelle eine neue PdfPage Klasse mit der addNewPage() Methode der PdfDocument Klasse und fügen Sie die oben erstellte Annotation mit der Methode addAnnotation () der PdfPage-Klasse hinzu, wie unten gezeigt.

// Creating a new page 
PdfPage page = pdf.addNewPage();

// Adding annotation to a page in a PDF 
page.addAnnotation(annotation);

Schritt 8: 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 einem PDF-Dokument mithilfe der iText-Bibliothek Zeilenanmerkungen hinzufügen. Es wird ein PDF-Dokument mit dem Namen erstelltlineAnnotation.pdf, fügt eine Zeilenanmerkung hinzu und speichert sie im Pfad C:/itextExamples/.

Speichern Sie diesen Code in einer Datei mit Namen LineAnnotation.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.PdfLineAnnotation; 
import com.itextpdf.layout.Document;  

public class LineAnnotation {
   public static void main(String args[]) throws Exception {             
      // Creating a PdfWriter       
      String dest = "C:/itextExamples/lineAnnotations.pdf";       
      PdfWriter writer = new PdfWriter(dest);               

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

      // Creating a Document        
      Document document = new Document(pdf);              
      
      // Creating a PdfPage       
      PdfPage page = pdf.addNewPage();              

      // creating PdfLineAnnotation object       
      Rectangle rect = new Rectangle(0, 0);
      float[] floatArray  = new float[]{
         20, 790, page.getPageSize().getWidth() - 20, 790
      };
      PdfAnnotation annotation = new PdfLineAnnotation(rect, floatArray);              
      
      // Setting color of the PdfLineAnnotation       
      annotation.setColor(Color.BLUE);              
      
      // Setting title to the PdfLineAnnotation       
      annotation.setTitle(new PdfString("iText"));              
      
      // Setting contents of the PdfLineAnnotation       
      annotation.setContents("Hi welcome to Tutorialspoint");              
      
      // Adding annotation to the page       
      page.addAnnotation(annotation);               
      
      // Closing the document       
      document.close();              
      
      System.out.println("Annotation added successfully");   
   } 
}

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

javac LineAnnotation.java 
java LineAnnotation

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

Annotation added successfully

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