このハウツー トピックでは、Java を使用したデジタル署名で PDF ドキュメントに署名する方法を紹介します。 Java のデジタル署名 を使用して PDF に署名するための一般的な署名ライブラリの 1 つを使用します。この機能の実装に追加のソフトウェアは必要なく、いくつかの API 呼び出しと 2 ~ 3 行のコードで機能を開発できます。
Java を使用してデジタル署名で PDF に署名する手順
- Java プロジェクトの Maven リポジトリから GroupDocs.Signature for Java をセットアップします
- Java を使用して PDF に電子署名を実装するために必要なクラスを追加します。
- Signature クラスのインスタンスを作成し、ソース PDF をそのコンストラクターに渡します
- DigitalSignOptions クラスのオブジェクトを作成し、必要な証明書ファイルとそのパスワードをコンストラクターに渡します
- Signature クラスの Sign メソッドを呼び出し、出力 PDF ファイル名と DigitalSignOptions をそれに渡します。
Java でのデジタル署名の実装 は、上記の手順に従って簡単に実現できます。必要なライブラリをインストールし、必要なクラスへの参照を追加して、デジタル署名で PDF に署名するプロセスを開始します。署名クラスを使用してソース PDF ドキュメントをロードし、DigitalSignOptions クラスを使用して証明書をロードし、デジタル署名位置のプロパティを定義します。最後に、Signature クラスの Sign メソッドを使用して、署名された PDF ドキュメントがディスクに保存されます。
Java を使用してデジタル署名で PDF に署名するコード
import com.groupdocs.signature.Signature; | |
import com.groupdocs.signature.domain.extensions.SpreadsheetPosition; | |
import com.groupdocs.signature.exception.GroupDocsSignatureException; | |
import com.groupdocs.signature.options.sign.DigitalSignOptions; | |
public class SignPdfWithDigitalSignatureUsingJava { | |
public static void main(String[] args) throws Exception { // Main function to Sign PDF with Digital Signature in Java | |
// Remove the watermark in output PDF document by adding license | |
License lic = new License(); | |
lic.setLicense("GroupDocs.Signature.lic"); | |
try { | |
// Load the source PDF for digital signature | |
Signature signature = new Signature("sample.pdf"); | |
// Load the digital signature | |
DigitalSignOptions options = new DigitalSignOptions("MrSmithSignature.pfx"); | |
// optional: setup image file path | |
options.setImageFilePath("sample.jpg"); | |
options.setLeft(100); | |
options.setTop(100); | |
options.setPageNumber(1); | |
options.setPassword("1234567890"); | |
options.getExtensions().add(new SpreadsheetPosition(10, 10)); | |
// sign document to file | |
signature.sign("signed.pdf", options); | |
System.out.print(" Done "); | |
} catch (Exception e) { | |
throw new GroupDocsSignatureException(e.getMessage()); | |
} | |
} | |
} |
この機能の実装を示すために、Java でのデジタル署名の例 を作成しました。背景画像、左位置、上位置、ページ番号など、デジタル署名のさまざまなプロパティも定義しました。さらに、DOCS、XLSX、PPSM、TSV、PPTX などのソース ドキュメントを提供して、デジタル署名で電子署名することができます。
この投稿では、pdf ファイルにデジタル署名を追加するための詳細な手順と Java プログラムを作成しました。最近の記事で、Java を使用して QR コード署名で PDF に署名する方法について説明しました。Javaを使用してQRコード署名でPDFに署名する方法 を参照してください。