背景
この記事では、Javaプログラミングを介してPDFドキュメントにテーブルを追加する方法を紹介します。テーブルを追加するときに、テーブルの境界線、セルの配置、セルの背景色、セルの結合、画像の挿入、行の高さ、列の幅、フォント、フォントサイズなどの基本的な属性を設定できます。
下準備
使用ツール:Free Spire.PDF for Java(無料版)
JARファイルの取得とインポート:
公式ウェブサイトからjarファイルパッケージをダウンロードします。ダウンロードした後、ファイルを解凍し、libフォルダー内のSpire.Pdf.jarファイルをJavaプログラムにインポートします。
コード一覧
import com.spire.pdf.*;
import com.spire.pdf.graphics.*;
import com.spire.pdf.grid.PdfGrid;
import java.awt.*;
public class AddTable {
public static void main(String[]args){
//ドキュメントを作成し、PDFページを追加する
PdfDocument pdf = new PdfDocument();
PdfPageBase page = pdf.getPages().add();
//PdfGridオブジェクトを作成する
PdfGrid grid = new PdfGrid();
//セルの余白、デフォルトのフォント、フォントの色、デフォルトの背景色を設定する
grid.getStyle().setCellPadding(new PdfPaddings(3,3,3,3));
grid.getStyle().setFont(new PdfTrueTypeFont(new Font("Yu Mincho", Font.BOLD,10), true));
grid.getStyle().setTextBrush(PdfBrushes.getBlack());
//PdfBordersオブジェクトを作成し、色と厚さを設定する
PdfBorders borders= new PdfBorders();
borders.setAll(new PdfPen(PdfBrushes.getBlack(),1f));
//データを定義する
String[] data = {"大学名称;Logo;場所;分類",
"東京大学;;文京区;国立",
"京都大学;;京都市;国立",
"北海道大学;;札幌市;国立",
"名古屋大学;;名古屋市;国立",
};
String[][] dataSource = new String[data.length][];
for (int i = 0; i < data.length; i++) {
dataSource[i] = data[i].split("[;]");
}
//テーブルにデータを入力する
grid.setDataSource(dataSource);
//表の2列目に画像を入力し、列幅を設定する
grid.getRows().get(1).getCells().get(1).getStyle().setBackgroundImage(PdfImage.fromFile("C:\\Users\\Administrator\\Pictures\\01.png"));
grid.getRows().get(2).getCells().get(1).getStyle().setBackgroundImage(PdfImage.fromFile("C:\\Users\\Administrator\\Pictures\\02.png"));
grid.getRows().get(3).getCells().get(1).getStyle().setBackgroundImage(PdfImage.fromFile("C:\\Users\\Administrator\\Pictures\\03.png"));
grid.getRows().get(4).getCells().get(1).getStyle().setBackgroundImage(PdfImage.fromFile("C:\\Users\\Administrator\\Pictures\\04.png"));
grid.getColumns().get(1).setWidth(100f);
//セルを垂直に結合する
grid.getRows().get(1).getCells().get(3).setRowSpan(4);
//テーブルを設定する
for (int i = 0; i < data.length ; i++) {
//各行の高さを設定する
grid.getRows().get(i).setHeight(50f);
//最初の列のフォントを設定する
grid.getRows().get(i).getCells().get(0).getStyle().setFont(new PdfTrueTypeFont(new Font("Yu Mincho",Font.BOLD,12),true));
for(int j =0;j<grid.getColumns().getCount();j++){
//すべてのセルを中央に配置する
grid.getRows().get(i).getCells().get(j).setStringFormat(new PdfStringFormat(PdfTextAlignment.Center,PdfVerticalAlignment.Middle));
//最初の行の背景色を設定する
grid.getRows().get(0).getCells().get(j).getStyle().setBackgroundBrush(PdfBrushes.getBeige());
}
}
//PDFにテーブルを描画する
grid.draw(page,0,30);
//ドキュメントを保存する
pdf.saveToFile("AddTable.pdf");
pdf.close();
}
}
以上はPDFドキュメントにテーブルを追加する方法でした、最後まで読んでいただき誠にありがとうございます。