Itext-adding-paragraph

提供:Dev Guides
移動先:案内検索

iText-段落の追加

この章では、iTextライブラリを使用してPDFドキュメントを作成し、それに段落を追加する方法を説明します。

段落を作成する

*Document* クラスをインスタンス化することにより、空のPDFドキュメントを作成できます。 このクラスをインスタンス化する際、 *PdfDocument* オブジェクトをパラメーターとしてコンストラクターに渡す必要があります。 次に、ドキュメントに段落を追加するには、 *Paragraph* クラスをインスタンス化し、* add()*メソッドを使用してこのオブジェクトをドキュメントに追加する必要があります。

以下は、段落を含むPDFドキュメントを作成する手順です。

ステップ1:PdfWriterオブジェクトの作成

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

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

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

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

ステップ2:PdfDocumentの作成

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

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

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

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

ステップ3:Documentクラスを作成する

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

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

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

ステップ4:段落オブジェクトの作成

*Paragraph* クラスは、テキストおよびグラフィック情報の自己完結型ブロックを表します。 パッケージ *com.itextpdf.layout.element* に属します。

以下に示すように、テキストコンテンツをそのコンストラクタに文字列として渡すことにより、 Paragraph クラスをインスタンス化します。

String para = "Welcome to finddevguides.";
//Creating an Area Break
Paragraph para = new Paragraph (para);

ステップ5:段落の追加

以下に示すように、 Document クラスの* add()メソッドを使用して、前の手順で作成した *Paragraph オブジェクトを追加します。

//Adding area break to the PDF
document.add(para);

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

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

//Closing the document
document.close();

次のJavaプログラムは、iTextライブラリを使用してPDFドキュメントを作成し、それに段落を追加する方法を示しています。 addingParagraph.pdf という名前のPDFドキュメントを作成し、それに段落を追加して、パス C:/itextExamples/ に保存します。

このコードを AddingParagraph.java という名前のファイルに保存します。

import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.layout.Document;
import com.itextpdf.layout.element.Paragraph;

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

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

     //Creating a Document
      Document document = new Document(pdf);
      String para1 = "Tutorials Point originated from the idea that there exists
      a class of readers who respond better to online content and prefer to learn
      new skills at their own pace from the comforts of their drawing rooms.";

      String para2 = "The journey commenced with a single tutorial on HTML in 2006
      and elated by the response it generated, we worked our way to adding fresh
      tutorials to our repository which now proudly flaunts a wealth of tutorials
      and allied articles on topics ranging from programming languages to web designing
      to academics and much more.";

     //Creating Paragraphs
      Paragraph paragraph1 = new Paragraph(para1);
      Paragraph paragraph2 = new Paragraph(para2);

     //Adding paragraphs to document
      document.add(paragraph1);
      document.add(paragraph2);

     //Closing the document
      document.close();
      System.out.println("Paragraph added");
   }
}

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

javac AddingParagraph.java
java AddingParagraph

実行時に、上記のプログラムはPDFドキュメントを作成し、次のメッセージを表示します。

Paragraph added

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

段落の追加