在實際環境中測試
在生產環境中測試無浮水印。
在任何需要的地方都能運作。
本文將示範如何使用 Java 在 PDF 文件中創建表格。
使用 Java 程式在 PDF 文件中創建表格需要一個第三方庫。 有多種可用的程式庫可以透過 Java 程式在 PDF 中建立表格。 然而,它們可能很昂貴,使用起來有挑戰,或有性能問題。 尋找一個易於使用、開發免費且效率高的函式庫可能很棘手。
IronPDF 是一個對操作 PDF 檔非常有用的函式庫。 您可以按一下以了解更多有關IronPDF的資訊IronPDF 官方 Java 頁面.
本文涵蓋以下步驟:
建立新專案
安裝 IronPDF 庫
創建一個新的 PDF 文件
為其創建一個表格。
開啟您偏好的 IDE。在本文中推薦使用 IntelliJ,因此使用其他 IDE 創建新項目的步驟可能會有所不同。
打開 IntelliJ IDE,從頂部選單欄中點擊 File > New Project。 為您的項目命名,選擇位置、語言、構建系統和 JDK,如下所示。
IntelliJ IDE 新專案視窗
按一下 建立專案 按鈕,即可建立一個新專案。
現在,在新創建的專案中安裝 IronPDF 函式庫。 繼續以下步驟。
打開 pom.xml
檔案,並在 properties 結束標籤下新增以下 XML 內容。
xml-mvn-install
請提供內容以進行翻譯。
在終端機中輸入以下命令並按下 Enter 鍵。
mvn install
這將在此專案中安裝 IronPDF。
添加以下匯入語句以使用IronPDF類別。
import com.ironsoftware.ironpdf.*;
首先,我們將學習在 Java 中建立簡單的 PDF 文件。
以下示例代碼將創建一個新的 PDF 文檔。
public static void main(String[] args) throws IOException {
PdfDocument myPdf = PdfDocument.renderHtmlAsPdf("This is a sample PDF file");
try {
myPdf.saveAs(Paths.get("html_saved.pdf") );
} catch (IOException e) {
throw new RuntimeException(e);
}
}
這渲染Html為Pdf
方法將字串作為引數,並將該字串轉換為 PDF 文件的實例。
這儲存為
該函數接收一個文件路徑作為參數,並將新創建的 PDF 文檔保存到參數中指定的文件路徑。
從上述代碼創建的 PDF 如下圖所示。
新 PDF 文件
以下程式碼將在 PDF 中創建一個表格。
public static void main(String[] args) throws IOException {
String tableContent = "<table>\n" +
" <tr>\n" +
" <th>Company</th>\n" +
" <th>Contact</th>\n" +
" <th>Country</th>\n" +
" </tr>\n" +
" <tr>\n" +
" <td>Alfreds Futterkiste</td>\n" +
" <td>Maria Anders</td>\n" +
" <td>Germany</td>\n" +
" </tr>\n" +
" <tr>\n" +
" <td>Centro comercial Moctezuma</td>\n" +
" <td>Francisco Chang</td>\n" +
" <td>Mexico</td>\n" +
" </tr>\n" +
" <tr>\n" +
" <td>Ernst Handel</td>\n" +
" <td>Roland Mendel</td>\n" +
" <td>Austria</td>\n" +
" </tr>\n" +
" <tr>\n" +
" <td>Island Trading</td>\n" +
" <td>Helen Bennett</td>\n" +
" <td>UK</td>\n" +
" </tr>\n" +
" <tr>\n" +
" <td>Laughing Bacchus Winecellars</td>\n" +
" <td>Yoshi Tannamuri</td>\n" +
" <td>Canada</td>\n" +
" </tr>\n" +
" <tr>\n" +
" <td>Magazzini Alimentari Riuniti</td>\n" +
" <td>Giovanni Rovelli</td>\n" +
" <td>Italy</td>\n" +
" </tr>\n" +
"</table>\n";
PdfDocument myPdf = PdfDocument.renderHtmlAsPdf("<h1>Example of adding table in a PDF</h1>" + tableContent);
try {
myPdf.saveAs(Paths.get("html_saved.pdf"));
} catch (IOException e) {
throw new RuntimeException(e);
}
}
上述程式碼使用簡單的 HTML 標籤通過 Java 在 PDF 中建立表格。 因此,要建立表格,您必須具備使用 HTML 標籤的基本知識。 幾乎每位 Java 程式設計師都熟悉 HTML,因此使用 HTML 標籤創建新表格和表格單元格是非常簡單的。
此程式生成的 PDF 檔案顯示在下圖中:
包含 HTML 表格的 PDF 文件
這是一個沒有樣式的簡單表格。
現在讓我們為這個表格添加一些樣式,如設置表格寬度、邊距、佈局、字體、背景顏色等。
以下範例代碼將格式化我們的表格並為單元格添加樣式。
public static void main(String[] args) throws IOException {
String htmlStyle = "<!DOCTYPE html>\n" +
"<html>\n" +
"<head>\n" +
"<style>\n" +
"table {\n" +
" font-family: arial, sans-serif;\n" +
" border-collapse: collapse;\n" +
" width: 100%;\n" +
"}\n" +
"\n" +
"td, th {\n" +
" border: 1px solid #dddddd;\n" +
" text-align: left;\n" +
" padding: 8px;\n" +
"}\n" +
"\n" +
"tr:nth-child(even) {\n" +
" background-color: #dddddd;\n" +
"}\n" +
"</style>\n" +
"</head>\n" +
"<body>";
String tableContent = "<table>\n" +
" <tr>\n" +
" <th>Company</th>\n" +
" <th>Contact</th>\n" +
" <th>Country</th>\n" +
" </tr>\n" +
" <tr>\n" +
" <td>Alfreds Futterkiste</td>\n" +
" <td>Maria Anders</td>\n" +
" <td>Germany</td>\n" +
" </tr>\n" +
" <tr>\n" +
" <td>Centro comercial Moctezuma</td>\n" +
" <td>Francisco Chang</td>\n" +
" <td>Mexico</td>\n" +
" </tr>\n" +
" <tr>\n" +
" <td>Ernst Handel</td>\n" +
" <td>Roland Mendel</td>\n" +
" <td>Austria</td>\n" +
" </tr>\n" +
" <tr>\n" +
" <td>Island Trading</td>\n" +
" <td>Helen Bennett</td>\n" +
" <td>UK</td>\n" +
" </tr>\n" +
" <tr>\n" +
" <td>Laughing Bacchus Winecellars</td>\n" +
" <td>Yoshi Tannamuri</td>\n" +
" <td>Canada</td>\n" +
" </tr>\n" +
" <tr>\n" +
" <td>Magazzini Alimentari Riuniti</td>\n" +
" <td>Giovanni Rovelli</td>\n" +
" <td>Italy</td>\n" +
" </tr>\n" +
"</table>\n</body>\n" +
"</html>";
PdfDocument myPdf = PdfDocument.renderHtmlAsPdf(htmlStyle + "Sample PDF" + tableContent);
try {
myPdf.saveAs(Paths.get("html_saved.pdf"));
} catch (IOException e) {
throw new RuntimeException(e);
}
}
添加的 CSS 用於在 PDF 中設計表格的樣式。 因此,使用 CSS 來根據需要進行樣式設計是非常高效的。
以下是該程式生成的 PDF。
包含從 HTML 中的表格並使用 CSS 設計的 PDF 文件
上述程式碼看起來非常雜亂。 但可以通過將所有 HTML 內容移動到一個 HTML 文件中,然後從該文件生成 PDF 來清除。
創建一個新的 HTML 文件,並將所有 HTML 內容添加到該文件中,如下所示:
HTML 已移至其自己的 HTML 文件中
將以下代碼添加到 Java 程序中。
PdfDocument myPdf = PdfDocument.renderHtmlFileAsPdf("Create_Table.html");
try {
myPdf.saveAs(Paths.get("html_saved.pdf") );
} catch (IOException e) {
throw new RuntimeException(e);
}
我們可以看到使用 HTML 文件生成 PDF 是多麼簡單。 如果您需要在 Java 中建立 PDF 檔案,最簡單的方法是先建立一份包含內容和樣式的 HTML 文件,然後只需使用一行程式碼將您的 HTML 文件轉換為 PDF。
具有樣式的最終 PDF 文件
本教程演示了如何使用 Java 在 PDF 文件中创建样式化的表格,并学习了如何将 HTML 文件转换为 PDF 文件。 IronPDF for Java 還提供將圖像添加到 PDF 文件的功能,拆分 PDF 文件, 添加頁首和頁尾, 套用數位簽章,等等。 探索 IronPDF 文檔了解更多關於這些功能和其他能力。