C# で HTML を PDF に変換:WkHtmlToPdf、iTextSharp、Aspose.Pdf を徹底比較
オープンソースライブラリの使用
C# で HTML を PDF に変換するオープンソースライブラリがいくつかあります。 最も人気のあるものには以下のようなものがあります。
これらのライブラリはすべて無料で使用できますが、それぞれに独自の機能と制限があります。 使用するライブラリを選択する前に、各ライブラリの機能を比較することをお勧めします。
これらのライブラリは、オープンソースライブラリよりも多くの機能を提供する傾向があります。 ただし、使用するにはライセンス費用がかかります。
これらの Web サービスは、コードを書く必要がなく、簡単に使用できます。 ただし、多くの場合、ファイルサイズや変換できるファイル数に制限があります。
C# で HTML を PDF に変換するには、いくつかの方法があります。 最適な方法は、要件と予算によって異なります。
どの方法を選択する場合でも、次の点に注意する必要があります。
- 変換したい HTML の複雑さ
- 必要とする機能
- 予算
これらの点を考慮することで、要件に最適な方法を選択することができます。
WkHtmlToPdf を使用したサンプルコード
using System;
using System.Diagnostics;
public class Program
{
public static void Main(string[] args)
{
// HTML ファイルのパス
string htmlFilePath = "sample.html";
// PDF ファイルのパス
string pdfFilePath = "sample.pdf";
// WkHtmlToPdf の実行ファイルのパス
string wkhtmltopdfPath = "wkhtmltopdf";
// プロセスの起動
Process process = new Process();
process.StartInfo.FileName = wkhtmltopdfPath;
process.StartInfo.Arguments = string.Format("{0} {1}", htmlFilePath, pdfFilePath);
process.Start();
// プロセスの終了を待つ
process.WaitForExit();
// 成功メッセージを出力
Console.WriteLine("HTML to PDF conversion succeeded!");
}
}
iTextSharp を使用したサンプルコード
using System;
using System.IO;
using iTextSharp.text;
using iTextSharp.text.html.simpleparser;
using iTextSharp.text.pdf;
public class Program
{
public static void Main(string[] args)
{
// HTML ファイルのパス
string htmlFilePath = "sample.html";
// PDF ファイルのパス
string pdfFilePath = "sample.pdf";
// PDF ドキュメントの作成
Document document = new Document();
PdfWriter writer = PdfWriter.GetInstance(document, new FileStream(pdfFilePath, FileMode.Create));
// HTML ファイルの解析
HTMLWorker worker = new HTMLWorker(document);
worker.Parse(new FileStream(htmlFilePath, FileMode.Open));
// PDF ドキュメントの閉じ
document.Close();
// 成功メッセージを出力
Console.WriteLine("HTML to PDF conversion succeeded!");
}
}
Aspose.Pdf を使用したサンプルコード
using System;
using System.IO;
using Aspose.Pdf;
public class Program
{
public static void Main(string[] args)
{
// HTML ファイルのパス
string htmlFilePath = "sample.html";
// PDF ファイルのパス
string pdfFilePath = "sample.pdf";
// Aspose.Pdf ライセンスの設定
License license = new License();
license.SetLicense("Aspose.Pdf.lic");
// HTML ファイルの読み込み
Document document = new Document(htmlFilePath);
// PDF ファイルの保存
document.Save(pdfFilePath);
// 成功メッセージを出力
Console.WriteLine("HTML to PDF conversion succeeded!");
}
}
C# で HTML を PDF に変換するその他の方法
Microsoft Word を使用して、HTML ファイルを PDF に変換することができます。
- Word を開き、[ファイル] > [開く] を選択します。
- 開くファイルの種類で [すべてのファイル] を選択します。
- 変換したい HTML ファイルを選択して開きます。
- [ファイル] > [名前を付けて保存] を選択します。
- ファイルの種類で [PDF (*.pdf)] を選択します。
- 保存場所を選択して、[保存] をクリックします。
- Chrome で HTML ファイルを開きます。
- [Ctrl] + [P] キーを押して印刷ダイアログを開きます。
- [宛先] で [Google Cloud Print] を選択します。
- [印刷] をクリックします。
- 印刷プレビュー画面が表示されます。
- [保存] をクリックして、PDF ファイルを保存します。
オンラインサービスを使用
HTML to PDF 変換を提供しているオンラインサービスもいくつかあります。 これらのサービスは、ソフトウェアをインストールする必要がないため、簡単に使用できます。 ただし、多くの場合、ファイルサイズや変換できるファイル数に制限があります。
以下に、いくつかの例を紹介します。
c# html pdf