JavaでPDFデジタル署名をマスターする:テキスト、チェックボックス、デジタルフィールドにGroupDocs.Signatureを使用する

導入

PDFにデジタル署名を付与したいけれど、画像やデジタル証明書だけでは不十分?契約書の承認、文書への署名、構造化された同意書の添付など、あらゆる場面でGroupDocs.Signature for Javaが最適なソリューションです。このライブラリを使えば、テキストフォームフィールド署名に加え、チェックボックスやデジタル署名もPDFにシームレスに統合できます。

このチュートリアルでは、GroupDocs.Signature for Javaを使用して、テキスト、チェックボックス、デジタルといった様々なフォームフィールドタイプでPDF文書に署名する方法を学びます。これらの機能をJavaアプリケーションで効率的に実装する方法を学びます。

学習内容:

  • GroupDocs.SignatureをJavaで設定する方法
  • テキストフォームフィールド署名の実装
  • チェックボックスフォームフィールド署名の追加
  • デジタルフォームフィールド署名の統合
  • パフォーマンスの最適化と他のシステムとの統合

実装に進む前に、いくつかの前提条件について説明しましょう。

前提条件

このチュートリアルを実行するには、次のものが必要です。

  • Java開発キット(JDK): システムに JDK 8 以降がインストールされていることを確認してください。
  • IDE: IntelliJ IDEA、Eclipse、NetBeans などの Java IDE であればどれでも問題なく動作します。
  • GroupDocs.Signature for Java ライブラリMaven、Gradle、または直接ダウンロードで入手します。

環境設定要件

GroupDocs.Signature の機能を効果的に使用するために、開発環境に必要な依存関係とライブラリが設定されていることを確認してください。

知識の前提条件

このチュートリアルを実行するには、Java プログラミングの基本的な理解と、プログラムによる PDF の処理に関する知識が役立ちます。

Java 用 GroupDocs.Signature の設定

GroupDocs.Signature for Java をプロジェクトで使用するには、依存関係にライブラリを追加してください。手順は以下のとおりです。

メイヴン:

<dependency>
    <groupId>com.groupdocs</groupId>
    <artifactId>groupdocs-signature</artifactId>
    <version>23.12</version>
</dependency>

グレード:

implementation 'com.groupdocs:groupdocs-signature:23.12'

直接ダウンロード

最新バージョンは以下からダウンロードできます。 GroupDocs.Signature for Java リリース.

ライセンス取得手順

  • 無料トライアルまずは無料トライアルで機能をお試しください。
  • 一時ライセンス一時ライセンスを取得して、制限なしで全機能をテストします。
  • 購入長期的なニーズに合う場合は、ライセンスの購入を検討してください。

GroupDocs.Signatureをプロジェクトに追加した後、 Signature 次のようにオブジェクトを作成します。

import com.groupdocs.signature.Signature;

String filePath = "YOUR_DOCUMENT_DIRECTORY/sample.pdf";
Signature signature = new Signature(filePath);

実装ガイド

実装を特定の機能(テキスト フォーム フィールド、チェックボックス フォーム フィールド、デジタル フォーム フィールド署名)に分解してみましょう。

テキストフォームフィールド署名

概要

テキストフォームフィールドを使用してPDFに署名すると、ユーザー入力用の編集可能なフィールドを追加できます。これは、ユーザーによるデータ入力が必要な文書に便利です。

テキストフォームフィールド署名の設定:

  1. 署名オブジェクトのインスタンス化
    String filePath = "YOUR_DOCUMENT_DIRECTORY/sample.pdf";
    Signature signature = new Signature(filePath);
    
  2. TextFieldSignatureを作成する
    import com.groupdocs.signature.domain.signatures.formfield.TextFormFieldSignature;
    
    TextFormFieldSignature textSignature = new TextFormFieldSignature("tbData1", "Value-1");
    
  3. FormFieldSignOptionsを構成する
    import com.groupdocs.signature.options.sign.FormFieldSignOptions;
    import com.groupdocs.signature.domain.Padding;
    import com.groupdocs.signature.domain.enums.HorizontalAlignment;
    import com.groupdocs.signature.domain.enums.VerticalAlignment;
    
    FormFieldSignOptions optionsTextFF = new FormFieldSignOptions(textSignature);
    optionsTextFF.setHorizontalAlignment(HorizontalAlignment.Left);
    optionsTextFF.setVerticalAlignment(VerticalAlignment.Top);
    optionsTextFF.setMargin(new Padding(10, 20, 0, 0));
    optionsTextFF.setHeight(10);
    optionsTextFF.setWidth(100);
    
  4. 文書に署名する
    import java.util.ArrayList;
    import java.util.List;
    
    List<com.groupdocs.signature.options.sign.SignOptions> listOptions = new ArrayList<>();
    listOptions.add(optionsTextFF);
    
    SignResult signResult = signature.sign("YOUR_OUTPUT_DIRECTORY/SignTextFormFieldSignature_" + Paths.get(filePath).getFileName().toString(), listOptions);
    

チェックボックスフォームフィールドの署名

概要

チェックボックスフォームフィールドは、ユーザーによる選択や同意が必要な文書に最適です。この機能により、インタラクティブなチェックボックスを簡単に追加できます。

チェックボックスフォームフィールドの署名の設定:

  1. 署名オブジェクトのインスタンス化
    String filePath = "YOUR_DOCUMENT_DIRECTORY/sample.pdf";
    Signature signature = new Signature(filePath);
    
  2. CheckboxFormFieldSignatureを作成する
    import com.groupdocs.signature.domain.signatures.formfield.CheckboxFormFieldSignature;
    
    CheckboxFormFieldSignature chbSignature = new CheckboxFormFieldSignature("chbData1", true);
    
  3. FormFieldSignOptionsを構成する
    FormFieldSignOptions optionsTextCHB = new FormFieldSignOptions(chbSignature);
    optionsTextCHB.setHorizontalAlignment(HorizontalAlignment.Center);
    optionsTextCHB.setVerticalAlignment(VerticalAlignment.Top);
    optionsTextCHB.setMargin(new Padding(0, 0, 0, 0));
    optionsTextCHB.setHeight(10);
    optionsTextCHB.setWidth(100);
    
  4. 文書に署名する
    List<com.groupdocs.signature.options.sign.SignOptions> listOptions = new ArrayList<>();
    listOptions.add(optionsTextCHB);
    
    SignResult signResult = signature.sign("YOUR_OUTPUT_DIRECTORY/SignCheckboxFormFieldSignature_" + Paths.get(filePath).getFileName().toString(), listOptions);
    

デジタルフォームフィールド署名

概要

デジタル フォーム フィールドでは、デジタル証明書を使用した安全な署名が可能になり、ドキュメントの信頼性と整合性が確保されます。

デジタルフォームフィールド署名の設定:

  1. 署名オブジェクトのインスタンス化
    String filePath = "YOUR_DOCUMENT_DIRECTORY/sample.pdf";
    Signature signature = new Signature(filePath);
    
  2. DigitalFormFieldSignatureを作成する
    import com.groupdocs.signature.domain.signatures.formfield.DigitalFormFieldSignature;
    
    DigitalFormFieldSignature digitalSignature = new DigitalFormFieldSignature("dgData1");
    
  3. FormFieldSignOptionsを構成する
    FormFieldSignOptions optionsTextDIG = new FormFieldSignOptions(digitalSignature);
    optionsTextDIG.setHorizontalAlignment(HorizontalAlignment.Right);
    optionsTextDIG.setVerticalAlignment(VerticalAlignment.Center);
    optionsTextDIG.setMargin(new Padding(0, 50, 0, 0));
    optionsTextDIG.setHeight(50);
    optionsTextDIG.setWidth(50);
    
  4. 文書に署名する
    List<com.groupdocs.signature.options.sign.SignOptions> listOptions = new ArrayList<>();
    listOptions.add(optionsTextDIG);
    
    SignResult signResult = signature.sign("YOUR_OUTPUT_DIRECTORY/SignDigitalFormFieldSignature_" + Paths.get(filePath).getFileName().toString(), listOptions);
    

実用的な応用

GroupDocs.Signature for Java は汎用性が高く、さまざまな実際のシナリオに適用できます。

  • 契約管理テキスト フィールド、チェックボックス、デジタル署名を使用して契約書への署名を自動化します。
  • 承認ワークフロー組織内にデジタル承認システムを実装します。
  • 顧客契約安全なデジタル署名を使用して顧客契約を合理化します。

この包括的なガイドは、GroupDocs.Signatureを使用してJavaアプリケーションにデジタル署名を自信を持って実装できるようにします。さらに詳しく知りたい場合は、これらの機能を大規模なドキュメント管理システムや自動化されたワークフローに統合することを検討してください。