ライブ環境でテストする
ウォーターマークなしで本番環境でテストしてください。
必要な場所でいつでも動作します。
今日、技術の進歩により、開発者はより優れたソリューションから恩恵を受けることができます。
ソフトウェア開発プロセスの未来は自動化にあります。 長い間、PDFファイルは開発者にとって難題となっていました。 PDFを取り扱う際(すなわち、コンテンツの生成および他の形式からPDFへの変換)考慮すべき点が数多くあります。 多くの形式からPDFを読み取り、書き込み、作成、さらには変換するための多数のライブラリの開発により、これらのニーズは現在満たされています。
この記事では、PDFファイルを編集、印刷、作成するためのJava開発者向けのPDFライブラリのうち、最も評判の高い2つを比較します:
ITextPDFライブラリ:Javaファーストのオープンソースライブラリで、プログラム可能なAPIを使用してPDFを生成することに重点を置いています。
アプリケーションに最適なライブラリを判断するために、PDFの変換および処理のパフォーマンスコストに移る前に、まず、2つのライブラリの機能を検討します。 また、各ライブラリの使用時間は後の調査のために記録されます。
インストールするにはIronPDF for Javaそれを単なる依存関係として宣言するだけです。 IronPDFを依存として定義するには、以下を pom.xml
に追加してください:
<dependency>
<groupId>com.ironsoftware</groupId>
<artifactId>com.ironsoftware</artifactId>
<version>2024.11.4</version>
</dependency>
注: .jarファイルを手動でダウンロードすることができます。
移動IronPDF for Java Mavenリポジトリをクリックして、Maven Repoページにアクセスしてください。
ZIPファイルの内容を抽出します。
フォルダを作成し、zipフォルダの中身をコピーしてください。
Eclipse IDEを開きます。
新しいJavaプロジェクトを作成する。
クラスパスにIronPDFの.jarファイルを追加します。
開発者は強力なIronPDF PDFライブラリを使用して、迅速にPDFを作成、読み取り、操作できます。 IronPDFはChromeエンジンをコアに使用しており、HTML5、JavaScript、CSS、画像ファイルをPDFに変換する機能など、実用的でパワフルな機能を豊富に提供しています。 IronPDFは、ユニークなヘッダーとフッターを追加することもでき、ウェブブラウザに表示される通りにPDFファイルを正確に作成することができます。 IronPDFは、HTML、ASPX、Razor View、およびMVCを含むさまざまなWeb形式をサポートしています。 IronPDFの主な特長は次のとおりです:
ITextPDFは以下で無料で利用可能ですiTextPDF ウェブサイト. このライブラリは、AGPLソフトウェアライセンスモデルに基づくオープンソースです。
アプリケーションに iText ライブラリを追加するには、次の Maven リポジトリを pom.xml
ファイルに含めます。
<dependency>
<groupId>com.itextpdf</groupId>
<artifactId>itextpdf</artifactId>
<version>5.5.13.2</version>
</dependency>
iTextPDFの.jarファイルを直接ダウンロードし、slf4j.jarファイルを直接ダウンロードしてください。 ライブラリを使用するには、iTextPDFの.jarファイルをシステムのクラスパスに追加してください。
iText for Javaでは、HTMLConverter
はHTMLをPDFに変換するために使用される主要なクラスです。
HTMLConverter
には主に3つのメソッドがあります:
convertToDocument
(Document
オブジェクトを返す)オブジェクトのリストを返す
convertToElements` を使用する。convertToPdf
は、HTMLコンテンツをPDFに変換する処理を行います。 このメソッドは、String
、File
、またはInputStream
としてHTML入力を受け取り、File
、OutputStream
、またはDocument
オブジェクトを返します。package com.hmkcode;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import com.itextpdf.html2pdf.HtmlConverter;
public class App
{
public static final String HTML = "<h1>Hello</h1>"
+ "<p>This was created using iText</p>"
+ "<a href='hmkcode.com'>hmkcode.com</a>";
public static void main( String [] args ) throws FileNotFoundException, IOException
{
HtmlConverter.convertToPdf(HTML, new FileOutputStream("string-to-pdf.pdf"));
System.out.println( "PDF Created!" );
}
}
IronPDFのPdfDocument
クラスは、複数の静的メソッドを提供しており、Java開発者がさまざまなソースからHTMLテキストを生成することができます。 このような方法の一つに、PdfDocument.renderHtmlAsPdf
メソッドがあります。これは、HTMLマークアップの文字列をPDFドキュメントに変換します。
License.setLicenseKey("YOUR-LICENSE-KEY");
Settings.setLogPath(Paths.get("C:/tmp/IronPdfEngine.log"));
PdfDocument myPdf = PdfDocument.renderHtmlAsPdf("<h1> ~Hello World~ </h1> Made with IronPDF!");
myPdf.saveAs(Paths.get("html_saved.pdf"));
convertToPdf
メソッドは、任意のHTMLファイルをPDFに変換するために使用できます。
画像やCSSファイルはHTMLファイルに含めることができますが、それらはHTMLファイルの同じ場所にある必要があります。ConverterProperties
クラスを使用して、参照されるCSSや画像のベースパスを設定することができます。 HTMLファイルのアセットが異なるディレクトリにある場合に便利です。
次のマークアップを含むindex.htmlを考えてください。
<html>
<head>
<title>HTML to PDF</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h1>HTML to PDF</h1>
<p>
<span class="itext">itext</span> 7.1.9
<span class="description"> converting HTML to PDF</span>
</p>
<table>
<tr>
<th class="label">Title</th>
<td>iText - Java HTML to PDF</td>
</tr>
<tr>
<th>URL</th>
<td>http://hmkcode.com/itext-html-to-pdf-using-java</td>
</tr>
</table>
</body>
</html>
<html>
<head>
<title>HTML to PDF</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h1>HTML to PDF</h1>
<p>
<span class="itext">itext</span> 7.1.9
<span class="description"> converting HTML to PDF</span>
</p>
<table>
<tr>
<th class="label">Title</th>
<td>iText - Java HTML to PDF</td>
</tr>
<tr>
<th>URL</th>
<td>http://hmkcode.com/itext-html-to-pdf-using-java</td>
</tr>
</table>
</body>
</html>
以下のソースコードは、index.htmlファイルをPDFに変換します:
package com.hmkcode;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import com.itextpdf.html2pdf.HtmlConverter;
public class App
{
public static void main( String [] args ) throws FileNotFoundException, IOException
{
HtmlConverter.convertToPdf(new FileInputStream("index.html"),
new FileOutputStream("index-to-pdf.pdf"));
System.out.println( "PDF Created!" );
}
}
IronPDFのPdfDocument.renderHtmlFileAsPdf
メソッドは、コンピュータまたはネットワークファイルパス上にあるHTMLファイルをPDFに変換します。
PdfDocument myPdf = PdfDocument.renderHtmlFileAsPdf("example.html");
myPdf.saveAs(Paths.get("html_file_saved.pdf"));
IronPDFのPdfDocument.fromImage
メソッドを使用すると、一連の画像を単一のPDFファイルにレンダリングできます。次の例では、異なるファイルシステムパスにある短いリストの画像にこのメソッドを使用しています。
// Create an ArrayList containing the list of images that you want to combine
// into ONE PDF document
Path imageA = Paths.get("directoryA/1.png");
Path imageB = Paths.get("directoryB/2.png");
Path imageC = Paths.get("3.png");
List<Path> imageFiles = new ArrayList<>();
imageFiles.add(imageA);
imageFiles.add(imageB);
imageFiles.add(imageC);
// Convert the three images into a PDF and save them.
PdfDocument.fromImage(imageFiles).saveAs(Paths.get("assets/composite.pdf"));
以下の完全なコード例は、iTextを使用して現在の作業ディレクトリに存在する2つの画像を1つのPDFファイルに変換します。
import java.io.*;
// Importing iText library packages
import com.itextpdf.io.image.*;
import com.itextpdf.kernel.pdf.*;
import com.itextpdf.layout.Document;
import com.itextpdf.layout.element.Image;
public class InsertImagePDF {
public static void main(String [] args) throws IOException {
String currDir = System.getProperty("user.dir");
// Getting path of current working directory
// to create the pdf file in the same directory of
// the running java program
String pdfPath = currDir + "/InsertImage.pdf";
// Creating path for the new pdf file
PdfWriter writer = new PdfWriter(pdfPath);
// Creating PdfWriter object to write the PDF file to
// the path
PdfDocument pdfDoc = new PdfDocument(writer);
// Creating a Document object
Document doc = new Document(pdfDoc);
// Creating imagedata from image on disk(from given
// path) using ImageData object
ImageData imageDataA = ImageDataFactory.create(
currDir + "/imageA.jpg");
Image imgA = new Image(imageDataA);
ImageData imageDataB = ImageDataFactory.create(
currDir + "/imageB.jpg");
Image imgB = new Image(imageDataB);
// Creating Image object from the imagedata
doc.add(imgA);
doc.add(imgB);
// Adding Image to the empty document
doc.close();
// Close the document
System.out.println("Image added successfully and PDF file created!");
}
}
iTextSharpはオープンソースであり、AGPLの下でライセンスされています。
これは、iTextSharpを組み込んだアプリケーションを利用するすべての人が、企業ネットワークやインターネットを介してであっても、アプリケーションのソースコードの完全なコピーを受け取る権利を有することを保証します。
ビジネスアプリケーションで使用する予定がある場合、ライセンスの価格について直接iTextにお問い合わせください。
IronPDFは開発用に無料で、商用展開のために常にライセンスできます。 IronPDFライセンスの詳細単一プロジェクトの使用、個々の開発者、エージェンシー、グローバル企業、およびSaaSやOEMの再配布向け。 すべてのライセンスには、30日間の返金保証、1年間の製品サポートおよび更新、開発/ステージング/本番環境での有効性、そして永久ライセンスが含まれています。(一回限りの購入).
Lite パッケージの価格は $749 からです。
IronPDF vs アイテキスト
iTextとIronPDFにはいくつかの重要な違いがあります。
iTextのAPIはプログラムモデルに基づいて構成されています。 このモデルの下でのPDFプロパティおよびコンテンツの操作は、より低レベルで詳細です。 これにより、プログラマーはより多くの制御と柔軟性を得ることができますが、ユースケースを実装するために、より多くのコードを書く必要があります。
IronPDFのAPIは、開発者の生産性を最適化するために設計されています。 IronPDFは、開発者がわずか数行のコードでPDFの編集、操作、作成、その他の複雑なタスクを完了できるようにすることで、PDFの扱いを簡素化します。
Iron Softwareのすべてのお客様は、わずか2回のクリックで全パッケージのスイートを購入するオプションがあります。 現在、以下の5つのライブラリを購入することができますIron Software Suite(アイアン ソフトウェア スイート)そして、スイートのライブラリ2つの費用で、各ライブラリの継続的なサポートも提供します。
9つの .NET API製品 オフィス文書用