iText-テーブルの追加

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

PDFへのテーブルの追加

をインスタンス化することにより、空のPDFドキュメントを作成できます。 Documentクラス。このクラスをインスタンス化するときに、合格する必要がありますPdfDocumentコンストラクターへのパラメーターとしてのオブジェクト。次に、ドキュメントにテーブルを追加するには、インスタンス化する必要がありますTable クラスを作成し、を使用してこのオブジェクトをドキュメントに追加します add() 方法。

以下は、テーブルを含むPDFドキュメントを作成する手順です。

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

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

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

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

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

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

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

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

// 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:テーブルオブジェクトを作成する

ザ・ Tableクラスは、行と列に並べられたセルで満たされた2次元グリッドを表します。パッケージに属していますcom.itextpdf.layout.element

インスタンス化する Table 以下に示すクラス。

// Creating a table object 
float [] pointColumnWidths = {150F, 150F, 150F}; 
Table table = new Table(pointColumnWidths);

ステップ5:テーブルにセルを追加する

作成する cell オブジェクトをインスタンス化して Cell パッケージのクラス com.itextpdf.layout.element。を使用してセルの内容を追加しますadd() このクラスのメソッド。

最後に、このセルをテーブルに追加するには、 addCell() の方法 Table クラスと合格 cell 以下に示すように、このメソッドのパラメーターとしてのオブジェクト。

// Adding cell 1 to the table 
Cell cell1 = new Cell();   // Creating a cell 
cell1.add("Name");         // Adding content to the cell 
table.addCell(cell1);      // Adding cell to the table       

// Adding cell 2 to the table Cell 
cell2 = new Cell();       // Creating a cell 
cell2.add("Raju");        // Adding content to the cell 
table.addCell(cell2);     // Adding cell to the table

ステップ6:ドキュメントにテーブルを追加する

追加します table 前の手順で作成されたオブジェクト add() の方法 Document 以下に示すクラス。

// Adding list to the document 
document.add(table);

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

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

// Closing the document 
document.close();

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

このコードを名前のファイルに保存します AddingTable.java

import com.itextpdf.kernel.pdf.PdfDocument; 
import com.itextpdf.kernel.pdf.PdfWriter; 

import com.itextpdf.layout.Document; 
import com.itextpdf.layout.element.Cell; 
import com.itextpdf.layout.element.Table;  

public class AddingTable {      
   public static void main(String args[]) throws Exception {           
      // Creating a PdfDocument object   
      String dest = "C:/itextExamples/addingTable.pdf";   
      PdfWriter writer = new PdfWriter(dest);       
         
      // Creating a PdfDocument object      
      PdfDocument pdf = new PdfDocument(writer);                  
      
      // Creating a Document object       
      Document doc = new Document(pdf);                       
         
      // Creating a table       
      float [] pointColumnWidths = {150F, 150F, 150F};   
      Table table = new Table(pointColumnWidths);    
      
      // Adding cells to the table       
      table.addCell(new Cell().add("Name"));       
      table.addCell(new Cell().add("Raju"));       
      table.addCell(new Cell().add("Id"));       
      table.addCell(new Cell().add("1001"));       
      table.addCell(new Cell().add("Designation"));       
      table.addCell(new Cell().add("Programmer"));                 
         
      // Adding Table to document        
      doc.add(table);                  
         
      // Closing the document       
      doc.close();
      System.out.println("Table created successfully..");   
   }     
}

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

javac AddingTable.java 
java AddingTable

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

Table created successfully..

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