フッターコンテンツにスキップ
製品比較
PDFSharp の代替として IronPDF を使用する

PDFSharp HTMLからPDFへの例とチュートリアルの比較

PDFファイルを.NET環境で使用する際には、ドキュメント作成、編集、暗号化、HTMLからPDFへの変換といった一般的なタスクを処理できる信頼性の高い多機能なライブラリが必要です。 IronPDF and PDFsharpは、ニーズが異なる二つの人気ライブラリです。

IronPDFはHTMLからPDFへの変換、PDFのセキュリティ、および高度なPDF操作で優れている多機能で高性能なPDFライブラリです。 一方で、PDFsharpはPDF作成と基本的な編集に焦点を当てた軽量でオープンソースのライブラリです。 選択はプロジェクトの複雑さと要件に依存します。

このガイドでは、IronPDFとPDFsharpを主要機能、使いやすさ、セキュリティ、価格、サポートの面で比較し、.NETアプリケーションに最適なツールを特定するのを支援します。

機能の概要

IronPDF: 総合的なPDFソリューション

IronPDF is a feature-packed .NET library that excels in many areas, including HTMLからPDFへの変換、PDF編集、セキュアなドキュメント処理を含む多くの分野で優れた機能を持つ.NETライブラリです。 NuGetパッケージ マネージャー コンソールを使用して簡単にプロジェクトに追加でき、C#プロジェクトにスムーズに統合されます。

その優れた機能には以下が含まれます:

PDFsharp: 軽量な代替手段

PDFsharpは、主に基本的なPDF作成および操作を目的とした無料のオープンソースライブラリです。 IronPDFの豊富な機能セットを提供することはありませんが、複雑な機能を必要としない単純なプロジェクトには最適です。 PDFsharpの主な機能には以下が含まれます:

  • PDF作成: C#またはVB.NETを使用してプログラム的にPDFを生成し、画像やグラフィックを含むテキストベースのドキュメントを作成します。
  • PDFの修正: 既存のPDFを結合、分割、および編集するための簡単なタスク。
  • 基本的な暗号化: PDFドキュメントに基本的なパスワード保護を追加します。

重要な制限: PDFsharpはネイティブにHTMLからPDFへの変換をサポートしておらず、Polybioz.HtmlRenderer.PdfSharp.Coreなどのサードパーティのツールが必要で、複雑性を増します。

互換性と使いやすさ

クロスプラットフォームサポート

Pdfsharp Read Pdf 1 related to クロスプラットフォームサポート

IronPDF

IronPDF はクロスプラットフォーム向けに設計されており、.NET Core、.NET Framework、および Azure と完全に互換性があり、Windows、macOS、および Linux をサポートしています。 このようなライブラリは、複数のオペレーティングシステム上で実行する必要があるプロジェクトに最適で、ほとんどの開発環境との普遍的な互換性を確保します。 ライブラリは、モダンなウェブ開発環境とシームレスに統合されており、ウェブアプリケーション、クラウドソリューション、およびエンタープライズシステムに最適です。

PDFsharp

PDFsharpは主に.NET Framework用に設計されており、.NET Coreに対するサポートは制限されています。 .NET Coreバージョンは存在しますが、開発が進行中であり、特定の機能は非Windowsプラットフォーム向けに完全に最適化されていません。 Linux と macOS ユーザーは互換性の問題に直面する可能性があるため、PDFsharp はクロスプラットフォーム アプリケーションにはあまり適していません。

使いやすさ

IronPDFは、PDFファイルを扱う際の複雑さを抽象化した開発者に優しいAPIを提供します。 PDFを生成する場合も既存のファイルを編集する場合も、構文はクリーンで直観的であり、開発者は数行のコードで複雑な機能を実装できます。

PDFsharp は、テキスト生成や PDF 操作といった基本的なタスクに対しては比較的簡単に使用できますが、複雑なドキュメント生成や編集などのタスクには、手動での処理がより多く求められることがあります。

使いやすさ Example

IronPDF: HTMLからPDFへの変換

単一のメソッド呼び出しでHTMLスニペットとコンテンツをPDFに簡単に変換:

using IronPdf;

var renderer = new ChromePdfRenderer();
var content = "<h1>IronPDF Rocks!</h1>";
var pdf = renderer.RenderHtmlAsPdf(content);
pdf.SaveAs("output.pdf");
using IronPdf;

var renderer = new ChromePdfRenderer();
var content = "<h1>IronPDF Rocks!</h1>";
var pdf = renderer.RenderHtmlAsPdf(content);
pdf.SaveAs("output.pdf");
Imports IronPdf

Private renderer = New ChromePdfRenderer()
Private content = "<h1>IronPDF Rocks!</h1>"
Private pdf = renderer.RenderHtmlAsPdf(content)
pdf.SaveAs("output.pdf")
$vbLabelText   $csharpLabel
  • 簡潔でクリーンなコード
  • 既存のHTMLコンテンツからのシームレスな変換

PDFsharp: テキストを使用したPDFの作成

PDFsharpは、グラフィックスオブジェクトを使用してテキストとコンテンツを描画するための手動の実装を必要とします。

using PdfSharp.Pdf;
using PdfSharp.Drawing;

var document = new PdfDocument();
var page = document.AddPage();
var gfx = XGraphics.FromPdfPage(page);
var font = new XFont("Arial", 20, XFontStyleEx.Bold);
gfx.DrawString("Hello, PDFsharp!", font, XBrushes.Black, new XPoint(50, 100));
document.Save("output.pdf");
using PdfSharp.Pdf;
using PdfSharp.Drawing;

var document = new PdfDocument();
var page = document.AddPage();
var gfx = XGraphics.FromPdfPage(page);
var font = new XFont("Arial", 20, XFontStyleEx.Bold);
gfx.DrawString("Hello, PDFsharp!", font, XBrushes.Black, new XPoint(50, 100));
document.Save("output.pdf");
Imports PdfSharp.Pdf
Imports PdfSharp.Drawing

Private document = New PdfDocument()
Private page = document.AddPage()
Private gfx = XGraphics.FromPdfPage(page)
Private font = New XFont("Arial", 20, XFontStyleEx.Bold)
gfx.DrawString("Hello, PDFsharp!", font, XBrushes.Black, New XPoint(50, 100))
document.Save("output.pdf")
$vbLabelText   $csharpLabel

制限:

手動による実装 – 要素を手動で配置する必要があります。 報告書や請求書、スタイル付きコンテンツの生成にはより複雑です。

機能比較

HTMLからPDFへの変換

IronPDF: ウェブアプリケーションとダイナミックレポートに最適

IronPDFは、CSS、JavaScript、および埋め込み画像を保持しながら、HTMLレポート、ウェブページ、動的コンテンツをPDFに変換することに優れています。 これにより理想的です:

  • HTMLテンプレートからの<強調>請求書生成</強調>
  • ウェブ アプリケーションからの<強調>自動レポート作成</強調>
  • <強調>オフラインで使用するための</強調>PDF としてのウェブページのキャプチャ

IronPDFコード例 – HTMLファイルをPDF形式に変換する:

using IronPdf;

ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlFileAsPdf("example.html");
pdf.SaveAs("example.pdf");
using IronPdf;

ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlFileAsPdf("example.html");
pdf.SaveAs("example.pdf");
Imports IronPdf

Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlFileAsPdf("example.html")
pdf.SaveAs("example.pdf")
$vbLabelText   $csharpLabel

出力

Pdfsharp Read Pdf 2 related to IronPDF: ウェブアプリケーションとダイナミックレポートに最適

ご覧のとおり、IronPDFを使用すると、スタイル付きHTMLファイルをわずか3行のコードでPDFドキュメントに変換し、オリジナルの品質やレイアウトを損なうことがありません! IronPDFがより多くのCSSを含むコンテンツにどのように対処できるかを見てみたい場合は、このURLのコンテンツをPDFに変換する例を見てみましょう。

using IronPdf;

ChromePdfRenderer renderer = new ChromePdfRenderer();
renderer.RenderingOptions.EnableJavaScript = true;
renderer.RenderingOptions.WaitFor.JavaScript(5000);
renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print;
PdfDocument pdf = renderer.RenderUrlAsPdf("https://www.apple.com");
pdf.SaveAs("Apple.pdf");
using IronPdf;

ChromePdfRenderer renderer = new ChromePdfRenderer();
renderer.RenderingOptions.EnableJavaScript = true;
renderer.RenderingOptions.WaitFor.JavaScript(5000);
renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print;
PdfDocument pdf = renderer.RenderUrlAsPdf("https://www.apple.com");
pdf.SaveAs("Apple.pdf");
Imports IronPdf

Private renderer As New ChromePdfRenderer()
renderer.RenderingOptions.EnableJavaScript = True
renderer.RenderingOptions.WaitFor.JavaScript(5000)
renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print
Dim pdf As PdfDocument = renderer.RenderUrlAsPdf("https://www.apple.com")
pdf.SaveAs("Apple.pdf")
$vbLabelText   $csharpLabel

出力

IronPDFのURLからPDFへの出力

ここでは、IronPDFの強力なレンダリングオプションを活用して、ウェブコンテンツを高品質なPDFに変換し、元のCSSおよびJavaScriptコンテンツのすべてを保持します。

PDFsharp: Webコンテンツなしの静的PDF向けに最適

PDFsharpはHTMLからPDFへの変換をネイティブにサポートしていません。 この機能が必要な場合には、静的レンダリングコードを使用してHTMLコンテンツをPDFドキュメントに変換できるHtml Rendererのようなサードパーティライブラリを使用する必要があります。 これらの制限のため、PDFsharpは通常、次の用途に最適です:

  • 動的なHTMLレンダリングに依存しない<強調>静的ドキュメント</強調>
  • プログラムで定義されたコンテンツを有する<強調>請求書、契約書、およびレポート</強調>

PDFsharpとHtmlRendererの例:

using PdfSharp.Pdf;
using TheArtOfDev.HtmlRenderer.PdfSharp;

var document = new PdfSharpCore.Pdf.PdfDocument();
string htmlContent = File.ReadAllText("index.html");
PdfGenerator.AddPdfPages(document, htmlContent, PdfSharpCore.PageSize.A4);
document.Save("html-to-pdf-pdfsharp.pdf");
using PdfSharp.Pdf;
using TheArtOfDev.HtmlRenderer.PdfSharp;

var document = new PdfSharpCore.Pdf.PdfDocument();
string htmlContent = File.ReadAllText("index.html");
PdfGenerator.AddPdfPages(document, htmlContent, PdfSharpCore.PageSize.A4);
document.Save("html-to-pdf-pdfsharp.pdf");
Imports PdfSharp.Pdf
Imports TheArtOfDev.HtmlRenderer.PdfSharp

Private document = New PdfSharpCore.Pdf.PdfDocument()
Private htmlContent As String = File.ReadAllText("index.html")
PdfGenerator.AddPdfPages(document, htmlContent, PdfSharpCore.PageSize.A4)
document.Save("html-to-pdf-pdfsharp.pdf")
$vbLabelText   $csharpLabel

出力

PDFsharpのHTMLからPDFの例出力

HtmlRendererアドオンのおかげで、ほとんどのHTMLコンテンツをPDFに変換し、大部分の元のスタイリングを保っていますが、よりCSSを重視したコンテンツの場合にIronPDFとどのように比較されるのでしょうか? ウェブコンテンツをPDFファイルに変換するプロセスを見てみましょう:

using PdfSharpCore.Pdf;
using TheArtOfDev.HtmlRenderer.PdfSharp;
using System.Net.Http;
using System.Threading.Tasks;
using System.IO;

public class Program
{
    public static async Task Main(string[] args)
    {
        // Define the URL to fetch HTML content
        string url = "https://www.example.com"; // Replace with the URL you want to convert

        // Fetch HTML content from the URL
        string htmlContent = await FetchHtmlFromUrl(url);

        // Generate the PDF from the fetched HTML content
        var document = new PdfSharpCore.Pdf.PdfDocument();
        PdfGenerator.AddPdfPages(document, htmlContent, PdfSharpCore.PageSize.A4);

        // Save the generated PDF to a file
        document.Save("url-to-pdf-example.pdf");

        System.Console.WriteLine("PDF created successfully!");
    }

    // Method to fetch HTML content from a URL
    private static async Task<string> FetchHtmlFromUrl(string url)
    {
        using (HttpClient client = new HttpClient())
        {
            // Send GET request to fetch the HTML content of the URL
            HttpResponseMessage response = await client.GetAsync(url);

            if (response.IsSuccessStatusCode)
            {
                // Read the content as a string
                string htmlContent = await response.Content.ReadAsStringAsync();
                return htmlContent;
            }
            else
            {
                throw new Exception($"Failed to fetch content from URL. Status Code: {response.StatusCode}");
            }
        }
    }
}
using PdfSharpCore.Pdf;
using TheArtOfDev.HtmlRenderer.PdfSharp;
using System.Net.Http;
using System.Threading.Tasks;
using System.IO;

public class Program
{
    public static async Task Main(string[] args)
    {
        // Define the URL to fetch HTML content
        string url = "https://www.example.com"; // Replace with the URL you want to convert

        // Fetch HTML content from the URL
        string htmlContent = await FetchHtmlFromUrl(url);

        // Generate the PDF from the fetched HTML content
        var document = new PdfSharpCore.Pdf.PdfDocument();
        PdfGenerator.AddPdfPages(document, htmlContent, PdfSharpCore.PageSize.A4);

        // Save the generated PDF to a file
        document.Save("url-to-pdf-example.pdf");

        System.Console.WriteLine("PDF created successfully!");
    }

    // Method to fetch HTML content from a URL
    private static async Task<string> FetchHtmlFromUrl(string url)
    {
        using (HttpClient client = new HttpClient())
        {
            // Send GET request to fetch the HTML content of the URL
            HttpResponseMessage response = await client.GetAsync(url);

            if (response.IsSuccessStatusCode)
            {
                // Read the content as a string
                string htmlContent = await response.Content.ReadAsStringAsync();
                return htmlContent;
            }
            else
            {
                throw new Exception($"Failed to fetch content from URL. Status Code: {response.StatusCode}");
            }
        }
    }
}
Imports PdfSharpCore.Pdf
Imports TheArtOfDev.HtmlRenderer.PdfSharp
Imports System.Net.Http
Imports System.Threading.Tasks
Imports System.IO

Public Class Program
	Public Shared Async Function Main(ByVal args() As String) As Task
		' Define the URL to fetch HTML content
		Dim url As String = "https://www.example.com" ' Replace with the URL you want to convert

		' Fetch HTML content from the URL
		Dim htmlContent As String = Await FetchHtmlFromUrl(url)

		' Generate the PDF from the fetched HTML content
		Dim document = New PdfSharpCore.Pdf.PdfDocument()
		PdfGenerator.AddPdfPages(document, htmlContent, PdfSharpCore.PageSize.A4)

		' Save the generated PDF to a file
		document.Save("url-to-pdf-example.pdf")

		System.Console.WriteLine("PDF created successfully!")
	End Function

	' Method to fetch HTML content from a URL
	Private Shared Async Function FetchHtmlFromUrl(ByVal url As String) As Task(Of String)
		Using client As New HttpClient()
			' Send GET request to fetch the HTML content of the URL
			Dim response As HttpResponseMessage = Await client.GetAsync(url)

			If response.IsSuccessStatusCode Then
				' Read the content as a string
				Dim htmlContent As String = Await response.Content.ReadAsStringAsync()
				Return htmlContent
			Else
				Throw New Exception($"Failed to fetch content from URL. Status Code: {response.StatusCode}")
			End If
		End Using
	End Function
End Class
$vbLabelText   $csharpLabel

出力

Pdfsharp Read Pdf 5 related to PDFsharp: Webコンテンツなしの静的PDF向けに最適

PDFsharpはIronPDFのように集中的なCSSやJavaScriptコンテンツを処理することはできませんが、CSSやJavaScriptコンテンツに依存しないPDF生成タスクに最適な軽量のPDFライブラリを探している方には引き続き優れた選択肢です。 .HTML変換には追加のライブラリを必要としますが、PDFsharpは.NETエコシステム内でスクラッチからPDFファイルを作成できます。

暗号化とセキュリティ

IronPDF: 安全でコンプライアンス駆動型アプリケーション向けに最適

IronPDFは、安全なPDF処理が必要な開発者にとって最良の選択肢であり、特に厳格なデータ保護規制に準拠する必要のあるアプリケーションに最適です。 PDFドキュメントが安全で改ざんされないようにするための高度なセキュリティ機能を提供しており、金融、医療、法律のような業界に適しています。

IronPDFのユースケース:

  • 法的および金融文書: IronPDFを使用すると、高度な暗号化手法を使用してPDF内の機密データを保護し、認可されたユーザーのみがアクセスできるようにします。
  • デジタル署名を必要とするドキュメント: ドキュメントの信頼性を確保するためのデジタル署名機能を提供しており、法的契約や契約書において重要です。
  • GDPRおよびHIPAAの準拠: 個人情報や機密情報を取り扱う場合には、IronPDFはGDPRHIPAAの規制に準拠した暗号化基準をサポートしており、クライアントのデータを安全に取り扱う開発者に安心を提供します。

IronPDFの暗号化機能には、ユーザーレベルおよびオーナーレベルのパスワードが含まれており、PDFへのアクセスを制限したり、印刷、コピー、編集といった特定のアクションを制限したりすることができます。 さらに、PDFにデジタル署名を適用することが可能で、データの整合性と責任拒否の排除を確保し、法的文書に最適です。 これらの機能は、ドキュメントのセキュリティが最優先事項であるワークフローに特に役立ちます。

IronPDFコード例 – パスワードでPDFを暗号化:

using IronPdf;

var pdf = PdfDocument.FromFile("ConfidentialDocument.pdf");
pdf.SecuritySettings.UserPassword = "user";
pdf.SecuritySettings.OwnerPassword = "owner";
pdf.SecuritySettings.AllowUserEdits = IronPdf.Security.PdfEditSecurity.NoEdit;
pdf.SecuritySettings.AllowUserAnnotations = false;
pdf.SaveAs("ConfidentialDocumentSecured.pdf");
using IronPdf;

var pdf = PdfDocument.FromFile("ConfidentialDocument.pdf");
pdf.SecuritySettings.UserPassword = "user";
pdf.SecuritySettings.OwnerPassword = "owner";
pdf.SecuritySettings.AllowUserEdits = IronPdf.Security.PdfEditSecurity.NoEdit;
pdf.SecuritySettings.AllowUserAnnotations = false;
pdf.SaveAs("ConfidentialDocumentSecured.pdf");
Imports IronPdf

Private pdf = PdfDocument.FromFile("ConfidentialDocument.pdf")
pdf.SecuritySettings.UserPassword = "user"
pdf.SecuritySettings.OwnerPassword = "owner"
pdf.SecuritySettings.AllowUserEdits = IronPdf.Security.PdfEditSecurity.NoEdit
pdf.SecuritySettings.AllowUserAnnotations = False
pdf.SaveAs("ConfidentialDocumentSecured.pdf")
$vbLabelText   $csharpLabel

出力

カスタム権限とパスワード保護のあるPDF

この例では、IronPDFがPDFを暗号化してユーザーのアクションを制限し、文書が不正アクセスや改ざんから守られるようにします。

PDFsharp: 基本的なセキュリティニーズに最適

PDFsharpは基本的なパスワード保護を提供しますが、デジタル署名、透かし、または高度な暗号化のような高度な機能は欠けています。 PDFに対するアクセスを制限したり、基本的なパスワードを適用するだけで十分な簡単なユースケースに対しては、PDFsharpが適しています。 しかし、アプリケーションがコンプライアンス標準を満たすための高度なセキュリティ機能を必要とする場合、PDFsharpは不十分に感じる可能性があります。

PDFsharpのユースケース:

  • 内部文書の保護: PDFsharpは、PDFに基本的なパスワード保護を追加するのに適しており、社内レポート、請求書、契約書への不正アクセスを防ぎます。
  • 機密ファイルの基本的な暗号化: コンプライアンスを目標にしたセキュリティを必要としないが、それでも認可されていないユーザーが機密のPDFを開けないようにしたい場合には、PDFsharpのパスワード保護はシンプルな解決策です。

ただし、IronPDFに比べると、PDFsharpの暗号化機能は限られており、強力なセキュリティが要求される業界では不適です。 ユーザーパスワードでPDFを保護し、印刷やコピーなどのアクションを制限することができますが、金融や医療のような業界に必要な堅牢な暗号化基準は提供しません。

PDFsharpコード例 – 基本的なPDF暗号化:

using PdfSharp.Pdf;
using PdfSharp.Pdf.Security;
using PdfSharp.Drawing;

// Create a new document
var document = new PdfSharp.Pdf.PdfDocument();

// Add a page and draw something on it
var page = document.AddPage();
var gfx = XGraphics.FromPdfPage(page);
var font = new XFont("Arial", 16, XFontStyleEx.Bold);
gfx.DrawString("Confidential Document", font, XBrushes.Black, new XPoint(50, 50));

// Set password protection
document.SecuritySettings.UserPassword = "password123";
document.SecuritySettings.OwnerPassword = "admin456";

// Save the encrypted PDF
document.Save("pdfsharp-encrypted.pdf");
using PdfSharp.Pdf;
using PdfSharp.Pdf.Security;
using PdfSharp.Drawing;

// Create a new document
var document = new PdfSharp.Pdf.PdfDocument();

// Add a page and draw something on it
var page = document.AddPage();
var gfx = XGraphics.FromPdfPage(page);
var font = new XFont("Arial", 16, XFontStyleEx.Bold);
gfx.DrawString("Confidential Document", font, XBrushes.Black, new XPoint(50, 50));

// Set password protection
document.SecuritySettings.UserPassword = "password123";
document.SecuritySettings.OwnerPassword = "admin456";

// Save the encrypted PDF
document.Save("pdfsharp-encrypted.pdf");
Imports PdfSharp.Pdf
Imports PdfSharp.Pdf.Security
Imports PdfSharp.Drawing

' Create a new document
Private document = New PdfSharp.Pdf.PdfDocument()

' Add a page and draw something on it
Private page = document.AddPage()
Private gfx = XGraphics.FromPdfPage(page)
Private font = New XFont("Arial", 16, XFontStyleEx.Bold)
gfx.DrawString("Confidential Document", font, XBrushes.Black, New XPoint(50, 50))

' Set password protection
document.SecuritySettings.UserPassword = "password123"
document.SecuritySettings.OwnerPassword = "admin456"

' Save the encrypted PDF
document.Save("pdfsharp-encrypted.pdf")
$vbLabelText   $csharpLabel

出力

PDFsharpを使用して暗号化されたPDF

このコードでは、PDFsharpがPDF文書にユーザーパスワードを適用してアクセスを制限します。

機能的なアプリケーション

IronPDF: 総合的なPDF編集、墨消し、変換に最適

IronPDFは、総合的なPDF編集や墨消し、DOCXからPDFへの変換のような複数のファイルフォーマットを処理する必要のあるシナリオで優れています。 ビジネスワークフローに簡単に統合できる高度なPDF操作が必要なアプリケーションに取り組んでいる開発者にとって理想的です。

IronPDFの現実世界のユースケース:

  • 機密情報の墨消し: IronPDFは、法務、医療、政府などの業界で、PDF文書から個人データ、財務情報、医療記録といった機密情報を削除または隠す必要がある場合に非常に効果的です。 墨消しは単にテキストを覆うだけでなく、墨消しされた情報が回復できないことを保証することを含みます。
  • DOCXファイルからのPDF作成の自動化: IronPDFにより、Microsoft Word ドキュメント (DOCX) をPDFに簡単に変換できます。 これはエンタープライズソフトウェアやeコマースのような環境で特に有用であり、請求書、レポート、または契約書がしばしばWordドキュメントから生成され、アーカイブや配布用にセキュアなPDFに変換する必要があります。
  • 編集可能なPDFフォーム: ユーザーがデータ (例: 申請書、調査、フィードバックフォーム) を入力できるインタラクティブなPDFフォームを構築している場合、IronPDFを使用して入力可能なフォームを作成および変更できます。 この機能はHR、教育、カスタマーサポートのような業界でよく使用されます。

例のユースケース – DOCXのPDF変換とウォーターマークの追加: 企業環境では、IronPDFを使用してWordドキュメントをPDFに変換し、その後、ブランドやセキュリティの目的でウォーターマークを追加できます。 IronPDFを使用すると、特定のページまたはすべてのPDFページにウォーターマークを適用できます。

ここでは、サンプルのDOCXファイルを用いて、「DRAFT」としてラベル付けするためのウォーターマークを適用し、例の会社ブランディングを加える例を紹介します。

using IronPdf;
using IronPdf.Editing;

DocxToPdfRenderer renderer = new DocxToPdfRenderer();
PdfDocument pdf = renderer.RenderDocxAsPdf("document.docx");
var watermark = "<h1 style='Color: red; font-size: 60px'>DRAFT</h1><img style='width: 200px' src='https://ironsoftware.com/img/products/ironpdf-logo-text-dotnet.svg'>";
pdf.ApplyWatermark(watermark, opacity: 75, VerticalAlignment.Top, HorizontalAlignment.Right);
pdf.SaveAs("output.pdf");
using IronPdf;
using IronPdf.Editing;

DocxToPdfRenderer renderer = new DocxToPdfRenderer();
PdfDocument pdf = renderer.RenderDocxAsPdf("document.docx");
var watermark = "<h1 style='Color: red; font-size: 60px'>DRAFT</h1><img style='width: 200px' src='https://ironsoftware.com/img/products/ironpdf-logo-text-dotnet.svg'>";
pdf.ApplyWatermark(watermark, opacity: 75, VerticalAlignment.Top, HorizontalAlignment.Right);
pdf.SaveAs("output.pdf");
Imports IronPdf
Imports IronPdf.Editing

Private renderer As New DocxToPdfRenderer()
Private pdf As PdfDocument = renderer.RenderDocxAsPdf("document.docx")
Private watermark = "<h1 style='Color: red; font-size: 60px'>DRAFT</h1><img style='width: 200px' src='https://ironsoftware.com/img/products/ironpdf-logo-text-dotnet.svg'>"
pdf.ApplyWatermark(watermark, opacity:= 75, VerticalAlignment.Top, HorizontalAlignment.Right)
pdf.SaveAs("output.pdf")
$vbLabelText   $csharpLabel

出力

カスタムウォーターマークを使用してDOCXからPDF形式にレンダリングしたPDFの出力

この例では、IronPDF はまずDOCX ドキュメントをPDFに変換し、その後、ドキュメントが「DRAFT」とラベル付けされるようにウォーターマークを追加します。 この機能は、敏感な情報を配布する企業に有用であり、ドキュメントのセキュリティが維持されていることを確保したり、どのドキュメントがドラフトであるかを追跡するのに役立ちます。

PDFsharp: 軽量なPDF編集とシンプルなドキュメント生成に最適

PDFsharpは、スクラッチから基本的なPDF操作を行う必要があるシンプルなPDFオペレーションに適しており、補正や基本的な編集を行うに最適です。 スクラッチからシンプルなPDFを作成したり、既存のPDFを修正したり、基本的な墨消しを行うといったタスクに優れています。 しかし、より複雑な操作、例えば高度な墨消しや文書変換、フォームデータを扱う際には、IronPDFに比べてPDFsharpの機能は限られています。

PDFSharpの現実世界のユースケース:

  • シンプルなレポートとドキュメントの生成: PDFsharpは、レポート、請求書、パンフレットといったシンプルで静的なドキュメントの作成に最適です。 PDF生成が非常に複雑である必要はなく、テキスト、画像、テーブルなどの基本的なフォーマットを含める必要がある小規模なビジネスアプリケーションによく使用されます。
  • 基本的なPDF編集とマージ: 複数のPDFファイルを単一のドキュメントに結合したり、大きなPDFを小さいセクションに分割したりする必要があるシナリオでは、PDFsharpはこれらのタスクを扱うためのシンプルな機能を提供します。 より複雑なPDF操作を必要としないドキュメント管理システムに適しています。
  • 基本的な墨消し: PDFsharpは、IronPDFのような高度な墨消し機能は提供していませんが、基本的な墨消しに使用できます。 たとえば、テキストや画像を形や無地の色で覆うといったことです。 この機能は、低セキュリティ文書や、厳格なデータプライバシー法に準拠する必要のないアプリケーションに十分である場合があります。

例のユースケース: ビジネス環境では、PDFsharpを使用して、データベースから抽出されたデータからレポートを生成したり、複数のファイルを1つに結合したり、社内使用のためにドキュメントの一部を墨消しすることができます。

PDFsharpコード例 – 2つのPDFのマージ:

using PdfSharp.Pdf;
using PdfSharp.Pdf.IO;

// Open the first PDF
PdfDocument document1 = PdfReader.Open("document1.pdf", PdfDocumentOpenMode.Import);

// Open the second PDF
PdfDocument document2 = PdfReader.Open("document2.pdf", PdfDocumentOpenMode.Import);

// Create a new PDF document for the merged file
PdfDocument outputDocument = new PdfDocument();

// Add pages from the first document
foreach (PdfPage page in document1.Pages)
{
    outputDocument.AddPage(page);
}

// Add pages from the second document
foreach (PdfPage page in document2.Pages)
{
    outputDocument.AddPage(page);
}

// Save the merged PDF
outputDocument.Save("merged-document.pdf");
using PdfSharp.Pdf;
using PdfSharp.Pdf.IO;

// Open the first PDF
PdfDocument document1 = PdfReader.Open("document1.pdf", PdfDocumentOpenMode.Import);

// Open the second PDF
PdfDocument document2 = PdfReader.Open("document2.pdf", PdfDocumentOpenMode.Import);

// Create a new PDF document for the merged file
PdfDocument outputDocument = new PdfDocument();

// Add pages from the first document
foreach (PdfPage page in document1.Pages)
{
    outputDocument.AddPage(page);
}

// Add pages from the second document
foreach (PdfPage page in document2.Pages)
{
    outputDocument.AddPage(page);
}

// Save the merged PDF
outputDocument.Save("merged-document.pdf");
Imports PdfSharp.Pdf
Imports PdfSharp.Pdf.IO

' Open the first PDF
Private document1 As PdfDocument = PdfReader.Open("document1.pdf", PdfDocumentOpenMode.Import)

' Open the second PDF
Private document2 As PdfDocument = PdfReader.Open("document2.pdf", PdfDocumentOpenMode.Import)

' Create a new PDF document for the merged file
Private outputDocument As New PdfDocument()

' Add pages from the first document
For Each page As PdfPage In document1.Pages
	outputDocument.AddPage(page)
Next page

' Add pages from the second document
For Each page As PdfPage In document2.Pages
	outputDocument.AddPage(page)
Next page

' Save the merged PDF
outputDocument.Save("merged-document.pdf")
$vbLabelText   $csharpLabel

出力

PDFsharpを使用したPDFマージの出力

このコードでは、PDFsharpを使用して2つのPDF文書を1つにマージする方法を示します。 これは、複数のレポート、請求書、または他のドキュメントを1つのPDFに結合する必要があるアプリケーションによくあるユースケースです。

価格とライセンス

IronPDFとPDFsharpは、さまざまなニーズに合わせて異なる価格設定とライセンス形態を提供しています。 IronPDFは永続ライセンスモデルを提供している一方で、PDFsharpはオープンソースで無料で利用できます。

IronPDFの価格とライセンス:

IronPDFは、永続ライセンスモデルを使用しており、ユーザーは年間アップデート付きの生涯アクセスを得ることができます。 使用に応じた段階的価格設定を提供し、個人、チーム、または企業向けのライセンスを含んでいます。 無料試用版が利用可能で、購入前にツールを試すことができます。 商用ライセンスのユーザーは、技術サポートや機能更新も受けられます。

  • 永続ライセンス: 生涯アクセスで、年間アップデートを含みます。
  • 段階的ライセンス: 個人チーム企業向けのライセンス。
  • 無料試用版: 購入前に試用可能。
  • 商用サポート: サポートと定期的な更新を利用可能。

PDFsharpのライセンス:

PDFsharpはMITライセンスで無償提供されており、個人および商用利用のためのオープンソースです。 ただし、プレミアムサポートは提供しておらず、コミュニティフォーラムに頼ってサポートを受けることになります。 これは小規模またはオープンソースプロジェクトに合致していますが、より複雑なニーズには外部の助けが必要な場合があります。

  • MITライセンス: 商用利用が無料。
  • プレミアムサポートなし: コミュニティフォーラムでの支援。
  • 柔軟性: 小規模プロジェクトに最適。

エンドユーザーサポートおよびドキュメンテーション

IronPDFは開発者サポートに優れており、詳細な文書と複数の支援チャネルを提供しています。 PDFsharpとは異なり、IronPDFは開発者が統合プロセスをサポートするための体系的なリソースを提供します。

IronPDF開発者サポート:

IronPDF provides comprehensive documentation, including step-by-step guides, API references, and code samples. 技術的な質問に対する専用のサポートチームが利用可能です。 さらに、オンラインナレッジベースがトラブルシューティングの解決策や便利なヒントを提供します。 エンタープライズ顧客には、優先サポートが提供され、問題解決が迅速です。

  • 包括的なドキュメント: 詳細なガイドコード例
  • サポートチーム: 技術サポートに直接アクセス。
  • ナレッジベース: FAQsとトラブルシューティングのヒント。
  • 優先サポート: 企業向けの迅速な問題解決

エンゲージングコミュニティアスペクト:

IronPDFはまた活発な開発者コミュニティを育成しています。 ユーザーはコミュニティフォーラムに参加し、質問をしたり経験を共有したり、解決策を見つけたりできます。 さらに、チュートリアルやビデオガイドがユーザーの早期の立ち上げを支援します。 IronPDFはGitHubにも参加しており、コミュニティはバグの報告や機能提案を行うことができます。

  • コミュニティフォーラム: 質問をしたり、解決策を共有して参加。
  • チュートリアル&ガイド: ステップバイステップの説明ビデオリソース
  • GitHubのコラボレーション: ユーザーは貢献し、新しい機能を提案できます。

PDFsharp開発者サポート:

PDFsharpのサポートは主にGitHubのリポジトリとStack Overflowのようなコミュニティフォーラムから提供されます。 開発者は問題を報告したり解決策をブラウズしたり質問したりできます。 しかし、ドキュメントは限られており、詳細なガイドや公式のチュートリアルは乏しく、開発者はコミュニティの貢献や試行錯誤に頼る必要があります。

  • GitHubリポジトリ: 問題を報告したりソリューションを探ります。
  • コミュニティフォーラム: Stack Overflowでのヘルプを見つける。
  • 疎らなドキュメント: 限られたガイドとリソース。

コミュニティ駆動型貢献:

公式サポートがないため、開発者はGitHubを通じてPDFsharpに貢献し、ドキュメントの改善や機能の追加を行うことができます。 ユーザーが貢献したチュートリアルもあるが、専用のサポートチームがいないためトラブルシューティングに時間がかかることがあります。

  • オープンソース貢献: ユーザーはドキュメントを改善できます。
  • 協力的なトラブルシューティング: コミュニティに頼ってヘルプを得る。

ライセンス、ドキュメンテーション、およびサポートのサマリー

各ライブラリのライセンス、ドキュメント、サポートのサマリー

結論

When choosing between IronPDF and PDFsharp, the decision largely depends on your project's requirements. IronPDFは、高度なHTMLからPDFへの変換、堅牢な暗号化、強力なクロスプラットフォームサポートといった高度な機能を備えた強力かつ多機能なソリューションです。 高品質のPDF操作、セキュリティ機能、専用サポートを必要とする企業、エンタープライズ、開発者に最適です。

一方、PDFsharpは高度な機能を必要としないシンプルなプロジェクト向けの堅実でオープンソースの選択肢であり、基本的なPDF作成と編集において使いやすさと柔軟性を提供します。

すべてを備えたPDFソリューションを探している場合、高機能のIronPDFを探索することをお勧めします。 商業サポートと継続的な更新により、IronPDFは開発ニーズに合わせてスケーリングされ、PDFが効率的かつ安全に処理されることを保証します。 IronPDFを今日試してみて、PDFワークフローをどのように合理化できるかをご確認ください!

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

よくある質問

C# で HTML を PDF に変換するにはどうすればいいですか?

IronPDF の RenderHtmlAsPdf メソッドを使用して、HTML 文字列を PDF に変換できます。RenderHtmlFileAsPdf を使用して HTML ファイルを PDF に変換することもできます。

IronPDF と PDFsharp の主な違いは何ですか?

IronPDF は、HTML から PDF への変換、PDF 編集、セキュリティ機能などの高度な機能を備えた包括的なライブラリです。PDFsharp はより基本的で、PDF の作成と編集に焦点を当てており、ネイティブな HTML から PDF への変換機能が欠けています。

IronPDF はクロスプラットフォーム アプリケーションに適していますか?

はい、IronPDF は Windows, macOS, Linux をサポートしており、.NET Core および .NET Framework と互換性があるため、クロスプラットフォーム アプリケーションに最適です。

IronPDF はどのようなセキュリティ機能を提供しますか?

IronPDF は、デジタル署名や 256 ビット暗号化を含む高度なセキュリティ機能を提供し、堅牢なドキュメント保護を必要とするアプリケーションに適しています。

PDFsharp が PDF 変換のために複雑なウェブページを処理できますか?

いいえ、PDFsharp はネイティブで HTML から PDF への変換をサポートしていません。Polybioz.HtmlRenderer.PdfSharp.Core のようなサードパーティ ツールが必要です。

IronPDF は開発者をどのように支援しますか?

IronPDF は包括的なドキュメント、専任のサポート チーム、活発なコミュニティ フォーラムを提供し、開発者向けに豊富なリソースを提供します。

IronPDF のライセンスオプションはどのようになっていますか?

IronPDF は、階層化された価格設定の永久ライセンス モデルを使用し、無料トライアル、年間更新、および商用サポートを提供しています。

PDFsharp は無料で使用できますか?

はい、PDFsharp は MIT ライセンスの下で無料でオープンソースで提供されており、個人および商業用に使用できます。

どのライブラリがPDF暗号化に対するより良いサポートを提供しますか?

IronPDF は、256 ビット暗号化やデジタル署名などの高度な暗号化機能を提供しており、安全な PDF 処理に適しています。

複雑な PDF 操作に最適な .NET ライブラリは何ですか?

IronPDF は高度な HTML から PDF への変換、編集、およびドキュメント セキュリティなどの機能を提供し、複雑な PDF タスクに適しています。

Curtis Chau
テクニカルライター

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

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