如何使用Java在PDF文件中建立表格?

2019-10-16 22:24:59

如何使用Java在PDF文件中建立表格?

註:iText開發環境設定,下載iText7 jar(社群版:http://github.com/itext/itext7/releases/tag/7.0.4 ) ,建立一個工程:java_itext,並將下載的itext7 jar包和slf4j( http://www.slf4j.org/download.html )工具包新增到構建路徑中。專案結構如下圖所示 -

以下是使用Java在PDF中建立表的程式。

package com.yiibai;

import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.io.UnsupportedEncodingException;

import com.itextpdf.kernel.font.PdfFont;
import com.itextpdf.kernel.font.PdfFontFactory;
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 AddingTableToPDF {
    public static void main(String args[]) throws Exception {
        String file = "addingTableToPDF.pdf";

        PdfDocument pdfDoc = new PdfDocument(new PdfWriter(file));

        // Creating a Document object
        Document doc = new Document(pdfDoc);

        // Creating a table
        Table table = new Table(2);

        // Adding cells to the table
        table.addCell(new Cell().add("名稱"));
        table.addCell(new Cell().add("Maxsu"));
        table.addCell(new Cell().add("編號"));
        table.addCell(new Cell().add("10010"));
        table.addCell(new Cell().add("職位"));
        table.addCell(new Cell().add("Java Developer"));
        // 支援文中字型顯示
        PdfFont font = PdfFontFactory.createFont("STSong-Light", "UniGB-UCS2-H", false);
        table.setFont(font);

        // Adding Table to document
        doc.add(table);

        // Closing the document
        doc.close();
        System.out.println("Table created successfully..");
    }

}

執行上面範例程式碼,得到以下結果 -

Table created successfully..

輸出檔案內容如下所示 -