iText - adnotacja linku
W tym rozdziale zobaczymy, jak dodać adnotację łącza do dokumentu PDF za pomocą biblioteki iText.
Tworzenie adnotacji łącza w pliku PDF
Możesz utworzyć pusty dokument PDF, tworząc wystąpienie Documentklasa. Podczas tworzenia instancji 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 poprzez przekazanie wartości ciągu (reprezentującej ścieżkę, w której należy utworzyć plik PDF) do jego konstruktora, jak pokazano poniżej.
// Creating a PdfWriter 
String dest = "C:/itextExamples/linkAnnotation.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 plik PdfWriter obiekt do swojego 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 tej klasyPdfDocument.
Utwórz wystąpienie Document class poprzez przekazanie obiektu klasy PdfDocument utworzonego 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 PdfLinkAnnotationklasa reprezentuje adnotację łącza. Utwórz obiekt tej klasy, jak pokazano poniżej.
// Creating a PdfLinkAnnotation object 
Rectangle rect = new Rectangle(0, 0); 
PdfLinkAnnotation annotation = new PdfLinkAnnotation(rect); 
    Krok 5: Ustawienie działania adnotacji
Ustaw akcję na adnotację za pomocą setAction() metoda PdfLinkAnnotation klasa, jak pokazano poniżej.
// Setting action of the annotation 
PdfAction action = PdfAction.createURI("http: // www.tutorialspoint.com/"); 
annotation.setAction(action); 
    Krok 6: Tworzenie łącza
Utwórz łącze, tworząc wystąpienie Link klasa pakietu com.itextpdf.layout.element, jak pokazano niżej.
// Creating a link 
Link link = new Link("Click here", annotation); 
    Krok 7: Dodanie adnotacji linku do akapitu
Utwórz nowy akapit, tworząc wystąpienie Paragraph i dodaj link utworzony w poprzednim kroku przy użyciu rozszerzenia add() metody tej klasy, jak pokazano poniżej.
// Creating a paragraph 
Paragraph paragraph = new Paragraph("Hi welcome to Tutorialspoint ");        
// Adding link to paragraph 
paragraph.add(link.setUnderline()); 
    Krok 8: Dodawanie akapitu do dokumentu
Dodaj akapit do dokumentu, używając rozszerzenia add() metoda Document klasa, jak pokazano poniżej.
// Adding paragraph to document 
document.add(paragraph); 
    Krok 9: 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 przedstawia sposób dodawania adnotacji łącza do dokumentu PDF za pomocą biblioteki iText.
Tworzy dokument PDF o nazwie linkAnnotation.pdf, dodaje do niego adnotację łącza i zapisuje go w ścieżce C:/itextExamples/
Zapisz ten kod w pliku o nazwie LinkAnnotation.java.
import com.itextpdf.kernel.geom.Rectangle; 
import com.itextpdf.kernel.pdf.PdfDocument; 
import com.itextpdf.kernel.pdf.PdfWriter; 
import com.itextpdf.kernel.pdf.action.PdfAction; 
import com.itextpdf.kernel.pdf.annot.PdfLinkAnnotation; 
import com.itextpdf.layout.Document; 
import com.itextpdf.layout.element.Link; 
import com.itextpdf.layout.element.Paragraph;  
public class LinkAnnotation {      
   public static void main(String args[]) throws Exception {             
      // Creating a PdfWriter       
      String dest = "C:/itextExamples/linkAnnotation.pdf";       
      
      PdfWriter writer = new 
      PdfWriter(dest);               
      
      // Creating a PdfDocument       
      PdfDocument pdf = new PdfDocument(writer);               
      
      // Creating a Document
      Document document = new Document(pdf);              
      
      // Creating a PdfLinkAnnotation object       
      Rectangle rect = new Rectangle(0, 0);       
      PdfLinkAnnotation annotation = new PdfLinkAnnotation(rect);              
      
      // Setting action of the annotation       
      PdfAction action = PdfAction.createURI("http:// www.tutorialspoint.com/");       
      annotation.setAction(action);             
      
      // Creating a link       
      Link link = new Link("Click here", annotation);              
      
      // Creating a paragraph       
      Paragraph paragraph = new Paragraph("Hi welcome to Tutorialspoint ");              
      
      // Adding link to paragraph       
      paragraph.add(link.setUnderline());              
      
      // Adding paragraph to document       
      document.add(paragraph);             
      // Closing the document       
      document.close();              
      
      System.out.println("Annotation added successfully");    
   } 
} 
    Skompiluj i uruchom zapisany plik Java z wiersza polecenia, używając następujących poleceń -
javac LinkAnnotation.java 
java LinkAnnotation 
    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.