フッターコンテンツにスキップ
製品比較
PDFsharpを使用してC# (.NET 5)でPDFを生成する方法

WindowsでのWkhtmltopdfとIronPDFの比較

ビデオは、C#コードを使用してPDFSharpライブラリを使用してPDFファイルを生成する方法の説明ガイドです。 スピーカーは、PDFSharpをPDFファイルを生成するための難しいが効果的なライブラリとして紹介しています。 このライブラリには高度な機能があり、多くの競合他社とは異なり、完全に無料です。 スピーカーは、その複雑さにもかかわらず、PDFSharpがC#を使用してPDFファイルを生成するための優れた選択肢であることを強調しています。

チュートリアルを始めるために、話者は3行のテキストで構成された生成されたPDFファイルの例を提示します。 最初のテキスト行は正確には最初のものではなく、3番目のテキスト行は右下の角に表示されます。 講演者は、コードの説明を聞けば、文章の順序が理解できるだろうと述べている。 また、.NET 5を使用してPDFSharpの動作をデモンストレーションすることを説明しています。 C#でPDFをゼロから作成する方法についてより詳しく知りたい場合は、 IronPDFが効率的な代替手段を提供します。

ここに、.NET PDFプロジェクトに最も関連する機能においてPDFSharpとIronPDFがどのように異なるかを簡単に紹介します。

特徴 IronPDF PDFSharp
HTMLからPDFへの変換 Yes いいえ
デジタル署名 Yes いいえ
暗号化 Yes いいえ
HTML、CSS、 JavaScript Yes いいえ
Professionalサポート Yes いいえ
ライセンス 商用 MIT(オープンソース)

これらの違いそれぞれについて、詳細な説明とコード例を以下のセクションで示します。 両方のライブラリを比較しているチームは、無料の30日間トライアルでIronPDFの機能をテストできます。

インストールとセットアップ

コードを始める前に、スピーカーはPDFSharpの環境設定が非常に難しいことを強調しています。 彼らは、PDFSharp NuGetパッケージの詳細と連携する前に、3つのNuGetパッケージをインストールする必要があることを説明しています。 最初のパッケージはPDFSharp自体であり、その古いバージョンのために.NETと一致しない可能性があるという警告を生成する可能性があります。 他の2つのパッケージはSystem.Text.Encoding.CodePagesです。

C# (.NET 5)でPDFSharpを使用してPDFを生成する方法:図1

スピーカーは、PDFSharpを使用する前に3つのパッケージすべてをインストールする必要があることを強調しています。そうしないと、コードがエラーをスローします。 彼らは、とくにPDFファイルを生成するために必要なエンコーディングサポートを提供するSystem.Text.Encoding.CodePagesパッケージが重要であることを説明しています。 話者はまた、パッケージを正しくインストールしないと、トラブルシューティングが困難になる可能性があると指摘しています。 このマルチパッケージ設定を完全に回避したいチームは、PDFSharpからIronPDFへの移行ガイドをステップバイステップで従うことができます。

関連ライブラリのインストール

PDFSharpを正しく動作させるために、プロバイダをSystem.Text.Encodingに登録しなければならないとスピーカーは説明しています。 プロバイダはSystem.Text.Encoding.CodePagesパッケージから来ており、スピーカーはPDFSharpが正しく機能することを確認するためにパッケージを登録することの重要性を強調しています。 彼らは、プロバイダーを登録しないとエラーが発生し、それをトラブルシューティングするのが難しいことを説明します。

PDFファイルの作成

次に、スピーカーはPDFSharpを使用してPDFファイルを生成する単純なコンソールアプリケーションを紹介します。ライブラリを使用する前に、PDFSharp DrawingおよびPDFSharp PDFのusing文を宣言する必要があります。 その後、話者はPDFファイルを生成するコードを提示します。これには、新しいドキュメントの作成、新しいページの追加、ページにテキストを描画する作業が含まれます。

using PdfSharp.Drawing;
using PdfSharp.Pdf;

namespace PdfSharpExample
{
    class Program
    {
        static void Main(string[] args)
        {
            // Create a new PDF document
            PdfDocument document = new PdfDocument();
            // Add a new page
            PdfPage page = document.AddPage();
            // Prepare to draw on the page
            XGraphics gfx = XGraphics.FromPdfPage(page);
            // Define a font
            XFont font = new XFont("Verdana", 20, XFontStyle.Bold);

            // Draw a string to the page
            gfx.DrawString("Hello, PDFsharp!", font, XBrushes.Black,
                new XRect(0, 0, page.Width, page.Height),
                XStringFormats.Center);

            // Save the document
            const string filename = "HelloWorld.pdf";
            document.Save(filename);  
        }
    }
}
using PdfSharp.Drawing;
using PdfSharp.Pdf;

namespace PdfSharpExample
{
    class Program
    {
        static void Main(string[] args)
        {
            // Create a new PDF document
            PdfDocument document = new PdfDocument();
            // Add a new page
            PdfPage page = document.AddPage();
            // Prepare to draw on the page
            XGraphics gfx = XGraphics.FromPdfPage(page);
            // Define a font
            XFont font = new XFont("Verdana", 20, XFontStyle.Bold);

            // Draw a string to the page
            gfx.DrawString("Hello, PDFsharp!", font, XBrushes.Black,
                new XRect(0, 0, page.Width, page.Height),
                XStringFormats.Center);

            // Save the document
            const string filename = "HelloWorld.pdf";
            document.Save(filename);  
        }
    }
}
Imports PdfSharp.Drawing
Imports PdfSharp.Pdf

Namespace PdfSharpExample
	Friend Class Program
		Shared Sub Main(ByVal args() As String)
			' Create a new PDF document
			Dim document As New PdfDocument()
			' Add a new page
			Dim page As PdfPage = document.AddPage()
			' Prepare to draw on the page
			Dim gfx As XGraphics = XGraphics.FromPdfPage(page)
			' Define a font
			Dim font As New XFont("Verdana", 20, XFontStyle.Bold)

			' Draw a string to the page
			gfx.DrawString("Hello, PDFsharp!", font, XBrushes.Black, New XRect(0, 0, page.Width, page.Height), XStringFormats.Center)

			' Save the document
			Const filename As String = "HelloWorld.pdf"
			document.Save(filename)
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

講演者は、PDFファイルを生成するためのコードは、画像( IronPDFを使用して画像をPDFに変換する方法を参照)、表、グラフなどを追加するなど、より複雑な機能を含めるように調整できると述べています。 また、PDFSharpはフォントの埋め込みを含む、フォントを操作するためのさまざまな機能を提供することも説明しています。

C# (.NET 5)でPDFSharpを使用してPDFを生成する方法:図2

スピーカーは、必要なNuGetパッケージをインストールし、System.Text.Encodingにプロバイダを登録することによって環境を正しく設定することの重要性を説明しています。 彼らはまた、PDFSharpを使用してPDFファイルを生成する単純なコンソールアプリケーションを提示し、コードを調整してより複雑な機能を含める方法をデモンストレーションします。 このビデオはC#とPDFSharpを使用してPDFファイルを生成することに興味がある人々にとって優れたリソースです。

リストとより複雑な項目の作成

ビデオの第2部では、話者がより複雑なPDFドキュメントの作成例を紹介します。 彼は空のPDFドキュメントを持つことは無意味だと強調し、PDFSharpライブラリを使用して新しいページを作成する方法を説明します。 彼は、そのプロセスがExcelまたはPowerPointアドインで何かを作成するのと似ていることを指摘し、ページが作成されると、別のメソッドの呼び出しを必要としない参照で動作することを説明します。

C# (.NET 5)でPDFSharpを使用してPDFを生成する方法:図3

スピーカーは、XGraphics変数を紹介します。この変数は、IronPDFがテキストと画像のスタンピングAPIを通じて手動の座標計算を必要とせずに行う方法を提供します。 PDFドキュメントで使用するフォントを設定する手段として、XFontという変数も紹介されます。 話者は、フォントは別の場所で生成できるが、複雑な配置がある場合には、グローバルに設定することが有用であると指摘しています。

次に、スピーカーはPDFファイルにテキストを書き込むDrawStringメソッドについて説明します。メソッドの複雑な部分はテキストが描画される場所を決定することであり、フォント、色、テキストが配置される境界線などのさまざまなパラメーターについて説明します。 彼はまた、XBrushes変数を使用してテキストの色を設定する方法についても説明します。

DrawStringおよびその他のメソッドの説明

スピーカーは続いて、DrawStringメソッドを異なるパラメータで使用するいくつかの例を提示します。例えば、中央にテキストを揃えたり、左下に揃えたり、テキストの正確な配置座標を指定したりします。 最後のオプションが最もカスタマイズ可能であり、大きな柔軟性を提供することを指摘しています。

C# (.NET 5)でPDFSharpを使用してPDFを生成する方法:図4

話者は、C#プログラミング言語でグラフィックを使用してテーブルを作成する方法を説明します。 これらのマニュアルでは、画像、文字列、線を挿入する方法、グラフィック機能を使用して円弧やバーコードを描画する方法などを解説しています。IronPDFは、余白、ヘッダー、DPIなどのレンダリングオプションによって、これらの作業を簡素化します。 また、座標の作成における試行錯誤の重要性と、行を描画して行を分離する方法も説明します。

話者はまた、表のヘッダーと値や行の開始点の必要性についても議論します。Y位置を調整し、レコードの行を追加し、表が特定数のレコードを超えると次のページに移動する方法を説明します。 最後に、彼らは各ページの値をリセットする重要性に言及しています。

どちらのライブラリを選ぶべきか?

結論として、話者はPDFSharpを使用する際にMicrosoft Officeアドインに慣れることの重要性を強調し、このトピックに関する自身のコースを提供します。 また、このライブラリは非常に多用途であり、シンプルなテキストドキュメントから画像やグラフィック、カスタムレイアウトを含むより複雑なPDFドキュメントまでさまざまなものを作成できることにも言及しています。

IronPDFとは何ですか?

IronPDFは、PDFドキュメントの作成、編集、操作を行うためのC# PDFライブラリです。 それは単一のNuGetパッケージとして提供され(Install-Package IronPdfとして)、追加の依存関係設定を必要とせずに.NETアプリケーションに統合します。

PDFSharpは強力な低レベルの描画コントロールを提供し、寛大なMITライセンスの下で提供されています。これらは、多く for .NETプロジェクトで定番となった2つの本物の強みです。 チームが摩擦に直面することが多いのは、要件が座標ベースのレンダリングを超えて、HTMLからPDFへの変換、デジタル署名、文書暗号化といった領域にまで拡大する場合である。 IronPDFは、商用サポート付きのライブラリであり、これらのシナリオを第一級の操作として扱い、Professionalサポートと、HTML、CSS、 JavaScriptレンダリングを含む一般的なドキュメント生成ワークフローを中心に設計されたAPIインターフェースを提供します。

特徴

特徴 IronPDF PDFSharp
HTMLからPDFへの変換 はい いいえ
プロフェッショナルサポート はい いいえ
HTML、CSS、およびJavaScriptのサポート はい いいえ
デジタル署名 はい いいえ
暗号化 はい いいえ

IronPDFの重要な機能の一つは、 HTMLをIronPDFを使ってPDFに変換できることであり、これによりWebページから簡単にPDF文書を作成できます。 HTMLからPDFへの変換はPDFSharpの現在の範囲外です。座標描画レベルで機能するため、その機能を必要とするチームは通常、別のレンダリングライブラリを追加するか、IronPDFの組み込みChromiumエンジンを評価します。

IronPDFは、電子署名とパスワード保護付きPDF暗号化にも対応しており、機密性の高い文書を安全に取り扱う上で非常に重要です。 PDFSharpはこれらのセキュリティシナリオに対処するようには設計されていないため、コンプライアンスやドキュメント保護要件を持つチームにとっては、IronPDFの評価の自然な分岐点となることがよくあります。

IronPDFはPDFSharpと比べてより広範な機能セットとより包括的なサポート提供を提供しており、HTMLレンダリング、暗号化、デジタル署名を単一のNuGetパッケージでカバーしています。 ただし、これは商用製品であるため、PDFSharpの座標描画モデル内の要件を満たし、HTML変換や組み込みセキュリティ機能を必要としないチームは、MITライセンスのオープンソースのアプローチを好むかもしれません。

ライセンスコストを超えて、プロジェクト全体のコストには、別個のレンダリングライブラリを組み立て、複雑なドキュメントのための座標ベースのページレイアウトを管理し、PDFSharpが必要とするマルチパッケージ設定のトラブルシューティングに費やされる開発者の時間が含まれます。 複数年にわたるプロジェクトライフサイクル全体でコストを評価するチームにとって、これらの統合および保守コストは、オープンソースライセンスと商用ライセンスの差額をしばしば上回る。

IronPDFがあなたのワークフローにどのように適合するか、確認してみませんか? [30日間無料トライアルをダウンロード](この比較でカバーされているすべての機能をテストするためのtrial-license.

ご注意PDFsharpはその所有者の登録商標です。 このサイトはPDFsharpと提携しておらず、承認や後援を受けていません。すべての製品名、ロゴ、ブランドはそれぞれの所有者の所有物です。 比較は情報目的のみに使用され、執筆時点での公開情報を反映しています。

よくある質問

C#でPDFsharpを使用してPDFファイルを生成する方法は?

PDFsharpを使用してPDFを生成するには、新しいPDFドキュメントを作成し、それにページを追加し、XGraphicsオブジェクトを使用してテキストやグラフィックを描画します。PdfSharp.DrawingおよびPdfSharp.Pdf名前空間のusingステートメントを必ず含めてください。

PDFsharpに必要な基本的なNuGetパッケージは何ですか?

PDFsharpを効率的に使用するには、次のNuGetパッケージをインストールする必要があります:PDFsharp、System.Drawing.Common、およびSystem.Text.Encoding.CodePages。これらのパッケージはエンコーディングサポートと適切なPDF生成に不可欠です。

C#でのPDF生成においてIronPDFとPDFsharpはどのように比較されますか?

IronPDFは商用ライブラリであり、HTMLからPDFへの変換、デジタル署名、暗号化などの高度な機能を提供し、PDFsharpにはないこれらの機能があります。またより良いドキュメントとプロフェッショナルなサポートを提供しており、複雑なタスクに対してより使いやすいです。

PDFsharpをPDF生成に使用する際の制限事項は何ですか?

PDFsharpはHTML、CSS、JavaScriptをサポートしておらず、そのため使用範囲が制限されます。エンコーディングの設定とMicrosoft Officeアドインの十分な理解が必要で、IronPDFと比較して直感的ではありません。

なぜSystem.Text.Encoding.CodePagesパッケージがPDFsharpにとって重要なのですか?

System.Text.Encoding.CodePagesパッケージは、PDFsharpでPDFファイルを生成する際に必要なエンコーディングサポートを提供します。正しくインストールおよび登録しなければ、エンコーディングに関連するエラーが発生する可能性があります。

無料のC#ライブラリを使用してHTMLをPDFに変換できますか?

いいえ、PDFsharpはHTMLからPDFへの変換をサポートしていません。その機能が必要な場合は、IronPDFのような商用ライブラリが必要です。IronPDFはこの機能を含む他の高度な機能を提供しています。

PDFsharpでの一般的なエラーをどのようにトラブルシューティングしますか?

PDFsharpでの一般的なエラーは、NuGetパッケージの不正な設定やエンコーディングの問題から生じることが多いです。System.Text.Encoding.CodePagesを含むすべての必要なパッケージを正しくインストールおよび登録することで、そのような問題を解決してください。

C#開発者にとってIronPDFで利用できる高度な機能は何ですか?

IronPDFは、HTMLからPDFへの変換、デジタル署名、暗号化、CSSやJavaScriptの処理などの高度な機能を提供します。また、.NETアプリケーションとの統合とプロフェッショナルサポートを提供しており、開発者にとって強力なツールです。

PDFsharpを使用してPDF内のテキストレイアウトをカスタマイズする方法は?

PDFsharpを使用して、XGraphicsクラスのDrawStringメソッドを使用してPDF内のテキストレイアウトをカスタマイズできます。これにより、フォント、色、指定された境界内でのテキストの配置を設定できます。

PDFsharpはC#で複雑なPDFドキュメントを作成するのに適していますか?

PDFsharpは複雑なPDFドキュメントを作成できますが、エンコーディングやMicrosoft Officeアドインの理解が必要です。IronPDFはより直感的なAPIと追加機能を備えているため、複雑なタスクに対してはより良いオプションかもしれません。

Curtis Chau
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。

開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。

アイアンサポートチーム

私たちは週5日、24時間オンラインで対応しています。
チャット
メール
電話してね