JAVA向けIRONPDFの使用

Java PDF Stamper(初心者向けチュートリアル)

この記事では、IronPDFライブラリを使用してJavaでPDFスタンパーを作成します。

IronPDF - Java PDFライブラリ

IronPDFはJava PDFライブラリで、PDFドキュメントの生成、読み取り、編集を行います。 ユーザーがPDFドキュメントを簡単かつ正確に操作できるようにします。 IronPDF for JavaはIronPDF for .NETの成功を基に構築されており、異なるプラットフォーム全体で効率性を提供します。 IronPDF for Java は、高速で性能が最適化されたIronPdfEngineを使用しています。

IronPDFは、PDFからテキストや画像を抽出し、その他のオブジェクトもPDFファイルから抽出するのに役立ちます。 HTML文字列、URL、および画像からPDFを作成するのに役立ちます。 また、異なるファイル形式間の変換も可能です。 簡単に新しいコンテンツを追加し、PDFにデジタル署名を追加したり、既存のPDFドキュメントにドキュメントメタデータを追加したりできます。 Java 8以上、Scala、Kotlin用に特別に設計されており、Windows、Linux、クラウドプラットフォームで使用できます。

JavaアプリケーションでIronPDFを使用してPDFスタンプを作成する手順

前提条件

次の前提条件を満たしている場合、PDFスタンパーを作成できます:

Java IDE (統合開発環境)

あなたはどのJava対応IDEでも使用できます。Java開発用のIDEはたくさんあります。 このデモンストレーションではIntelliJ IDEを使用します。 NetBeans、Eclipseなどを使用できます。

2. Mavenプロジェクト

Mavenは依存関係を管理し、Javaプロジェクトを制御することを可能にします。 Java用のMavenは公式Mavenウェブサイトからダウンロードできます。 IntelliJ IDE for JavaにはMavenサポートが含まれています。

3. IronPDF

IronPDF for Java は複数の方法でダウンロードおよびインストールできます。

  • Mavenプロジェクトのpom.xmlファイルにIronPDFの依存関係を追加する。
<!-- Add IronPDF Dependency Here -->
<!-- Add IronPDF Dependency Here -->
XML

Slf4j

また、既存のPDF文書にスタンプを押すことも求められます。 IntelliJのMaven依存関係マネージャを使用して追加することができるか、またはMavenのウェブサイトから直接ダウンロードすることができます。次の依存関係をpom.xmlファイルに追加します:

<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-simple</artifactId>
    <version>2.0.5</version>
</dependency>
<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-simple</artifactId>
    <version>2.0.5</version>
</dependency>
XML

必要なインポートの追加

必要な前提条件がすべてインストールされたら、次のステップは、PDFドキュメントを操作するために必要なIronPDFパッケージをインポートすることです。 Main.javaファイルの冒頭に次のコードを追加してください:

import com.ironsoftware.ironpdf.License;
import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.edit.PageSelection;
import com.ironsoftware.ironpdf.metadata.MetadataManager;
import com.ironsoftware.ironpdf.security.PdfPrintSecurity;
import com.ironsoftware.ironpdf.security.SecurityManager;
import com.ironsoftware.ironpdf.security.SecurityOptions;
import com.ironsoftware.ironpdf.stamp.*;

import java.io.IOException;
import java.nio.file.Paths;
import java.util.Date;
import com.ironsoftware.ironpdf.License;
import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.edit.PageSelection;
import com.ironsoftware.ironpdf.metadata.MetadataManager;
import com.ironsoftware.ironpdf.security.PdfPrintSecurity;
import com.ironsoftware.ironpdf.security.SecurityManager;
import com.ironsoftware.ironpdf.security.SecurityOptions;
import com.ironsoftware.ironpdf.stamp.*;

import java.io.IOException;
import java.nio.file.Paths;
import java.util.Date;
JAVA

ライセンスキー

IronPDFで利用可能ないくつかのメソッドは、使用するためにライセンスが必要です。 ライセンスを購入するか、試用ライセンスで無料でIronPDFをお試しください。 次のようにキーを設定できます:

License.setLicenseKey("YOUR-KEY");
License.setLicenseKey("YOUR-KEY");
JAVA

既存のPDFドキュメントを開く

新しいコンテンツをスタンプするために既存のドキュメントをインポートするには、PdfDocument クラスが使用されます。 その静的メソッドfromFileが、特定のパスから実際のファイル名を用いてファイルを読み込む際に使用されます。 コードは次のようになります:

PdfDocument pd = PdfDocument.fromFile(Paths.get("sample.pdf"));
PdfDocument pd = PdfDocument.fromFile(Paths.get("sample.pdf"));
JAVA

元のドキュメントを読み込みました:

Java PDF Stamper(初心者向けチュートリアル)、図1:サンプルドキュメント

サンプルドキュメント

新しいHTMLコンテンツを追加

IronPDFは、スタンプパッケージを提供します。 それは、BarcodeStamperHtmlStamperImageStamperTextStamperなど、コンテンツ配置用の便利なスタンプオプションを多数提供します。 このPDFドキュメントに新しいHTMLコンテンツを追加するには、HtmlStamperクラスが使用されます。 前のセクションのファイルを使用し、いくつかの内容を追加しましょう。 以下のコードはこのタスクを達成するのに役立ちます:

HtmlStamper htmlStamper = new HtmlStamper();
htmlStamper.setHtml("New content added!");
HtmlStamper htmlStamper = new HtmlStamper();
htmlStamper.setHtml("New content added!");
JAVA

HtmlStamper オブジェクトが作成され、その後、setHtml メソッドを使用して新しいHTMLコードを添付します。 次のステップは、既存のPDFドキュメントに適用して新しいPDFバージョンを作成することです。

PDFドキュメントにすべてのインタラクティブ要素を追加する

既存のドキュメントにHTMLコードを追加するために、先に作成したPdfDocumentオブジェクトを使用します。 それは、applyStampを2つのオーバーロードで提供し、1つはコンテンツのみをStamperオブジェクトとして受け取るもの、もう1つはページ選択も受け取るものがあります。

pd.applyStamp(htmlStamper);
pd.applyStamp(htmlStamper);
JAVA

これにより、文字列の説明が既存のドキュメントに追加されます。

PDFへの変更を保存

ファイルを保存するには、PdfDocument オブジェクトの saveAs メソッドを使用します。

pd.saveAs("stamped.pdf");
pd.saveAs("stamped.pdf");
JAVA

Java PDF Stamper(初心者向けチュートリアル)、図2:スタンプが押されたPDFファイル

スタンプされたPDFファイル

HTML文字列は、PDFドキュメントのすべてのページの中央に追加されます。

特定のページにスタンプ

特定のページにコンテンツを追加するには、別のオーバーロードされたapplyStampメソッドを使用できます。

pd.applyStamp(htmlStamper, PageSelection.singlePage(1));
pd.applyStamp(htmlStamper, PageSelection.singlePage(1));
JAVA

PageSelection クラスは、ページ番号を制御するためのさまざまなメソッドを提供します。 firstPagelastPageallPages、および pageRange は、コンテンツを適切に追加するために利用できるいくつかのメソッドです。

コンテンツの整列

Stamperクラスで、既存のPDFドキュメントに追加するコンテンツの位置を調整するために、setVerticalAlignmentsetHorizontalAlignmentsetWidthsetHeightメソッドを使用できます。 次のサンプルコードは、ページの左下にテキストを配置するのに役立ちます:

htmlStamper.setHorizontalAlignment(HorizontalAlignment.LEFT);
htmlStamper.setVerticalAlignment(VerticalAlignment.BOTTOM);
htmlStamper.setHorizontalAlignment(HorizontalAlignment.LEFT);
htmlStamper.setVerticalAlignment(VerticalAlignment.BOTTOM);
JAVA

Java PDF Stamper(初心者チュートリアル)、図3: スタンパー配置後の出力PDFファイル

スタンパーの配置された出力PDFファイル

setVerticalOffsetsetHorizontalOffsetメソッドを使用して、コンテンツの位置をさらに調整できます。

IronPDF を使用して PDF ファイルを操作する方法の詳細については、この Java での HTML から PDF への変換のコード例 をご覧ください。

既存のドキュメントにメタデータ、署名、セキュリティオプションをスタンプする

IronPDF for Javaは多機能なライブラリであり、メタデータとしてのファイル説明、ユーザー権限、ユーザーパスワードの追加、デジタル署名の追加、署名付きドキュメントの作成を行い、PDFドキュメントのバージョンを保存する機能を提供します。

メタデータ

// Edit file metadata
MetadataManager metadata = pd.getMetadata();
metadata.setAuthor("Satoshi Nakamoto");
metadata.setKeywords("SEO, Friendly");
metadata.setModifiedDate(new Date().toString());
// Edit file metadata
MetadataManager metadata = pd.getMetadata();
metadata.setAuthor("Satoshi Nakamoto");
metadata.setKeywords("SEO, Friendly");
metadata.setModifiedDate(new Date().toString());
JAVA

セキュリティオプション

PDFファイルのセキュリティオプションを制御して、データが不正使用から保護されるようにすることもできます。 それは、[setAllowUserPrinting](/java/object-reference/api/com/ironsoftware/ironpdf/security/SecurityOptions.html#setAllowUserPrinting(com.ironsoftware.ironpdf.security.PdfPrintSecurity))、[setAllowUserEdits](/java/object-reference/api/com/ironsoftware/ironpdf/security/SecurityOptions.html#setAllowUserEdits(com.ironsoftware.ironpdf.security.PdfEditSecurity))、[setAllowUserCopyPasteContent](/java/object-reference/api/com/ironsoftware/ironpdf/security/SecurityOptions.html#setAllowUserCopyPasteContent(java.lang.Boolean))、[setAllowUserAnnotations](/java/object-reference/api/com/ironsoftware/ironpdf/security/SecurityOptions.html#setAllowUserAnnotations(java.lang.Boolean))、[setUserPassword](/java/object-reference/api/com/ironsoftware/ironpdf/security/SecurityOptions.html#setUserPassword(java.lang.String))、[setAllowUserFormData](/java/object-reference/api/com/ironsoftware/ironpdf/security/SecurityOptions.html#setAllowUserFormData(java.lang.Boolean))パラメータをtrueまたはfalseに設定するオプションを提供します。 以下のサンプルコードは、上記で述べたすべてのオブジェクトプロパティを設定するのに役立ちます。

// Edit file security settings
SecurityOptions securityOptions = new SecurityOptions();
securityOptions.setAllowUserCopyPasteContent(false);
securityOptions.setAllowUserAnnotations(false);
securityOptions.setAllowUserPrinting(PdfPrintSecurity.FULL_PRINT_RIGHTS);
securityOptions.setAllowUserFormData(false);
securityOptions.setOwnerPassword("top-secret");
securityOptions.setUserPassword("sharable");
// Edit file security settings
SecurityOptions securityOptions = new SecurityOptions();
securityOptions.setAllowUserCopyPasteContent(false);
securityOptions.setAllowUserAnnotations(false);
securityOptions.setAllowUserPrinting(PdfPrintSecurity.FULL_PRINT_RIGHTS);
securityOptions.setAllowUserFormData(false);
securityOptions.setOwnerPassword("top-secret");
securityOptions.setUserPassword("sharable");
JAVA

ユーザーパスワード

// Change or set the document encryption password
SecurityManager securityManager = pd.getSecurity();
securityManager.removePasswordsAndEncryption();
securityManager.makePdfDocumentReadOnly("secret-key");

securityManager.setSecurityOptions(securityOptions);
pd.saveAs(Paths.get("assets/secured.pdf"));
// Change or set the document encryption password
SecurityManager securityManager = pd.getSecurity();
securityManager.removePasswordsAndEncryption();
securityManager.makePdfDocumentReadOnly("secret-key");

securityManager.setSecurityOptions(securityOptions);
pd.saveAs(Paths.get("assets/secured.pdf"));
JAVA

実際のファイルにデジタル署名をスタンプするには、このPDF署名の詳細なコード例をご覧ください。

サマリー

この記事では、Javaで既存のPDF文書にコンテンツをスタンプする方法について説明しました。 印鑑パッケージには、さまざまな目的に使える便利なスタンピングクラスが含まれており、元のドキュメントの任意の場所に複数のフォーマットのコンテンツをPDFに追加することができます。

IronPDFは、多彩なライブラリであり、上記のコード例からもそれが伺えます。 それは非常にシンプルでありながら、非常に強力なPDF生成および操作ツールです。 これは、開発者がすべてのPDF機能を単一のJavaアプリケーションプログラムに簡単に統合できるようにします。

IronPDFは単一開発に無料で提供され、透かしのない無料の試用ライセンスを提供して、すべての機能をテストできます。 しかし、商用利用にはIronPDFのライセンスが必要です。

最後に、IronPDFはIron Softwareスイートを購入するための特別プロモーションを提供しており、開発者は2つのライセンスの価格でIron Softwareの5つの製品すべてを購入することができます。

Darrius Serrant
フルスタックソフトウェアエンジニア(WebOps)

Darrius Serrantは、マイアミ大学でコンピュータサイエンスの学士号を取得しており、Iron SoftwareでフルスタックWebOpsマーケティングエンジニアとして働いています。若い頃からコーディングに魅了され、コンピューティングを神秘的でありながらアクセスしやすいものと見なし、それが創造性と問題解決のための完璧な媒体であると感じました。

Iron Softwareでは、新しいものを作り出し、複雑な概念を簡単にすることでより理解しやすくすることを楽しんでいます。彼は常駐の開発者の一人として、学生に教えることを志願し、自分の専門知識を次世代と共有しています。

Darriusにとって、彼の仕事は評価され、実際に影響があることで充実しています。

< 以前
JavaでテンプレートからPDFを作成する方法
次へ >
JavaにおけるMavenとは (使用方法のチュートリアル)