「Java」iTextを使ってtableにセルコンテンツを追加

2021年12月6日

書式
1.PdfWriterオブジェクトの作成
String dest = “C:/data/test.pdf";
PdfWriter writer = new PdfWriter(dest);

2.PdfDocumentオブジェクトの作成
PdfDocument pdfDoc = new PdfDocument(writer);

3.Documentオブジェクトの作成
Document document = new Document(pdfDoc);

4.Tableオブジェクトの作成
float [] pointColumnWidths = {200F, 200F};
Table table = new Table(pointColumnWidths);

5.セルの作成
Cell cell1 = new Cell(); // セルの作成
cell1.add(“Name"); // セルにコンテンツを追加
c1.setBackgroundColor(Color.DARK_GRAY);

7.テーブルにセルを追加
table.addCell(c1);

8.documentにtableを追加
document.add(table);

9.Documentをクローズ
document.close();

使用例

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
import com.itextpdf.kernel.color.Color;
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.layout.Document;
import com.itextpdf.layout.border.Border;
import com.itextpdf.layout.element.Cell;
import com.itextpdf.layout.element.Table;
import com.itextpdf.layout.property.TextAlignment;
public class BackgroundToTable {
public static void main(String args[]) throws Exception {
// PdfWriterオブジェクトの作成
String dest = "C:/data/test.pdf";
PdfWriter writer = new PdfWriter(dest);
// PdfDocumentオブジェクトの作成
PdfDocument pdfDoc = new PdfDocument(writer);
// Documentオブジェクトの作成
Document doc = new Document(pdfDoc);
// tableの作成
float [] pointColumnWidths = {150F, 150F};
Table table = new Table(pointColumnWidths);
// テーブルに行を追加
Cell c1 = new Cell(); // セルの作成
c1.add("UserName"); // セルにUserNameを追加
c1.setBackgroundColor(Color.DARK_GRAY); // 背景色
c1.setBorder(Border.NO_BORDER); // 境界線の設定
c1.setTextAlignment(TextAlignment.CENTER); // テキストの配置を設定
table.addCell(c1); // テーブルにセルを追加
Cell c2 = new Cell();
c2.add("Address");
c2.setBackgroundColor(Color.GRAY);
c2.setBorder(Border.NO_BORDER);
c2.setTextAlignment(TextAlignment.CENTER);
table.addCell(c2);
// documentにTableを追加
doc.add(table);
// documentをクローズ
doc.close();
System.out.println("背景が正常に追加されました");
}
}
import com.itextpdf.kernel.color.Color; import com.itextpdf.kernel.pdf.PdfDocument; import com.itextpdf.kernel.pdf.PdfWriter; import com.itextpdf.layout.Document; import com.itextpdf.layout.border.Border; import com.itextpdf.layout.element.Cell; import com.itextpdf.layout.element.Table; import com.itextpdf.layout.property.TextAlignment; public class BackgroundToTable { public static void main(String args[]) throws Exception { // PdfWriterオブジェクトの作成 String dest = "C:/data/test.pdf"; PdfWriter writer = new PdfWriter(dest); // PdfDocumentオブジェクトの作成 PdfDocument pdfDoc = new PdfDocument(writer); // Documentオブジェクトの作成 Document doc = new Document(pdfDoc); // tableの作成 float [] pointColumnWidths = {150F, 150F}; Table table = new Table(pointColumnWidths); // テーブルに行を追加 Cell c1 = new Cell(); // セルの作成 c1.add("UserName"); // セルにUserNameを追加 c1.setBackgroundColor(Color.DARK_GRAY); // 背景色 c1.setBorder(Border.NO_BORDER); // 境界線の設定 c1.setTextAlignment(TextAlignment.CENTER); // テキストの配置を設定 table.addCell(c1); // テーブルにセルを追加 Cell c2 = new Cell(); c2.add("Address"); c2.setBackgroundColor(Color.GRAY); c2.setBorder(Border.NO_BORDER); c2.setTextAlignment(TextAlignment.CENTER); table.addCell(c2); // documentにTableを追加 doc.add(table); // documentをクローズ doc.close(); System.out.println("背景が正常に追加されました"); } }
import com.itextpdf.kernel.color.Color; 
import com.itextpdf.kernel.pdf.PdfDocument; 
import com.itextpdf.kernel.pdf.PdfWriter; 

import com.itextpdf.layout.Document;
import com.itextpdf.layout.border.Border; 
import com.itextpdf.layout.element.Cell; 
import com.itextpdf.layout.element.Table; 
import com.itextpdf.layout.property.TextAlignment;  

public class BackgroundToTable {      
   public static void main(String args[]) throws Exception {        
      // PdfWriterオブジェクトの作成
      String dest = "C:/data/test.pdf";   
      PdfWriter writer = new PdfWriter(dest);                  
      
      // PdfDocumentオブジェクトの作成 
      PdfDocument pdfDoc = new PdfDocument(writer);                   
      
      // Documentオブジェクトの作成
      Document doc = new Document(pdfDoc); 
      
      // tableの作成       
      float [] pointColumnWidths = {150F, 150F};       
      Table table = new Table(pointColumnWidths);
      
      // テーブルに行を追加             
      Cell c1 = new Cell();                        // セルの作成
      c1.add("UserName");                          // セルにUserNameを追加 
      c1.setBackgroundColor(Color.DARK_GRAY);      // 背景色
      c1.setBorder(Border.NO_BORDER);              // 境界線の設定
      c1.setTextAlignment(TextAlignment.CENTER);   // テキストの配置を設定     
      table.addCell(c1);                           // テーブルにセルを追加
      
      Cell c2 = new Cell();                               
      c2.add("Address");       
      c2.setBackgroundColor(Color.GRAY);       
      c2.setBorder(Border.NO_BORDER);       
      c2.setTextAlignment(TextAlignment.CENTER);      
      table.addCell(c2);     
  
      
      // documentにTableを追加        
      doc.add(table);                  
      
      // documentをクローズ       
      doc.close();  
      
      System.out.println("背景が正常に追加されました");     
   } 
} 

 

Java

Posted by arkgame