iText-リンク注釈

この章では、iTextライブラリを使用してPDFドキュメントにリンク注釈を追加する方法を説明します。

PDFでのリンク注釈の作成

をインスタンス化することにより、空のPDFドキュメントを作成できます。 Documentクラス。このクラスをインスタンス化するときに、合格する必要がありますPdfDocument コンストラクターへのパラメーターとしてのオブジェクト。

PDFドキュメントでテキスト注釈を使用するには、PdfTextAnnotationクラスのオブジェクトを作成し、これをPdfPageに追加する必要があります。

PDFドキュメントでテキスト注釈を使用する手順は次のとおりです。

ステップ1:PdfWriterオブジェクトを作成する

ザ・ PdfWriterクラスはPDFのDocWriterを表します。このクラスはパッケージに属していますcom.itextpdf.kernel.pdf。このクラスのコンストラクターは、PDFが作成されるファイルのパスを表す文字列を受け入れます。

インスタンス化する PdfWriter 以下に示すように、文字列値(PDFを作成する必要があるパスを表す)をコンストラクターに渡すことによってクラスを作成します。

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

このタイプのオブジェクトがPdfDocument(クラス)に渡されると、このドキュメントに追加されたすべての要素が指定されたファイルに書き込まれます。

ステップ2:PdfDocumentオブジェクトを作成する

ザ・ PdfDocumentclassは、iTextでPDFドキュメントを表すクラスです。このクラスはパッケージに属していますcom.itextpdf.kernel.pdf。このクラスを(書き込みモードで)インスタンス化するには、クラスのオブジェクトを渡す必要がありますPdfWriter そのコンストラクタに。

を渡すことにより、PdfDocumentクラスをインスタンス化します PdfWriter 以下に示すように、コンストラクターに対するオブジェクト。

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

PdfDocumentオブジェクトが作成されると、そのクラスによって提供されるそれぞれのメソッドを使用して、ページ、フォント、添付ファイル、イベントハンドラーなどのさまざまな要素を追加できます。

ステップ3:Documentオブジェクトを作成する

ザ・ Document パッケージのクラス com.itextpdf.layoutは、自給自足のPDFを作成する際のルート要素です。このクラスのコンストラクターの1つは、クラスのオブジェクトを受け入れますPdfDocument

インスタンス化する Document 以下に示すように、前の手順で作成したクラスPdfDocumentのオブジェクトを渡すことによってクラスを作成します。

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

ステップ4:PdfAnnotationオブジェクトを作成する

ザ・ PdfAnnotation パッケージのクラス com.itextpdf.kernel.pdf.annot すべての注釈のスーパークラスを表します。

その派生クラスの中で、 PdfLinkAnnotationクラスはリンク注釈を表します。以下に示すように、このクラスのオブジェクトを作成します。

// Creating a PdfLinkAnnotation object 
Rectangle rect = new Rectangle(0, 0); 
PdfLinkAnnotation annotation = new PdfLinkAnnotation(rect);

ステップ5:注釈のアクションを設定する

を使用してアノテーションにアクションを設定します setAction() の方法 PdfLinkAnnotation 以下に示すように、クラス。

// Setting action of the annotation 
PdfAction action = PdfAction.createURI("http: // www.tutorialspoint.com/"); 
annotation.setAction(action);

ステップ6:リンクを作成する

をインスタンス化してリンクを作成します Link パッケージのクラス com.itextpdf.layout.element、以下に示すように。

// Creating a link 
Link link = new Link("Click here", annotation);

ステップ7:段落にリンク注釈を追加する

をインスタンス化して新しい段落を作成します Paragraph クラスを作成し、前の手順で作成したリンクを add() 以下に示すように、このクラスのメソッド。

// Creating a paragraph 
Paragraph paragraph = new Paragraph("Hi welcome to Tutorialspoint ");        

// Adding link to paragraph 
paragraph.add(link.setUnderline());

ステップ8:ドキュメントに段落を追加する

を使用して段落をドキュメントに追加します add() の方法 Document 以下に示すように、クラス。

// Adding paragraph to document 
document.add(paragraph);

ステップ9:ドキュメントを閉じる

を使用してドキュメントを閉じます close() の方法 Document 以下に示すように、クラス。

// Closing the document 
document.close();

次のJavaプログラムは、iTextライブラリを使用してPDFドキュメントにリンク注釈を追加する方法を示しています。

名前の付いたPDFドキュメントを作成します linkAnnotation.pdf、それにリンク注釈を追加し、パスに保存します C:/itextExamples/

このコードを名前のファイルに保存します 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");    
   } 
}

次のコマンドを使用して、コマンドプロンプトから保存したJavaファイルをコンパイルして実行します-

javac LinkAnnotation.java 
java LinkAnnotation

上記のプログラムを実行すると、次のメッセージを表示するPDFドキュメントが作成されます。

Annotation added successfully

指定されたパスを確認すると、以下に示すように、作成されたPDFドキュメントを見つけることができます。