在實際環境中測試
在生產環境中測試無浮水印。
在任何需要的地方都能運作。
在本文中,您將學習如何在 Java 程式中使用 IronPDF 向 PDF 添加數位簽名。
IronPDF Java PDF Library 概覽是一個 Java 函式庫,允許開發人員從頭開始創建新的 PDF 文件通過將 HTML 字串轉換為 PDF, 將 HTML 文件轉換為 PDF, Word 轉換為 PDF,或 URL。 它幫助輕鬆操作 PDF,通過添加或移除內容來進行編輯。 它提供安全和數位簽章選項PDF 文件以及數位簽名。
IronPDF不需要任何其他第三方庫來執行任何與PDF相關的任務。 它還提供在不同檔案格式之間轉換的功能。 它提供跨平台支持,專門為 Java、Scala 和 Kotlin 設計。
要數位簽署PDF文件,需要以下先決條件:
IronPDF 庫下載和安裝 - 要下載和安裝 IronPDF,請包含其 Maven 依賴工件。 您可以在 pom.xml
文件的依赖项標籤中添加以下代碼片段:
xml-mvn-install-ao
請提供內容以進行翻譯。
pom.xml
文件中使用以下依賴項添加: <dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>2.0.5</version>
</dependency>
pom.xml 文件
主文件中需要以下導入。它允許使用 IronPDF 函數向 PDF 文件添加數位簽名:
import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.signature.Signature;
import com.ironsoftware.ironpdf.signature.SignatureManager;
import java.io.IOException;
import java.nio.file.Paths;
現在,所有所需的部分都已完成,可以使用IronPDF在Java中向PDF文件添加數位簽章。
To學習如何數位簽署 PDF 文件,需要從頭開始建立 PDF 文件或打開現有的 PDF 文件。 本文將使用創建一個新的 PDF 文件以進行 PDF 簽名renderHtmlAsPdf 方法
的PdfDocument Class
. 代碼如下:
PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Testing 2048 bit digital security</h1>");
PDF文件已建立,但尚未儲存。 因此,下一步是創建數位簽章,然後將其添加到此 PDF 文件,最後保存它。
您需要使用 Adobe Reader 創建一個數位簽章證書,這將在 Java 代碼中用於利用這些詳細信息來數位簽署 PDF 文件。 您可以查看如何在 Adobe Reader 中創建數位簽名.
打開 Adobe Reader,然後點選 編輯 > 偏好設定。 然後點擊「簽章」,再點擊「身份識別與受信任的憑證」。
專案偏好設定
新增以下簽名欄位來製作.pfx或.p12檔案。
添加數位 ID 對話框
以下範例程式碼將使用 Windows 的 .pfx 憑證檔案和 Mac 的 .p12 檔案及其私鑰在 Java 程式碼中建立新的簽名(密碼):
Signature signature = new Signature("Iron.pfx", "123456");
IronPDF 使用 SignatureManager
類協助添加簽名證書。 [getSignature 方法
](/java/object-reference/api/com/ironsoftware/ironpdf/PdfDocument.html#getSignature())有助於獲取PDF文件的先前簽名,然後可以使用新增新的簽名。SignPdfWithSignature 方法
將簽名文件作為參數。 代碼如下:
SignatureManager signatureManager = pdf.getSignature();
signatureManager.SignPdfWithSignature(signature);
最後,讓我們保存 PDF 文件;否則,PDF 將未使用簽名。saveAs 方法
PdfDocument
類別。 代碼很簡單,如下所示:
pdf.saveAs("signed.pdf");
在成功編譯和執行代碼後,輸出會生成一個已經數位簽名的 PDF。
輸出 PDF 檔案
IronPDF 還提供其他簽署選項,這些選項是可選的,也可以用於數位簽章。 它包括手寫簽名圖像、電腦生成的文本圖像或數位化圖像。 以下程式碼範例可協助您為數位簽署添加一些額外的安全選項:
signature.setSigningContact("support@ironsoftware.com");
signature.setSigningLocation("Chicago, USA");
signature.setSigningReason("To show how to sign a PDF");
BufferedImage signatureImage = ImageIO.read(new File("handwriting.png"));
WritableRaster raster = signatureImage.getRaster();
DataBufferByte data = (DataBufferByte) raster.getDataBuffer();
signature.setSignatureImage(data.getData());
完整的代碼如下:
import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.signature.Signature;
import com.ironsoftware.ironpdf.signature.SignatureManager;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.awt.image.DataBufferByte;
import java.awt.image.WritableRaster;
import java.io.File;
import java.io.IOException;
public static void main(String[] args) throws IOException {
// Step 1. Create a PDF File Doc
PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Testing 2048 bit digital security</h1>");
// Step 2. Create a Signature.
Signature signature = new Signature("Iron.pfx", "123456");
// Step 3. Sign the PDF with the PdfSignature.
SignatureManager signatureManager = pdf.getSignature();
signatureManager.SignPdfWithSignature(signature);
// Step 4. The PDF is not signed until saved to file, stream, or byte array.
pdf.saveAs("signed.pdf");
}
您可以從 以下了解更多有關數位簽章的信息PDF 簽名程式碼範例. 如果您想要增加更多的安全性甚至編輯元數據,請查看安全性和元數據代碼示例.
本文逐步説明如何使用 IronPDF for Java 在 PDF 文件中添加數位簽名。
首先,文章介紹了在 Java 中使用 IronPDF 處理 PDF 所需的必要元件。 然後使用 HTML 字串創建了一個簡單的 PDF 文件。 證書文件從 Adobe Reader 創建,並用於簽署原始 PDF 文件。 IronPDF 提供一個 Signature
和SignatureManager
類別,幫助用戶添加證書並用簽名欄位簽署 PDF。
IronPDF 使開發者能夠輕鬆快速地執行與 PDF 相關的任務。 它提供精確的結果,實現像素完美的PDF。 對於像 Java 這樣多功能且廣泛使用的編程語言,IronPDF 非常適合處理 PDF 文件,因為它同樣多功能並支持幾乎所有的 PDF 操作。 此外,它是基於已成功的 .NET 功能構建的。
IronPDF 也提供從不同文件格式的輕鬆轉換,使用專為 Java 設計的快速 IronPDFEngine
。 您可以使用IronPDF庫來提取或添加文字, 載入和提取圖像, 將頁首和頁尾新增至 PDF 文件註釋將圖表和圖形渲染為 PDF, 使用PDF 表單,以及更多。
您可以從以下來源獲取有關如何使用IronPDF的詳細信息Java PDF 代碼範例頁面。
IronPDF對個人開發免費,並提供免費試用無浮水印生成 PDF 文件。 它可以授權用於商業用途,使用者可以從此處獲得更多關於授權的資訊詳細授權資訊頁面.