JavaでHTMLからPDFへ
IronPDF for Java は開発者に HTML コンテンツから PDF 出力への直接の道を提供し、別のレイアウト API を学ぶ必要がありません。 ライブラリは現代のブラウザと同じ方法で HTML、CSS、JavaScript をレンダリングするため、PDF 出力は画面で見るものと一致します。 このチュートリアルはインストール、3 つの主要な HTML-to-PDF 変換方法、およびヘッダー、フッター、ページサイズ、カスタムマージンを含むフォーマットオプションをカバーします。
このチュートリアルは IronPDF for Java を使用します。 並行する .NET バージョンのガイドは HTML to PDF 変換チュートリアル for .NET で利用可能です。 IronPDF は Python および Node.js でも利用可能です。
クイックスタート:HTML を PDF ファイルに変換
HTML 文字列から PDF への最短経路は、Java コードの 3 行です:
:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/quickstart.java
import com.ironsoftware.ironpdf.*;
// Convert an HTML string directly to a PDF document
PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Hello from IronPDF!</h1>");
// Save to disk
pdf.saveAs("output.pdf");
今日あなたのプロジェクトでIronPDFを無料トライアルで使用開始。
目次
- インストール
- HTML から PDF への変換
- PDF フォーマットオプション
- 次のステップ
IronPDF を Maven プロジェクトに追加する方法
MavenプロジェクトにIronPDFを追加するには、プロジェクトのpom.xml依存ブロックに2つのエントリが必要です。 最初のエントリはIronPDFライブラリを引き込みます。 2 番目は SLF4J ロギングプロバイダーを追加し、IronPDF が実行中にエンジンメッセージを書くことができるようにします。
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/maven-dependency.xml
<dependency>
<groupId>com.ironsoftware</groupId>
<artifactId>ironpdf</artifactId>
<version>2024.9.1</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>2.0.5</version>
</dependency>
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/maven-dependency.xml
<dependency>
<groupId>com.ironsoftware</groupId>
<artifactId>ironpdf</artifactId>
<version>2024.9.1</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>2.0.5</version>
</dependency>
ironpdfアーティファクトは最新のIronPDF for Javaリリースおよびチェンジログを参照します。 slf4j-simple依存関係は基本的なログバックエンドを提供します。 必要に応じて、Logback または Log4J で置き換えたり、ログ出力を抑制するために全く省略することもできます。
両方のエントリを追加した後、プロジェクトのルートからmvn installを実行してアーティファクトをダウンロードします。 Maven は Maven Central に対して依存関係を解決します。
com.ironsoftware:ironpdf用のMaven Centralページをご確認ください。
IronPDF JAR を手動でインストールする方法
Maven や他の依存関係マネージャーを使用していないプロジェクトは、JAR を直接ダウンロードしてクラスパスに含めることで IronPDF を追加できます。 IronPDF for Java ダウンロードページ に移動し、ファット JAR ファイルをダウンロードします。
ファット JAR はすべての依存関係をまとめているため、メインアーティファクト以外に追加のクラスパスエントリは必要ありません。 オプションで、ロギングを有効にするための SLF4J 実装 JAR をダウンロードします。
IDEのライブラリ管理パネルを使用して、またはターミナルからのコンパイルと実行時に-classpathエントリを指定して、プロジェクトのクラスパスに両方のJARを追加します。
IronPDF を Java ソースファイルにインポートする方法
com.ironsoftware.ironpdfパッケージにはすべての変換および処理コンポーネントが含まれています。 IronPDF メソッドを呼び出すすべての Java ファイルの上部に次のインポート文を配置します。
:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/import-statement.java
// Import all IronPDF components
import com.ironsoftware.ironpdf.*;
特定のクラスを名前付きインポートすることも有効です:import com.ironsoftware.ironpdf.PdfDocument;。 探索中のワイルドカードインポートは便利です。
IronPDF for Java でライセンスキーを設定する方法
IronPDF for Java はライセンスキーがなくても無料で使用可能ですが、生成または変更されたすべての PDF 文書にタイル状の透かしを適用します。 透かしを削除するには、変換または操作メソッドを呼び出す前に有効なライセンスキーを提供してください。
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/set-license-key.java
// Set the license key before any PDF operations
License.setLicenseKey("YOUR-LICENSE-KEY");
//:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/set-license-key.java
// Set the license key before any PDF operations
License.setLicenseKey("YOUR-LICENSE-KEY");
アプリケーションの起動時、すべてのsetLicenseKey呼び出しを配置してください。 ライセンスキーを購入するか、無料トライアルを開始することで透かしなしの PDF を生成してください。
ログファイルの場所を設定する (オプション)
デフォルトで、IronPDFはエンジンメッセージをアプリケーションのルートディレクトリにあるIronPdfEngine.logという名前のファイルに書き込みます。 ログファイルのパスを変更するには、PDF操作を行う前にSettings.setLogPathを呼び出します。
:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/set-log-path.java
import java.nio.file.Paths;
// Redirect log output before using IronPDF
Settings.setLogPath(Paths.get("logs/ironpdf-engine.log"));
PdfDocument呼び出しに先行する必要があります。 変換を開始した後に呼び出しても、そのセッションには影響しません。}]
Java で HTML 文字列を PDF に変換する方法
PdfDocument.renderHtmlAsPdf(String html)は有効な任意のHTMLマークアップをPDFドキュメントに変換します。 このメソッドは生のHTML文字列を受け取り、保存、マージ、またはさらに変更できるPdfDocumentオブジェクトを返します。
:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/html-string-to-pdf.java
// Convert a minimal HTML string to a PDF document
PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Hello from IronPDF!</h1>");
// Save the resulting document to disk
pdf.saveAs("html-string-output.pdf");
レンダリングエンジンはChromiumに基づいているため、Chromeで動作するすべてのHTML、CSS、またはJavaScriptはPDFに正しくレンダリングされます。 これにはFlexboxレイアウト、CSS Grid、ウェブフォント、SVG、およびJavaScript駆動のチャートが含まれます。
メソッドのオーバーロードバージョンは、ベースパスを設定するための第二引数を受け入れます:renderHtmlAsPdf(String html, String basePath)。 このベースパスは、ローカルスタイルシート、画像、およびスクリプトへの相対参照を解決するために使用されます。
:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/html-string-with-assets.java
// HTML referencing local stylesheet and image
String html = "<html><head><link rel='stylesheet' href='style.css'></head>"
+ "<body><img src='logo.png'/><h1>Invoice</h1></body></html>";
// Provide the folder containing style.css and logo.png as the base path
PdfDocument pdf = PdfDocument.renderHtmlAsPdf(html, "C:/invoices/");
pdf.saveAs("invoice-output.pdf");
ベースパスはローカルファイルシステム上のディレクトリまたはリモートURLを指すことができます。 IronPDFはレンダリング中にその場所から参照されたアセットを取得します。
このメソッドについて詳しく知るには、HTML文字列をPDFに変換するコード例をご覧ください。
JavaでURLをPDFに変換する方法
PdfDocument.renderUrlAsPdf(String url)は指定されたURLのページをフェッチし、完全なDOM(JavaScriptの実行を含む)をレンダリングし、出力をPDFとして保存します。
:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/url-to-pdf.java
// Render a live web page to PDF by URL
PdfDocument pdf = PdfDocument.renderUrlAsPdf("https://en.wikipedia.org/wiki/PDF");
// Save the rendered document
pdf.saveAs("wikipedia-pdf-article.pdf");
Chromiumレンダリングエンジンは外部スタイルシート、フォント、およびJavaScriptファイルを取得するため、結果として生成されるPDFはページの視覚的状態を正確に反映しています。 このメソッドは、ウェブダッシュボードからのレポート生成、公開ウェブコンテンツのアーカイブ、またはクライアントサイドレンダリングに依存するデータビジュアライゼーションの変換に適しています。
カスタム要求ヘッダーや認証などの追加オプションについては、専用のURLからPDFへの変換例を参照してください。
JavaでHTMLファイルをPDFに変換する方法
PdfDocument.renderHtmlFileAsPdf(String filePath)はローカルファイルシステムからHTMLファイルを読み取り、PDFに変換します。 メソッドはHTMLファイル内のすべての相対アセット参照をファイルのディレクトリに対して自動的に解決します。
:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/html-file-to-pdf.java
// Convert a local HTML file (with a linked CSS file) to PDF
PdfDocument pdf = PdfDocument.renderHtmlFileAsPdf("C:/invoices/TestInvoice1.html");
// Save the resulting document
pdf.saveAs("invoice-from-file.pdf");
メソッドは複数ファイルを持つHTMLプロジェクトも正しく処理します。 上記の例で、TestInvoice1.htmlが同じディレクトリにあるスタイルシートへのリンクがある場合、IronPDFはレンダリング時にそのスタイルシートを適用します。 結果は、ブラウザーレンダリングされたソースファイルの外観に一致するPDFです。
renderHtmlFileAsPdfを呼び出す場合は絶対ファイルパスを使用してください。 相対パスはJVMの作業ディレクトリに対して解決されるため、HTMLファイルの場所と異なる可能性があります。)}
このメソッドは、ディスク上にHTMLテンプレートを保持するPDF生成ワークフローに特に役立ちます:請求書ジェネレーター、レポートテンプレート、およびフォーム出力システムが一般的な使用例です。
JavaでPDFのページサイズと向きを設定する方法
ページサイズと向きはChromePdfRenderOptionsクラスを通じて制御されます。 renderHtmlAsPdf呼び出しの第二引数として渡します。
:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/page-size-orientation.java
import com.ironsoftware.ironpdf.*;
import com.ironsoftware.ironpdf.render.*;
// Create rendering options for the PDF
ChromePdfRenderOptions options = new ChromePdfRenderOptions();
// Set paper size to A4
options.setPaperSize(PaperSize.A4);
// Set to landscape orientation
options.setPaperOrientation(PaperOrientation.Landscape);
// Apply options to the conversion
PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Landscape Report</h1>", options);
pdf.saveAs("landscape-a4-report.pdf");
A5などの標準オプションが含まれています。 Landscapeを受け入れます。
非標準の寸法には、setCustomPaperSizeInInches(double width, double height)を使用してください。
:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/custom-paper-size.java
ChromePdfRenderOptions options = new ChromePdfRenderOptions();
// Set a custom 100mm x 150mm page size
options.setCustomPaperSizeInMillimeters(100, 150);
PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<p>Custom size card</p>", options);
pdf.saveAs("custom-size-card.pdf");
カスタムPDF用紙サイズの例を参照し、PaperSize定数とサイズオプションの完全なリストを確認してください。
JavaでPDFにカスタムマージンを設定する方法
余白のサイズもChromePdfRenderOptionsで設定されます。 ライブラリはトップ、ボトム、左、右マージン用に個別のセッターを公開しており、すべてミリメートル単位の値を受け取ります。
:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/custom-margins.java
ChromePdfRenderOptions options = new ChromePdfRenderOptions();
// Set all four margins in millimeters
options.setMarginTop(20);
options.setMarginBottom(20);
options.setMarginLeft(15);
options.setMarginRight(15);
PdfDocument pdf = PdfDocument.renderHtmlAsPdf(
"<p>Document with custom margins</p>", options);
pdf.saveAs("custom-margins.pdf");
すべてのマージンをゼロに設定すると白い余白が完全に除去され、ラベル、証明書、またはグラフィックレイアウトのような全面印刷デザインに役立ちます。
0であれば、そのエッジの余白が無効になります。 プリンタードライバのマージンはIronPDFのマージンとは別であり、用紙の端から端まで埋め尽くす内容が印刷された際には、クリップされる可能性があります。)}
動作するコードサンプルは、カスタムマージンの例を参照してください。
JavaでPDFにヘッダーとフッターを追加する方法
IronPDFは2種類のヘッダーとフッターをサポートしています: テキストベースの(HtmlHeaderFooter)です。 テキストヘッダーは設定が簡単です; HTMLヘッダーはフルスタイリングと画像をサポートします。
テキストヘッダーとフッターの追加
:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/text-header-footer.java
import com.ironsoftware.ironpdf.*;
import com.ironsoftware.ironpdf.headerfooter.*;
import com.ironsoftware.ironpdf.render.*;
ChromePdfRenderOptions options = new ChromePdfRenderOptions();
// Configure a text-based header
TextHeaderFooter header = new TextHeaderFooter();
// Use merge fields: {page}, {total-pages}, {date}, {time}, {url}, {html-title}
header.setCenterText("Report Title");
header.setRightText("Page {page} of {total-pages}");
options.setTextHeader(header);
// Configure a text-based footer
TextHeaderFooter footer = new TextHeaderFooter();
footer.setLeftText("Confidential");
footer.setCenterText("{date}");
options.setTextFooter(footer);
PdfDocument pdf = PdfDocument.renderHtmlAsPdf(
"<h1>Annual Report</h1><p>Content here.</p>", options);
pdf.saveAs("report-with-headers.pdf");
{html-title}マージフィールドは、レンダー時にドキュメント固有の値に置き換えられます。
HTMLヘッダーの追加
ロゴ、ブランドカラー、または複雑なレイアウトを必要とするヘッダーには、HtmlHeaderFooterを使用します:
:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/html-header.java
import com.ironsoftware.ironpdf.headerfooter.*;
HtmlHeaderFooter header = new HtmlHeaderFooter();
header.setHtmlFragment(
"<div style='background:#003366;color:white;padding:8px;font-family:Arial;'>"
+ "<img src='/images/logo.png' style='height:30px;float:left;'/>"
+ "<span style='line-height:30px;margin-left:10px;'>Company Report</span>"
+ "</div>"
);
ChromePdfRenderOptions options = new ChromePdfRenderOptions();
options.setHtmlHeader(header);
PdfDocument pdf = PdfDocument.renderHtmlAsPdf(
"<h1>Q3 Results</h1>", options);
pdf.saveAs("report-with-html-header.pdf");
追加のマージフィールドオプションと複数ページの振る舞いについては、ヘッダーとフッターのコード例を参照してください。
JavaでPDFに透かしを適用する方法
IronPDFは既存のPDFページにHTMLコンテンツをスタンプすることで透かしを適用します。 このアプローチは位置、透過性およびスタイリングの完全なコントロールを提供します。
:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/watermark.java
import com.ironsoftware.ironpdf.*;
// Create the base PDF
PdfDocument pdf = PdfDocument.renderHtmlAsPdf("<h1>Confidential Report</h1>");
// Apply a diagonal text watermark using HTML stamping
String watermarkHtml =
"<div style='position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) rotate(-45deg);"
+ "font-size:80px;color:rgba(200,0,0,0.15);font-family:Arial;font-weight:bold;"
+ "white-space:nowrap;pointer-events:none;'>CONFIDENTIAL</div>";
pdf.applyStamp(watermarkHtml);
pdf.saveAs("watermarked-report.pdf");
applyStampメソッドは標準のHTML/CSSを受け入れます。 テキストのために半透明のrgba色を使用することで、透かしがドキュメントのコンテンツを隠すことなく視認性を確保します。
画像ベースの透かしや特定のページ範囲に適用される透かしについては、Java用のカスタム透かしガイドを参照してください。
JavaでPDFファイルを圧縮する方法
画像を含むPDFファイルに対しては、IronPDFは埋め込まれた画像を低解像度にリサンプリングしてファイルサイズを削減することができます。 既存のcompressImagesを使用します。
:path=/static-assets/pdf/content-code-examples/tutorials/format-pdfs/compress-pdf.java
// Load an existing PDF or use one created by IronPDF
PdfDocument pdf = PdfDocument.fromFile(Paths.get("large-report.pdf"));
// Reduce image quality to 60% (value range: 1–100)
pdf.compressImages(60);
// Save the compressed document
pdf.saveAs("compressed-report.pdf");
品質パラメータは1から100の整数で、100は完全な画像品質を保持し、低い値は画像の忠実度を犠牲にしてファイルサイズを削減します。 60から80の値は、ほとんどのビジネス文書に対してサイズと視覚品質のバランスを取る実用的な選択です。
画像品質のしきい値に関する詳細については、PDF圧縮例を参照してください。
次のステップ
このチュートリアルは、(文字列、URL、ファイルの)3つのHTMLからPDFへの変換方法、ページサイズ設定、マージン、ヘッダー、フッター、透かし、および圧縮をカバーしました。 これらはJavaサーバーアプリケーションの最も一般的なPDFフォーマット操作です。
JavaでのIronPDFをさらに進めるために:
- IronPDF for Javaのコード例を探索して、コピーペーストでの出発点を確認します
- PDF生成設定の例を読んで、DPI、ズーム、およびレンダリング品質オプションを確認します
- 既存のPDFからテキストと画像を抽出する方法を確認します
- JavaアプリケーションからプログラムでPDFを印刷する方法を学びます
- IronPDF for Java APIリファレンスを参照し、完全な
PdfDocumentメソッドリストを参照します
無料トライアルを始めて、透かしのないPDFを生成するか、またはライセンスオプションを表示してIronPDFをプロジェクトに追加します。
チュートリアル クイックアクセス
このチュートリアルをJavaソースコードとしてダウンロードする
このチュートリアルのHTMLからPDFへ for Javaソースコード全体は、圧縮されたIntelliJプロジェクトとして無料でダウンロードできます。
ダウンロードこのチュートリアルをGitHubで探索
このプロジェクトのソースコードはGitHubでIntelliJ IDEAプロジェクトとして提供されており、Eclipseまたは他 for Java IDEにもインポートできます。
IronPDF for JavaフォーマットPDFの例APIリファレンスを見る
com.ironsoftware.ironpdfパッケージ内のすべてのクラス、メソッド、フィールド、および列挙の詳細をカバーするIronPDF for JavaのAPIリファレンスを探索してください。
よくある質問
JavaでHTML文字列をPDFに変換するにはどうすればよいですか?
IronPDF for JavaライブラリからPdfDocument.renderHtmlAsPdf(String html)を使用します。HTMLマークアップを文字列引数として渡し、返されたPdfDocumentオブジェクトでsaveAsを呼び出し、ファイルをディスクに書き込みます。
MavenプロジェクトにIronPDFを追加するにはどうすればよいですか?
pom.xmlファイルの<dependencies>セクションにcom.ironsoftware:ironpdfアーティファクトを追加してください。また、ログを有効にするためにorg.slf4j:slf4j-simpleなどのSLF4J実装を追加してください。両方のアーティファクトをダウンロードするには、mvn installを実行します。
IronPDF for Javaで生成されたPDFのページサイズをどのように設定しますか?
ChromePdfRenderOptions オブジェクトを作成し、setPaperSize(PaperSize.A4)(または別の定数)を呼び出してください。オプションオブジェクトをrenderHtmlAsPdfへの2番目の引数として渡します。標準外の寸法の場合は、setCustomPaperSizeInMillimetersを使用してください。
JavaでPDFにヘッダーとフッターを追加するにはどうすればいいですか?
TextHeaderFooter はプレインテキストのヘッダーとフッター用に使用し、HtmlHeaderFooter は完全にスタイル付けされたHTMLコンテンツ用に使用します。オブジェクトをテキストまたはHTMLで構成し、setTextHeader または setHtmlHeader を使用して ChromePdfRenderOptions インスタンスに設定し、オプションをレンダーメソッドに渡します。
IronPDF for Java を使用してPDFに透かしを適用するにはどうすればよいですか?
既存のPdfDocumentに対してapplyStamp(String htmlFragment)を呼び出します。透かしの外観を定義したHTML文字列を渡し、CSSのposition:absolute、transform:rotate、および半透明のrgbaカラーを使用して、下のコンテンツを隠さずにテキストを重ねます。
IronPDF for Java はウェブページをPDFに変換できますか?
はい。PdfDocument.renderUrlAsPdf(String url) を使用してページのURLを呼び出します。IronPDFは、Chromiumレンダリングエンジンを使用してページを取得し、JavaScriptを含む実行を行った後にPDF出力を生成します。
生成されたPDFからIronPDFのウォーターマークを削除するにはどうすればいいですか?
PDF操作を行う前にLicense.setLicenseKey("YOUR-LICENSE-KEY")を呼び出してくさい。有効なライセンスキーがないPDFには透かしが適用されます。ライセンスや無料トライアルキーはironpdf.com/java/licensing/から取得できます。
IronPDF for JavaでPDFファイルを圧縮するにはどうすればいいですか?
PdfDocument.fromFileを使用してPDFを読み込み、1から100の値でcompressImages(int quality)を呼び出します。値が低いほど、埋め込まれた画像の解像度を下げてファイルサイズを縮小します。saveAsを呼び出して、圧縮されたファイルを書き込みます。
IronPDF for Java はカスタムページ余白をサポートしていますか?
はい。ChromePdfRenderOptionsを使用し、ミリメートル単位でsetMarginTop、setMarginBottom、setMarginLeft、およびsetMarginRightを呼び出します。このオプションをレンダーメソッドに渡してマージンを適用します。
IronPDFはど for Javaバージョンをサポートしていますか?
IronPDF for Java は Java 8 以降をサポートしています。このライブラリは com.ironsoftware:ironpdf というMavenアーティファクトとして、または ironpdf.com/java/ からスタンドアロンのfat-JARとしてダウンロードできます。






