HTML ファイルを PDF に変換すると、オフラインで読み取ることができるほか、そのコンテンツを保存して忠実にフォーマットできるなど、多くの利点があります。Spire.PDF は、HTML を PDF に変換する2つの方法を提供します。1つは QT Web プラグインを使用する方法で、もう1つはプラグインを使用しない方法です。QT プラグインを使用して変換を行うことをお勧めします。
次のセクションでは、QT プラグインの有無にかかわらず Spire.PDF for .NET を使用して HTMLWeb ページ (URL) または HTML 文字列を PDF ドキュメントにレンダリングする方法を示します。
- QT プラグインを使用して URL を PDF に変換する
- QT プラグインを使用して HTML 文字列を PDF に変換する
- プラグインなしで URL を PDF に変換する
- プラグインなしで HTML 文字列 をPDF に変換する
Spire.PDF for.NET をインストールします
まず、Spire.PDF for.NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。
PM> Install-Package Spire.PDF
プラグインをダウンロードする
プラグイン方式を選択した場合は、以下のリンクからご使用のオペレーティングシステムに適合するプラグインをダウンロードしてください。
パッケージをディスクに解凍して、「プラグイン」フォルダを取得します。この例では、プラグインをパス「F:\ Libraries \ Plugin \ plugins-windows-x64\plugins」の下に保存しました。
また、プロジェクトの「プラットフォームターゲット」をそれに応じて x64 または x86 に設定することをお勧めします。
QT プラグインを使用して URL を PDF に変換する
以下は、QT プラグインで Spire.PDF を使用して URL を PDF に変換する手順です。
- 変換する URL パスを指定します。
- 生成された PDF ファイルのパスを指定します。
- プラグインパスを指定し、HtmlConverter.PluginPath プロパティの値として割り当てます。
- HtmlConverter.Convert(string url、string fileName、bool enableJavaScript、int timeout、SizeF pageSize、PdfMargins margins) メソッドを呼び出して、URL を PDF ドキュメントに変換します。
- C#
using Spire.Pdf.Graphics;
using Spire.Pdf.HtmlConverter.Qt;
using System.Drawing;
namespace ConvertUrlToPdf
{
class Program
{
static void Main(string[] args)
{
//URLパスを指定する
string url = "https://www.wikipedia.org/";
//出力ファイルのパスを指定する
string fileName = "UrlToPdf.pdf";
//プラグインパスを指定する
string pluginPath = "F:\\Libraries\\Plugin\\plugins-windows-x64\\plugins";
//プラグインパスを設定する
HtmlConverter.PluginPath = pluginPath;
//URLをPDFに変換する
HtmlConverter.Convert(url, fileName, true, 100000, new Size(1080, 1000), new PdfMargins(0));
}
}
}
QT プラグインを使用して HTML 文字列を PDF に変換する
以下は、QT プラグインで Spire.PDF を使用して HTML 文字列を PDF に変換する手順です。
- .html ファイルから HTML 文字列を取得します。
- 生成された PDF ファイルのパスを指定します。
- プラグインパスを指定し、HtmlConverter.PluginPath プロパティの値として割り当てます。
- HtmlConverter.Convert(string htmlString、string fileName、bool enableJavaScript、int timeout、SizeF pageSize、PdfMargins margins、Spire.Pdf.HtmlConverter.LoadHtmlType htmlType) メソッドを呼び出して、HTML 文字列をPDFドキュメントに変換します。
注:PDF で正しくレンダリングできるのは、インライン CSS スタイルと内部 CSS スタイルのみです。外部 CSS スタイルシートをお持ちの場合は、インラインまたは内部 CSS スタイルに変換してください。
- C#
using System.IO;
using Spire.Pdf.HtmlConverter.Qt;
using System.Drawing;
using Spire.Pdf.Graphics;
namespace ConvertHtmlStringToPdfWithPlugin
{
class Program
{
static void Main(string[] args)
{
//.htmlファイルからHTML文字列を取得する
string htmlString = File.ReadAllText(@"C:\Users\Administrator\Desktop\Document\Html\Sample.html");
//出力ファイルのパスを指定する
string fileName = "HtmlStringToPdf.pdf";
//プラグインパスを指定する
string pluginPath = "F:\\Libraries\\Plugin\\plugins-windows-x64\\plugins";
//プラグインパスを設定する
HtmlConverter.PluginPath = pluginPath;
//HTML文字列をPDFに変換する
HtmlConverter.Convert(htmlString, fileName, true, 100000, new Size(1080, 1000), new PdfMargins(0), Spire.Pdf.HtmlConverter.LoadHtmlType.SourceCode);
}
}
}
プラグインなしで URL を PDF に変換する
以下は、プラグインなしで Spire.PDF を使用して URL を PDF に変換する手順です。
- PdfDocument オブジェクトを作成します。
- PdfPageSettings オブジェクトを作成し、それを介してページサイズとマージンを設定します。
- PdfHtmlLayoutFormat オブジェクトを作成し、その IsWaiting プロパティを true に設定します。
- 変換する URL パスを指定します。
- PdfDocument.LoadFromHTML() メソッドを使用して URL パスから HTML をロードします。
- PdfDocument.SaveToFile() メソッドを使用してドキュメントを PDF ファイルに保存します。
- C#
using Spire.Pdf;
using System;
using System.Drawing;
using Spire.Additions.Html;
using System.Threading;
namespace ConverUrlToPdfWithoutPlugin
{
class Program
{
static void Main(string[] args)
{
//PdfDocumentオブジェクトを作成する
PdfDocument doc = new PdfDocument();
//PdfPageSettingsオブジェクトを作成する
PdfPageSettings setting = new PdfPageSettings();
//オブジェクトを介してページサイズと余白を節約する
setting.Size = new SizeF(1000, 1000);
setting.Margins = new Spire.Pdf.Graphics.PdfMargins(20);
//PdfHtmlLayoutFormatオブジェクトを作成する
PdfHtmlLayoutFormat htmlLayoutFormat = new PdfHtmlLayoutFormat();
//IsWaitingプロパティをtrueに設定する
htmlLayoutFormat.IsWaiting = true;
//変換するURLパスを指定する
String url = "https://www.Wikipedia.com/";
//LoadFromHTMLメソッドを使用してURLパスからHTMLをロードする
Thread thread = new Thread(() =>
{ doc.LoadFromHTML(url, true, true, false, setting, htmlLayoutFormat); });
thread.SetApartmentState(ApartmentState.STA);
thread.Start();
thread.Join();
//ドキュメントをPDFファイルとして保存する
doc.SaveToFile("UrlToPdf.pdf");
doc.Close();
}
}
}
プラグインなしで HTML 文字列を PDF に変換する
以下は、プラグインなしで Spire.PDF を使用して HTML 文字列を PDF に変換する手順です。
- PdfDocument オブジェクトを作成します。
- PdfPageSettings オブジェクトを作成し、それを介してページサイズとマージンを設定します。
- PdfHtmlLayoutFormat オブジェクトを作成し、その IsWaiting プロパティを true に設定します。
- .html ファイルから HTML 文字列を読み取ります。
- PdfDocument.LoadFromHTML() メソッドを使用して HTML 文字列から HTML をロードします。
- PdfDocument.SaveToFile() メソッドを使用してドキュメントを PDF ファイルに保存します。
- C#
using Spire.Pdf;
using System.Drawing;
using Spire.Additions.Html;
using System.Threading;
using System.IO;
namespace ConvertHtmlStringToPdfWithoutPlugin
{
class Program
{
static void Main(string[] args)
{
//PdfDocumentオブジェクトを作成する
PdfDocument doc = new PdfDocument();
//PdfPageSettingsオブジェクトを作成する
PdfPageSettings setting = new PdfPageSettings();
//オブジェクトを介してページサイズと余白を節約する
setting.Size = new SizeF(1000, 1000);
setting.Margins = new Spire.Pdf.Graphics.PdfMargins(20);
//PdfHtmlLayoutFormatオブジェクトを作成する
PdfHtmlLayoutFormat htmlLayoutFormat = new PdfHtmlLayoutFormat();
//IsWaitingプロパティをtrueに設定する
htmlLayoutFormat.IsWaiting = true;
//.htmlファイルからhtml文字列を読み取る
string htmlString = File.ReadAllText(@"C:\Users\Administrator\Desktop\Document\Html\Sample.html");
//LoadFromHTMLメソッドを使用してhtml文字列からHTMLをロードする
Thread thread = new Thread(() =>
{ doc.LoadFromHTML(htmlString, true, true, false, setting, htmlLayoutFormat); });
thread.SetApartmentState(ApartmentState.STA);
thread.Start();
thread.Join();
//PDFファイルとして保存する
doc.SaveToFile("HtmlStringToPdf.pdf");
}
}
}
一時ライセンスを申請する
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。 にお問い合わせ、30 日間有効な一時ライセンスを取得してください。