透かしなしで本番環境でテストしてください。
必要な場所で動作します。
30日間、完全に機能する製品をご利用いただけます。
数分で稼働させることができます。
製品トライアル期間中にサポートエンジニアリングチームへの完全アクセス
.NETでPDFドキュメントを扱う際、開発者はプロジェクトの要件に最も適したライブラリを決定するために、さまざまなライブラリを比較することがよくあります。 .NET エコシステムで人気のある3つの選択肢はPDFsharp, クエストPDF、およびIronPDF. 各ライブラリは異なるユースケースに対応しており、それぞれ異なる強みと弱みを持っています。 この記事では、これらのライブラリの詳細な比較と、基本的なPDF生成の処理方法について説明します。このURLあなたが賢明な決定を下すのを助けるために。
PDFsharpは、PDFドキュメントの作成、編集、およびレンダリングを行うために設計されたオープンソースのライブラリです。 シンプルさと基本的なPDF機能に重点を置いたPDFsharpは、直感的なPDF操作機能を求める開発者にとって信頼性の高いツールとなっています。
NuGetパッケージマネージャーを使用することで、PDFsharpをプロジェクトに簡単にインストールできます。次の行をNuGetパッケージマネージャーコンソールで実行してください。
Install-Package PDFsharp
Install-Package PDFsharp
では、PDFsharp が指定された URL から新しい PDF ドキュメントを作成する方法を見てみましょう。 PDFsharp だけでは HTML や URL から PDF への変換を処理できないため、HtmlRenderer.PdfSharp のようなウェブレンダリングエンジンを統合する必要があります。さらに、指定された URL から HTML コンテンツを取得するために HttpClient を使用する必要があります。
using System;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
using PdfSharp.Pdf;
using TheArtOfDev.HtmlRenderer.PdfSharp;
public class Program
{
static async System.Threading.Tasks.Task Main(string[] args)
{
// Ensure proper encoding support
Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);
string url = "https://www.apple.com";
// Fetch HTML content from the URL
using (HttpClient client = new HttpClient())
{
string htmlContent = await client.GetStringAsync(url);
// Generate PDF from the fetched HTML content
var pdf = PdfGenerator.GeneratePdf(htmlContent, PdfSharp.PageSize.A4);
pdf.Save("output.pdf");
Console.WriteLine("PDF created successfully as 'output.pdf'.");
}
}
}
using System;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
using PdfSharp.Pdf;
using TheArtOfDev.HtmlRenderer.PdfSharp;
public class Program
{
static async System.Threading.Tasks.Task Main(string[] args)
{
// Ensure proper encoding support
Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);
string url = "https://www.apple.com";
// Fetch HTML content from the URL
using (HttpClient client = new HttpClient())
{
string htmlContent = await client.GetStringAsync(url);
// Generate PDF from the fetched HTML content
var pdf = PdfGenerator.GeneratePdf(htmlContent, PdfSharp.PageSize.A4);
pdf.Save("output.pdf");
Console.WriteLine("PDF created successfully as 'output.pdf'.");
}
}
}
ご覧の通り、PDFsharpはHTMLコンテンツやウェブページをPDFファイルに変換するために使用できますが、追加のライブラリの助けが必要であり、オリジナルのウェブサイトに見られるCSSやフォーマットを保持することはできません。優れた無料のPDF開発者用ライブラリですが、IronPDFのような有料ライブラリに見られる高度な機能がいくつか欠けています。
QuestPDFは、流暢なAPIを使用して視覚的に魅力的なPDFを生成することに特化した、最新のオープンソースライブラリです。 その革新的な文書レイアウトとレンダリングのアプローチは、動的で複雑なデザインを必要とするアプリケーションにとって強力な競争相手となっています。
このライブラリがNuGetパッケージとして利用可能であることにより、インストールは非常に簡単なプロセスとなっています。NuGetコンソールで1行を実行するだけでインストールできます。
Install-Package QuestPDF
Install-Package QuestPDF
次に、QuestPDFが例のURLをPDF形式に変換する方法について見ていきましょう。 QuestPDFはネイティブでURLからPDFへの変換をサポートしていませんが、HTTPクライアントを使用してHTMLコンテンツを取得し、QuestPDFの流暢なAPIを使用してPDFにレンダリングできます。
using System;
using System.Net.Http;
using System.Threading.Tasks;
using HtmlAgilityPack;
using QuestPDF.Fluent;
using QuestPDF.Helpers;
using QuestPDF.Infrastructure;
public class Program
{
static async System.Threading.Tasks.Task Main(string[] args)
{
QuestPDF.Settings.License = LicenseType.Community;
string url = "https://www.apple.com";
// Fetch HTML content from the URL
using (HttpClient client = new HttpClient())
{
string htmlContent = await client.GetStringAsync(url);
// Parse the HTML content using HtmlAgilityPack
var htmlDoc = new HtmlDocument();
htmlDoc.LoadHtml(htmlContent);
// Extract meaningful content (e.g., text inside <body>)
var bodyContent = htmlDoc.DocumentNode.SelectSingleNode("//body")?.InnerText ?? "No content found";
// Generate PDF using QuestPDF
Document.Create(container =>
{
container.Page(page =>
{
page.Size(PageSizes.A4);
page.Margin(20);
page.Content().Text(bodyContent);
});
}).GeneratePdf("output.pdf");
Console.WriteLine("PDF created successfully as 'output.pdf'.");
}
}
}
using System;
using System.Net.Http;
using System.Threading.Tasks;
using HtmlAgilityPack;
using QuestPDF.Fluent;
using QuestPDF.Helpers;
using QuestPDF.Infrastructure;
public class Program
{
static async System.Threading.Tasks.Task Main(string[] args)
{
QuestPDF.Settings.License = LicenseType.Community;
string url = "https://www.apple.com";
// Fetch HTML content from the URL
using (HttpClient client = new HttpClient())
{
string htmlContent = await client.GetStringAsync(url);
// Parse the HTML content using HtmlAgilityPack
var htmlDoc = new HtmlDocument();
htmlDoc.LoadHtml(htmlContent);
// Extract meaningful content (e.g., text inside <body>)
var bodyContent = htmlDoc.DocumentNode.SelectSingleNode("//body")?.InnerText ?? "No content found";
// Generate PDF using QuestPDF
Document.Create(container =>
{
container.Page(page =>
{
page.Size(PageSizes.A4);
page.Margin(20);
page.Content().Text(bodyContent);
});
}).GeneratePdf("output.pdf");
Console.WriteLine("PDF created successfully as 'output.pdf'.");
}
}
}
PDFSharpと同様に、QuestPDFはHtmlAgilityPackのような外部ライブラリの助けを借りてHTMLコンテンツをPDFに変換することができますが、CSSのスタイリングやフォーマットを保持することができません。 QuestPDFは、ゼロからPDFドキュメントを作成したい人にとっては素晴らしい選択肢ですが、このライブラリの強みはHTMLからPDFへの変換ではありません。
IronPDFは、.NET開発者向けに設計された高度で包括的なPDF機能を提供する堅牢なPDFライブラリです。 HTML-to-PDFレンダリングに重点を置き、PDF文書の操作、暗号化、PDF/A準拠のための高度なオプションなどの追加機能を組み合わせることで、エンタープライズグレードのアプリケーションにとって強力な選択肢となります。
IronPDFをインストールするには、Visual StudioのNuGetパッケージマネージャーを使用します。
NuGetパッケージマネージャーの使用
Visual Studioでプロジェクトを開きます。
ソリューションエクスプローラーでプロジェクトを右クリックし、「NuGet パッケージの管理」を選択します。
「IronPDF」を検索して「インストール」をクリックします。
NuGet パッケージ マネージャー コンソールの使用:
Install-Package IronPdf
Install-Package IronPdf
IronPDFは、変換のためのシンプルで直接的なAPIを提供します。PDFへのURL. Here's an example: 例があります。
using IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderUrlAsPdf("https://www.apple.com");
pdf.SaveAs("url.pdf");
using IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderUrlAsPdf("https://www.apple.com");
pdf.SaveAs("url.pdf");
上記のコード例は、IronPDF がどのようにわずか数行のコードで URL コンテンツを PDF に簡単に変換できるかを示しています。 ご覧の通り、HTMLだけでなく、CSSのスタイリングやレイアウトも変換されており、出力されるPDFが元のフォーマットに忠実であることを保証しています。 の使用を通じてChromePdfRenderer レンダリングエンジンIronPDF は、変換プロセスでコンテンツの元の品質を全く失わないピクセルパーフェクトなPDFドキュメントを生成します。
ここで見られるように、IronPDF は HTML から PDF への変換、および他のドキュメントタイプから PDF への変換において強力な選択肢です。 それは、高品質な変換ジョブを簡潔で実装しやすいコードブロックで処理します。
PDFsharpはシンプルで使いやすく、初心者や基本的なPDFニーズを持つ開発者にとって優れた選択肢です。 その手続き型アプローチにより、PDFにテキスト、図形、画像を追加するようなタスクの迅速なセットアップと実装が可能です。 しかし、HTMLやURLからPDFへの変換作業を処理するためには、外部ライブラリが必要です。
一方、QuestPDFは流暢なAPIを提供するより現代的なアプローチを採用しています。 ウェブやUIデザインの経験を持つ開発者には直感的ですが、新参者はレイアウト中心のデザイン哲学に慣れるまで若干の学習曲線に直面するかもしれません。 しかし、再びHTMLからPDFへの変換を処理するための組み込みツールが欠けています。
IronPDFは、HTMLからPDFへの変換と高度なPDF機能に関して、最も簡単な体験を提供します。 直感的なAPIは、実装の時間を短縮し、堅牢なドキュメントと例を提供します。 IronPDFは、多種多様なドキュメントタイプをPDFに変換することができ、この記事で見たURLからPDFへの変換例のように、ドキュメントの品質を損なうことなく行えます。
パフォーマンスは特にPDFを動的に生成する必要があるアプリケーションにとって重要な要素です。 PDFsharpは小規模で単純なドキュメントには適していますが、大規模または複雑なレイアウトには苦労します。
QuestPDFは、動的で視覚的に魅力的なドキュメントのレンダリングで優れています。 それは、高効率で構造化されたレイアウトを扱うように最適化されています。
IronPDFは、特にHTMLレンダリング、CSS、およびJavaScriptのサポートを必要とするアプリケーションにおいて、パフォーマンスと機能性を非常にうまくバランスさせています。 また、エンタープライズ向けのPDFタスクを簡単に処理する高い能力を持っています。
.NETプロジェクトに適したPDFライブラリを選ぶには、あなたの具体的な要件に依存します。 基本的なPDFタスクのための軽量でオープンソースのツールが必要な場合は、PDFsharpは堅実な選択肢です。 動的で視覚的に魅力的なドキュメントを作成するために、クエストPDFは、その現代的なアプローチで際立っています。
しかし、高度な機能、シームレスなHTMLからPDFへの変換、エンタープライズグレードの機能が必要な場合、IronPDF提供しなければならない。
各ライブラリの長所と限界を理解することで、プロジェクトのニーズに合った賢明な決定を下すことができます。