iText - adnotacja okrągła
W tym rozdziale zobaczymy, jak dodać adnotację okrągłą do dokumentu PDF za pomocą biblioteki iText.
Tworzenie adnotacji okręgu w pliku PDF
Możesz utworzyć pusty dokument PDF, tworząc wystąpienie Documentklasa. Podczas tworzenia wystąpienia tej klasy musisz przekazać plikPdfDocument obiekt jako parametr jego konstruktora.
Aby użyć adnotacji tekstowych w dokumencie PDF, musisz utworzyć obiekt klasy PdfTextAnnotation i dodać go do Pdfpage.
Poniżej przedstawiono kroki, aby użyć adnotacji tekstowych w dokumencie PDF.
Krok 1: Tworzenie obiektu PdfWriter
Plik PdfWriterreprezentuje DocWriter dla pliku PDF. Ta klasa należy do pakietucom.itextpdf.kernel.pdf. Konstruktor tej klasy akceptuje ciąg znaków reprezentujący ścieżkę do pliku, w którym ma zostać utworzony plik PDF.
Utwórz wystąpienie PdfWriter klasy, przekazując wartość ciągu (reprezentującą ścieżkę, w której należy utworzyć plik PDF) do jego konstruktora, jak pokazano poniżej.
// Creating a PdfWriter
String dest = "C:/itextExamples/circleAnnotation.pdf";
PdfWriter writer = new PdfWriter(dest);
Gdy obiekt tego typu jest przekazywany do PdfDocument (klasy), każdy element dodany do tego dokumentu zostanie zapisany w określonym pliku.
Krok 2: Tworzenie obiektu PdfDocument
Plik PdfDocumentclass to klasa reprezentująca dokument PDF w iText. Ta klasa należy do pakietucom.itextpdf.kernel.pdf. Aby utworzyć instancję tej klasy (w trybie pisania), musisz przekazać obiekt tej klasyPdfWriter do swojego konstruktora.
Utwórz wystąpienie klasy PdfDocument, przekazując obiekt PdfWriter do jego konstruktora, jak pokazano poniżej.
// Creating a PdfDocument
PdfDocument pdfDoc = new PdfDocument(writer);
Po utworzeniu obiektu PdfDocument można dodać różne elementy, takie jak strona, czcionka, załącznik do pliku i moduł obsługi zdarzeń, używając odpowiednich metod udostępnionych przez jego klasę.
Krok 3: Tworzenie obiektu dokumentu
Plik Document klasa pakietu com.itextpdf.layoutjest elementem głównym podczas tworzenia samowystarczalnego pliku PDF. Jeden z konstruktorów tej klasy akceptuje obiekt klasy PdfDocument.
Utwórz wystąpienie Document class poprzez przekazanie obiektu klasy PdfDocument utworzone w poprzednich krokach, jak pokazano poniżej.
// Creating a Document
Document document = new Document(pdfDoc);
Krok 4: Tworzenie obiektu PdfAnnotation
Plik PdfAnnotation klasa pakietu com.itextpdf.kernel.pdf.annot reprezentuje nadklasę wszystkich adnotacji.
Wśród jego klas pochodnych PdfCircleAnnotationklasa reprezentuje adnotację okręgu. Utwórz obiekt tej klasy, jak pokazano poniżej.
// Creating a PdfCircleAnnotation object Rectangle
rect = new Rectangle(150, 770, 50, 50);
PdfAnnotation annotation = new PdfCircleAnnotation(rect);
Krok 5: Ustawianie koloru adnotacji
Ustaw kolor adnotacji za pomocą setColor() metoda PdfAnnotationklasa. Do tej metody przekaż obiekt color reprezentujący kolor adnotacji jako parametr.
// Setting color to the annotation
annotation.setColor(Color.YELLOW);
Krok 6: Ustawianie tytułu i treści adnotacji
Ustaw tytuł i zawartość adnotacji za pomocą setTitle() i setContents() metody PdfAnnotation klasa odpowiednio.
// Setting title to the annotation
annotation.setTitle(new PdfString("circle annotation"));
// Setting contents of the annotation
annotation.setContents(new PdfString("Hi welcome to Tutorialspoint"));
Krok 7: Dodanie adnotacji do strony
Stwórz nowy PdfPage klasa przy użyciu addNewPage() metoda PdfDocument class i dodaj powyższą utworzoną adnotację za pomocą addAnnotation() metoda klasy PdfPage, jak pokazano poniżej.
// Creating a new page
PdfPage page = pdf.addNewPage();
// Adding annotation to a page in a PDF
page.addAnnotation(ann);
Krok 8: Zamknięcie dokumentu
Zamknij dokument za pomocą close() metoda Document klasa, jak pokazano poniżej.
// Closing the document
document.close();
Przykład
Poniższy program w języku Java demonstruje, jak dodać adnotację okrągłą do dokumentu PDF za pomocą biblioteki iText. Tworzy dokument PDF o nazwiecircleAnnotation.pdf, dodaje do niego opis okręgu i zapisuje go na ścieżce C:/itextExamples/
Zapisz ten kod w pliku o nazwie PdfCircleAnnotation.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.PdfCircleAnnotation;
import com.itextpdf.layout.Document;
public class CircleAnnotation {
public static void main(String args[]) throws Exception {
// Creating a PdfDocument object
String file = "C:/itextExamples// circleAnnotation.pdf";
PdfDocument pdf = new PdfDocument(new PdfWriter(file));
// Creating a Document object
Document doc = new Document(pdf);
// Creating a PdfCircleAnnotation object
Rectangle rect = new Rectangle(150, 770, 50, 50);
PdfAnnotation annotation = new PdfCircleAnnotation(rect);
// Setting color to the annotation
annotation.setColor(Color.YELLOW);
// Setting title to the annotation
annotation.setTitle(new PdfString("circle annotation"));
// Setting contents of the annotation
annotation.setContents(new PdfString("Hi welcome to Tutorialspoint"));
// Creating a new page
PdfPage page = pdf.addNewPage();
// Adding annotation to a page in a PDF
page.addAnnotation(annotation);
// Closing the document
doc.close();
System.out.println("Annotation added successfully");
}
}
Skompiluj i uruchom zapisany plik Java z wiersza polecenia, używając następujących poleceń -
javac PdfCircleAnnotation.java
java PdfCircleAnnotation
Po uruchomieniu powyższy program tworzy dokument PDF z następującym komunikatem.
Annotation added successfully
Jeśli zweryfikujesz określoną ścieżkę, możesz znaleźć utworzony dokument PDF, jak pokazano poniżej.