JAVA向けIRONPDFの使用

JavaでPDFにデジタル署名を追加する方法

更新済み 2024年8月25日
共有:

この記事では、JavaプログラムでIronPDFを使用してPDFにデジタル署名を追加する方法を学びます。

IronPDF - Java PDF ライブラリ

IronPDF Java PDFライブラリの概要は、開発者がゼロから新しいPDFドキュメントを作成することができるJavaライブラリです。HTML文字列をPDFに変換, HTMLファイルをPDFに変換, ワードからPDFへの変換、またはURL。 PDFからコンテンツを追加または削除して簡単に操作するのに役立ちます。 それを提供しますセキュリティとデジタル署名オプションPDFドキュメントとデジタル署名用。

IronPDFは、PDF関連のタスクを実行するために他のサードパーティライブラリを必要としません。 また、異なるファイル形式間の変換機能も提供します。 クロスプラットフォーム対応を提供し、特にJava、Scala、およびKotlin向けに設計されています。

JavaでPDFドキュメントにデジタル署名を追加する手順

前提条件

PDFドキュメントにデジタル署名するには、以下の前提条件が必要です:

  • 任意のJava IDE(NetBeans、Eclipse、IntelliJ)インストール済み - この記事では、IntelliJ. Java Development Kit は別途ダウンロードできます:Oracle Java SE ダウンロード.
  • 自動化のためのMaven Javaプロジェクト - これは、Javaプログラムで依存関係をダウンロードおよび管理するのに役立ちます。 MavenをダウンロードできますApache Mavenダウンロードページ.
  • IronPDF ライブラリのダウンロードとインストール - IronPDF をダウンロードしてインストールするには、その Maven 依存関係アーティファクトを含めます。 pom.xmlファイルのdependenciesタグに次のコードスニペットを追加することができます:

    申し訳ありませんが、xml-mvn-install-aoは技術的な名前またはコードスニペットのように見えます。このテキストに関する追加の文脈情報や具体的な文章があれば、より正確な翻訳を提供できます。正確な翻訳を提供するためには、文全体や文脈を知る必要があります。例えば、IronPDF、IronOCRなどの製品についての説明や指示の場合、それらを翻訳いたしますので、具体的な文章を送ってください。

また、エラーメッセージ、インストールガイド、または特定のコードに関する説明がある場合、その文脈に基づいて翻訳を行うことが可能です。何か他にお手伝いできることがあれば、お知らせください。 もちろんです!翻訳したいコンテンツを提供してください。それに従って正確な日本語訳を提供いたします。

  • 追加の依存関係として必要なのは、Slf4j-simpleです。 以下の依存関係を pom.xml ファイルに追加することで、オプションとして追加できます:
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-simple</artifactId>
        <version>2.0.5</version>
    </dependency>
XML

JavaでPDFにデジタル署名を追加する方法、図1:pom.xmlファイル

pom.xmlファイル

IronPDF ジャバパッケージのインポート

メインファイルに以下のインポートが必要です。これにより、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;
JAVA

これで、IronPDFを使用してJavaでPDFドキュメントにデジタル署名を追加するために必要なすべての準備が整いました。

PDFファイルを作成するか、既存のPDFファイルを開く

以下の内容を日本語に翻訳してください:

ToPDFにデジタル署名する方法を学ぶPDF文書をゼロから作成するか、既存のPDF文書を開く必要があります。 この記事では、使用して PDF署名のための新しいPDFドキュメントを作成しますrenderHtmlAsPdfメソッド`についてPdfDocumentクラス. コードは次のようになります:

PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Testing 2048 bit digital security</h1>");
JAVA

PDFドキュメントは作成されていますが、まだ保存されていません。 次のステップはデジタル署名を作成し、それをこのPDFドキュメントに追加し、最終的に保存することです。

デジタル署名を作成

Adobe Readerを使用してデジタル署名証明書を作成し、その詳細でPDFドキュメントにデジタル署名するためにJavaコードで使用します。 こちらをご覧ください:Adobe Readerで電子署名を作成する方法.

Adobe Readerを開き、編集 > 環境設定をクリックします。 その後、「署名」をクリックし、「個人情報」および「信頼された証明書」を選択します。

JavaでPDFにデジタル署名を追加する方法、図2:プロジェクトの設定

プロジェクトの設定

以下の署名フィールドを追加して、.pfx または .p12 ファイルドキュメントを作成してください。

JavaでPDFにデジタル署名を追加する方法、図3:デジタルID追加ダイアログ

デジタルIDを追加するダイアログ

以下のコードサンプルは、Windows向けの.pfx証明書ファイルとMac向けの.p12ファイル、およびその秘密鍵を使用してJavaコードで新しい署名を作成します。(パスワード):

Signature signature = new Signature("Iron.pfx", "123456");
JAVA

デジタル署名でPDFファイルに署名

IronPDF は、SignatureManager クラスを使用して署名証明書を追加するのに役立ちます。 [getSignature メソッド](/java/object-reference/api/com/ironsoftware/ironpdf/PdfDocument.html#getSignature())を使用すると、PDF文書の以前の署名を取得し、新しい署名を追加することができます。署名メソッドSignPdfWithSignature Method署名ファイルを引数として コードは次のようになります:

SignatureManager signatureManager = pdf.getSignature();
signatureManager.SignPdfWithSignature(signature);
JAVA

PDF署名ファイルを保存

最後に、PDFファイルを保存しましょう。そうしないと、PDFは署名されません。saveAsメソッドPdfDocument クラスを使用しています。 コードはシンプルで、次の通りです:

pdf.saveAs("signed.pdf");
JAVA

コードのコンパイルと実行が成功すると、出力はデジタル署名されたPDFを生成します。

JavaでPDFにデジタル署名を追加する方法、図4:出力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());
JAVA

コード全体は次のようになります:

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");
}
JAVA

以下からデジタル署名に関する詳細情報を確認できますPDF署名のコード例. さらにセキュリティを強化し、メタデータを編集したい場合は、セキュリティとメタデータのコード例.

結論

この記事では、IronPDF for Javaを使用してPDFドキュメントにデジタル署名を追加する方法をステップバイステップで説明しました。

まず、この記事では、IronPDFを使用してJavaで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 ドキュメントを生成するために。 商業利用のためにライセンス供与されることができ、ユーザーはこのライセンスに関する詳細情報を得ることができます。詳細ライセンス情報ページ.

< 以前
Java PDFコンバーター (コード例チュートリアル)
次へ >
JavaでPDFファイルを読み取る方法

準備はできましたか? バージョン: 2024.11 新発売

無料のMavenダウンロード ライセンスを表示 >