Syncfusion PDF Viewer vs IronPDF: どのC# PDFライブラリがHTMLからPDFへのより良い変換を提供するか?
開発者が.NETアプリケーションで堅牢なPDF生成と操作を必要とする場合、正しいライブラリを選ぶことはプロジェクトの成功に大きく影響します。 Syncfusion PDF Viewerはツールの統合スイートの一部として堅実なPDF機能を提供していますが、IronPDFはC#のPDF操作に特化した、開発者に焦点を当てたソリューションを提供しています。 この総合的な比較では、両方のライブラリのHTMLからPDFへの変換能力、機能、価格設定、実際のパフォーマンスを検討し、情報に基づいた決定を支援します。
クイック比較: IronPDF vs Syncfusion PDF
詳細な機能の比較に入る前に、これらの2つのPDFライブラリがどのようにお互いに比べられるかの包括的な概要を示します。
| カテゴリ | 特徴/側面 | IronPDF | Syncfusion PDF | 主な利点 |
|---|---|---|---|---|
| コアアーキテクチャ | デザイン哲学 | PDFファースト、直感的なAPI | コンポーネント・スイート・アプローチ | IronPDF:特化した焦点 |
| APIの複雑さ | RenderHtmlAsPdf()のような単純なメソッド。 | マルチクラスコンバータアプローチ | IronPDF: 必要なAPIコールが少ない | |
| 学習曲線 | 生産的な使用時間 | 通常数日から数週間 | IronPDF: より迅速な導入 | |
| プラットフォームサポート | クロスプラットフォーム | ネイティブサポート、追加パッケージなし | プラットフォーム固有の設定が必要 | IronPDF: よりシンプルな導入 |
| .NETバージョン | .NET 10、9、8、7、6、5、Core 3.1 以上、Framework 4.6.2 以上 | .NET Framework 4.6.2以上、.NET Standard 2.0、.NET 8.0、.NET 9.0 | IronPDF: 幅広いレガシーバージョンのサポート | |
| オペレーティングシステム | Windows、Linux、macOS、Dockerネイティブ | Windows、Linux、macOS対応 | 両方:フルカバレッジ | |
| HTMLからPDFへ | レンダリングエンジン | フルChromeV8エンジン | WebKit (レガシー) または Blink/CEF (新しい) | IronPDF: 最新のChromiumレンダリング |
| CSS3/HTML5 サポート | 完全なサポート | 制限付き(WebKit)または完全(Blink) | IronPDF:一貫した最新のWeb標準 | |
| JavaScriptの実行 | 完全なJavaScriptサポート | JSなし(WebKit)、JSあり(Blink) | IronPDF:ダイナミックコンテンツのネイティブサポート | |
| レンダリング速度 | フルChromiumレンダリング (複雑なHTMLがサポート) | エンジンによって異なる (WebKitまたはBlink/CEF) | Syncfusion WebKit: 基本的なHTMLのために高速 | |
| 主な特徴 | PDFフォーム | インタラクティブなフォームを保持 | フォーム作成/入力サポート | 両方:完全なフォームサポート |
| デジタル署名 | 統合された視覚的シグネチャ | 証明書ベースの署名 | IronPDF:よりシンプルな署名 | |
| OCR機能 | IronOCRの統合を介して | Syncfusion OCR Processorが必要です。 | 両方:追加コンポーネント | |
| PDF/A準拠 | PDF/A-1b、PDF/A-3b対応 | PDF/A-1b、PDF/X対応 | 両方:アーカイブ準拠 | |
| 開発者としての経験 | ドキュメント | PDF中心のチュートリアル、ビデオ | スイート全体のドキュメント | IronPDF:対象リソース |
| コード例 | すぐに実行できる100以上のサンプル | 包括的な例 | 両方:豊富なサンプル | |
| エラーメッセージ | 説明的で実用的 | 技術的メッセージ | IronPDF:より良いデバッグ | |
| Licensing & Pricing | エントリーレベル | Lite:$999 (1開発者、1プロジェクト) | チーム$395/月 (5人の開発者) | IronPDF:1回限りの購入 |
| 価格モデル | 永続的ライセンス | 年間サブスクリプション | IronPDF:継続料金なし | |
| 無料トライアル | 30日間フル機能 | 30日間トライアル + コミュニティライセンス | 両方:手厚いトライアル | |
| サポート | サポートが含まれています | はい、24時間365日のエンジニアリングサポート | はい、24時間対応 | 両方:プロフェッショナルサポート |
| エンジニアリングへの直接アクセス | はい | サポート体制 | IronPDF:直接アクセス | |
| 最適な対象 | 使用例 | 最新のウェブアプリ、複雑なHTML | 基本的なPDF生成、UIスイートユーザー | 文脈依存 |
| チームサイズ | 1~10名以上の開発者 | 5人以上の開発者 | IronPDF:柔軟なサイジング |
注 Syncfusion PDFはより大規模なコンポーネントスイートの一部であり、IronPDFは優れたHTMLレンダリング機能を備えた特殊なPDF機能を提供します。包括的なUIコンポーネントとPDF専用機能のどちらを優先するかによって、選択は変わります。
各PDFライブラリの主な機能は何ですか?
IronPDF
IronPDF stands out as a specialized .NET PDFライブラリ built specifically for developers who need robust PDF generation and manipulation capabilities. そのアーキテクチャはChromeレンダリングエンジンに焦点を当てており、現代のブラウザで見るとおりにピクセル単位で完璧なHTMLからPDFへの変換を提供します。 この精度と使いやすさへのこだわりにより、複雑なドキュメント生成要件を扱う.NET開発者の間で人気が高まっています。
IronPDFの包括的な機能を探ることでPDFワークフローを簡素化する方法を理解します。 .NET 9, .NET 8,および以前のバージョン(さらに近日中にリリースされる.NET 10も)をサポートしており、Windows, Linux, macOS, Docker, Azure, およびAWS環境でシームレスに動作します。 ライブラリの直感的なAPI設計により、開発者は数行のコードでPDFを生成し始めることができ、開発時間を大幅に短縮します。
Syncfusion PDF
The Syncfusion .NET PDF library forms part of the broader Syncfusion Essential Studio suite, offering PDF manipulation capabilities alongside numerous other UI components. それは堅実なPDF機能を提供しますが、強みは開発ツールの統合されたエコシステムの一部であることにあります。 このライブラリは、開発者がPDFドキュメントをプログラム的に作成、読み取り、編集することを可能にしますが、専門的なPDFライブラリと比較してより多くの設定を必要とするかもしれません。
Syncfusionのアプローチは、すでにUIコンポーネントを使用しているチームや、包括的なスイートソリューションを求めているチームにアピールします。 ライブラリにはPDFの作成、操作、および基本的なHTMLからPDFへの変換機能が含まれていますが、現代のウェブ標準サポートにはいくつかの制限があります。
クロスプラットフォームの能力はどのように比較されますか?
両方のライブラリはマルチプラットフォームサポートを提供しますが、それぞれの実装アプローチは大きく異なります。
IronPDFプラットフォームサポート:
-
.NET バージョン:
- C#, VB.NET, F#
- .NET 10, 9, 8, 7, 6, 5,およびCore 3.1+
- .NET Standard2.0+
- .NET Framework 4.6.2+
-
ネイティブプラットフォームサポート: Windows, Linux, macOS, Docker, Azure, AWS
-
IDEs: Microsoft Visual Studio, JetBrains Rider & ReSharper
-
プロセッサ: x64, x86, ARM
Syncfusionプラットフォームサポート:
- .NET Framework 4.6.2+
- .NET Standard2.0
- .NET 8.0、.NET 9.0
- Windows Forms、ASP.NET Core、Xamarin、Flutter、.NET MAUIとの統合
- Windows, Mac, およびLinuxサポート(プラットフォーム固有の設定が必要)
IronPDFの詳細な互換性マトリックスを参照し、特定の開発環境をどのようにサポートするか確認してください。
どちらのライブラリがより優れたHTML to PDFの変換を提供しますか?
HTMLからPDFへの変換は、現代のアプリケーションにとって最も重要な機能の1つです。 各ライブラリがこの重要なタスクをどのように処理するかを調べてみましょう。
IronPDF HTML to PDF アプローチ
using IronPdf;
// One-line PDF generation from HTML
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf("<h1>Invoice #2025-001</h1><p>Total: $1,299.00</p>");
pdf.SaveAs("invoice.pdf");
// Advanced example with modern CSS and JavaScript
var advancedPdf = renderer.RenderHtmlAsPdf(@"
<html>
<head>
<link href='https://fonts.googleapis.com/css?family=Inter' rel='stylesheet'>
<style>
body { font-family: 'Inter', sans-serif; }
.invoice { background: linear-gradient(to right, #667eea, #764ba2); }
</style>
</head>
<body>
<div class='invoice'>Modern Invoice Design</div>
</body>
</html>");
advancedPdf.SaveAs("modern-invoice.pdf");Imports IronPdf
' One-line PDF generation from HTML
Private renderer = New ChromePdfRenderer()
Private pdf = renderer.RenderHtmlAsPdf("<h1>Invoice #2025-001</h1><p>Total: $1,299.00</p>")
pdf.SaveAs("invoice.pdf")
' Advanced example with modern CSS and JavaScript
Dim advancedPdf = renderer.RenderHtmlAsPdf("
<html>
<head>
<link href='https://fonts.googleapis.com/css?family=Inter' rel='stylesheet'>
<style>
body { font-family: 'Inter', sans-serif; }
.invoice { background: linear-gradient(to right, #667eea, #764ba2); }
</style>
</head>
<body>
<div class='invoice'>Modern Invoice Design</div>
</body>
</html>")
advancedPdf.SaveAs("modern-invoice.pdf")Imports IronPdf
' One-line PDF generation from HTML
Private renderer = New ChromePdfRenderer()
Private pdf = renderer.RenderHtmlAsPdf("<h1>Invoice #2025-001</h1><p>Total: $1,299.00</p>")
pdf.SaveAs("invoice.pdf")
' Advanced example with modern CSS and JavaScript
Dim advancedPdf = renderer.RenderHtmlAsPdf("
<html>
<head>
<link href='https://fonts.googleapis.com/css?family=Inter' rel='stylesheet'>
<style>
body { font-family: 'Inter', sans-serif; }
.invoice { background: linear-gradient(to right, #667eea, #764ba2); }
</style>
</head>
<body>
<div class='invoice'>Modern Invoice Design</div>
</body>
</html>")
advancedPdf.SaveAs("modern-invoice.pdf")IronPDFは完全なChrome V8 JavaScriptエンジンを活用して、PDFをChromeブラウザと同じように正確にレンダリングします。 このアプローチは、flexbox, グリッドレイアウト, アニメーション(静的としてキャプチャされる), カスタムウェブフォントのような最新のCSS3機能をサポートします。 ChromePdfRenderer クラスは、ビューポート設定、JavaScript実行の遅延、レスポンシブデザインの処理を含む広範なカスタマイズオプションを提供します。
Syncfusion HTML to PDF アプローチ
using Syncfusion.Pdf;
using Syncfusion.HtmlConverter;
// Create converter instance
HtmlToPdfConverter htmlConverter = new HtmlToPdfConverter();
// Basic HTML to PDF conversion
PdfDocument document = htmlConverter.Convert("<h1>Basic Document</h1>");
// Save the document
using (FileStream fileStream = new FileStream("output.pdf", FileMode.CreateNew))
{
document.Save(fileStream);
}
document.Close(true);using Syncfusion.Pdf;
using Syncfusion.HtmlConverter;
// Create converter instance
HtmlToPdfConverter htmlConverter = new HtmlToPdfConverter();
// Basic HTML to PDF conversion
PdfDocument document = htmlConverter.Convert("<h1>Basic Document</h1>");
// Save the document
using (FileStream fileStream = new FileStream("output.pdf", FileMode.CreateNew))
{
document.Save(fileStream);
}
document.Close(true);Imports Syncfusion.Pdf
Imports Syncfusion.HtmlConverter
' Create converter instance
Private htmlConverter As New HtmlToPdfConverter()
' Basic HTML to PDF conversion
Private document As PdfDocument = htmlConverter.Convert("<h1>Basic Document</h1>")
' Save the document
Using fileStream As New FileStream("output.pdf", FileMode.CreateNew)
document.Save(fileStream)
End Using
document.Close(True)Imports Syncfusion.Pdf
Imports Syncfusion.HtmlConverter
' Create converter instance
Private htmlConverter As New HtmlToPdfConverter()
' Basic HTML to PDF conversion
Private document As PdfDocument = htmlConverter.Convert("<h1>Basic Document</h1>")
' Save the document
Using fileStream As New FileStream("output.pdf", FileMode.CreateNew)
document.Save(fileStream)
End Using
document.Close(True)Syncfusionは2つのレンダリングオプションを提供します:レガシーのWebKitベースのエンジンと新しいBlink(Chromium)エンジン。WebKitエンジンは、基本的なHTMLとCSSを効率的に処理するカスタム解析アプローチを使用しますが、JavaScriptの実行や、flexboxおよびグリッドレイアウトのような高度なCSS3機能のサポートが不足しています。 Blink/CEFエンジン(最近のバージョンで導入)は、Chromiumレンダリングを使用し、理論的にはモダンなウェブ標準をサポートするはずですが、追加の設定が必要です。 これらの制限は、特にWebKitベースのバージョンで、モダンなウェブアプリケーションや複雑なレイアウトを扱う場合に明らかになります。
実世界での性能比較
IronPDFのChromiumベースのレンダリングエンジンは、SyncfusionのレガシーWebKitエンジンでは処理できない最新のウェブコンテンツを処理します。 実際の違いは以下に最もよく現れます:
- メディアクエリを用いたレスポンシブデザイン
- 複雑なCSSアニメーションとトランジション
- JavaScriptレンダリングのコンテンツ
- 現代的なウェブフォントとアイコンライブラリ
- SVGグラフィックスとキャンバス要素
ライブラリ間のセキュリティ機能の比較
機密文書を扱う際にはセキュリティが最重要です。 両方のライブラリは暗号化機能を提供していますが、それらの実装アプローチは異なります。
IronPDFのセキュリティ実装
using IronPdf;
using IronPdf.Security;
// Load or create a PDF
var pdf = PdfDocument.FromFile("sensitive-data.pdf");
// Apply comprehensive security settings
pdf.SecuritySettings.RemovePasswordsAndEncryption();
pdf.SecuritySettings.MakePdfDocumentReadOnly("owner-password");
pdf.SecuritySettings.AllowUserAnnotations = false;
pdf.SecuritySettings.AllowUserCopyPasteContent = false;
pdf.SecuritySettings.AllowUserFormData = false;
pdf.SecuritySettings.AllowUserPrinting = PdfPrintSecurity.NoPrint;
// Set 256-bit AES encryption
pdf.Password = "user-password";
pdf.SaveAs("secured-document.pdf");using IronPdf;
using IronPdf.Security;
// Load or create a PDF
var pdf = PdfDocument.FromFile("sensitive-data.pdf");
// Apply comprehensive security settings
pdf.SecuritySettings.RemovePasswordsAndEncryption();
pdf.SecuritySettings.MakePdfDocumentReadOnly("owner-password");
pdf.SecuritySettings.AllowUserAnnotations = false;
pdf.SecuritySettings.AllowUserCopyPasteContent = false;
pdf.SecuritySettings.AllowUserFormData = false;
pdf.SecuritySettings.AllowUserPrinting = PdfPrintSecurity.NoPrint;
// Set 256-bit AES encryption
pdf.Password = "user-password";
pdf.SaveAs("secured-document.pdf");Imports IronPdf
Imports IronPdf.Security
' Load or create a PDF
Private pdf = PdfDocument.FromFile("sensitive-data.pdf")
' Apply comprehensive security settings
pdf.SecuritySettings.RemovePasswordsAndEncryption()
pdf.SecuritySettings.MakePdfDocumentReadOnly("owner-password")
pdf.SecuritySettings.AllowUserAnnotations = False
pdf.SecuritySettings.AllowUserCopyPasteContent = False
pdf.SecuritySettings.AllowUserFormData = False
pdf.SecuritySettings.AllowUserPrinting = PdfPrintSecurity.NoPrint
' Set 256-bit AES encryption
pdf.Password = "user-password"
pdf.SaveAs("secured-document.pdf")Imports IronPdf
Imports IronPdf.Security
' Load or create a PDF
Private pdf = PdfDocument.FromFile("sensitive-data.pdf")
' Apply comprehensive security settings
pdf.SecuritySettings.RemovePasswordsAndEncryption()
pdf.SecuritySettings.MakePdfDocumentReadOnly("owner-password")
pdf.SecuritySettings.AllowUserAnnotations = False
pdf.SecuritySettings.AllowUserCopyPasteContent = False
pdf.SecuritySettings.AllowUserFormData = False
pdf.SecuritySettings.AllowUserPrinting = PdfPrintSecurity.NoPrint
' Set 256-bit AES encryption
pdf.Password = "user-password"
pdf.SaveAs("secured-document.pdf")IronPDFは、すべてのセキュリティオプションを統合した統一されたSecuritySettings クラスを提供します。 この設計により、複雑なAPI階層をナビゲートせずに複数のセキュリティ対策を適用するのが簡単になります。 このライブラリは、15以上の詳細な権限設定をサポートしています。
Syncfusionのセキュリティ実装
using Syncfusion.Pdf;
using Syncfusion.Pdf.Security;
// Load document
PdfLoadedDocument document = new PdfLoadedDocument("input.pdf");
// Create security object
PdfSecurity security = document.Security;
security.UserPassword = "user123";
security.OwnerPassword = "owner123";
security.Algorithm = PdfEncryptionAlgorithm.AES;
security.KeySize = PdfEncryptionKeySize.Key256Bit;
security.Permissions = PdfPermissionsFlags.Print | PdfPermissionsFlags.CopyContent;
// Save encrypted document
document.Save("encrypted.pdf");
document.Close(true);using Syncfusion.Pdf;
using Syncfusion.Pdf.Security;
// Load document
PdfLoadedDocument document = new PdfLoadedDocument("input.pdf");
// Create security object
PdfSecurity security = document.Security;
security.UserPassword = "user123";
security.OwnerPassword = "owner123";
security.Algorithm = PdfEncryptionAlgorithm.AES;
security.KeySize = PdfEncryptionKeySize.Key256Bit;
security.Permissions = PdfPermissionsFlags.Print | PdfPermissionsFlags.CopyContent;
// Save encrypted document
document.Save("encrypted.pdf");
document.Close(true);Imports Syncfusion.Pdf
Imports Syncfusion.Pdf.Security
' Load document
Private document As New PdfLoadedDocument("input.pdf")
' Create security object
Private security As PdfSecurity = document.Security
security.UserPassword = "user123"
security.OwnerPassword = "owner123"
security.Algorithm = PdfEncryptionAlgorithm.AES
security.KeySize = PdfEncryptionKeySize.Key256Bit
security.Permissions = PdfPermissionsFlags.Print Or PdfPermissionsFlags.CopyContent
' Save encrypted document
document.Save("encrypted.pdf")
document.Close(True)Imports Syncfusion.Pdf
Imports Syncfusion.Pdf.Security
' Load document
Private document As New PdfLoadedDocument("input.pdf")
' Create security object
Private security As PdfSecurity = document.Security
security.UserPassword = "user123"
security.OwnerPassword = "owner123"
security.Algorithm = PdfEncryptionAlgorithm.AES
security.KeySize = PdfEncryptionKeySize.Key256Bit
security.Permissions = PdfPermissionsFlags.Print Or PdfPermissionsFlags.CopyContent
' Save encrypted document
document.Save("encrypted.pdf")
document.Close(True)Syncfusionは標準的な暗号化オプションを提供していますが、APIはより手動の設定を要します。 ユーザーとオーナーパスワードの分離は柔軟性を提供しますが、一般的な使用例では複雑になります。
どちらのライブラリがより優れたコンテンツ操作機能を提供しますか?
PDF墨消し機能
コンテンツの墨消しはコンプライアンスとプライバシーにとって重要です。 各ライブラリがこのタスクをどのようにアプローチするかを見てみましょう。
IronPDFの赤裸:
using IronPdf;
var pdf = PdfDocument.FromFile("confidential.pdf");
// One-line redaction of sensitive content
pdf.RedactTextOnAllPages("SSN: [0-9]{3}-[0-9]{2}-[0-9]{4}");
// Redact with custom appearance
pdf.RedactTextOnPage("CONFIDENTIAL", 0,
new RedactionOptions {
Color = IronColor.Black,
Overlay = "REDACTED"
});
pdf.SaveAs("redacted.pdf");using IronPdf;
var pdf = PdfDocument.FromFile("confidential.pdf");
// One-line redaction of sensitive content
pdf.RedactTextOnAllPages("SSN: [0-9]{3}-[0-9]{2}-[0-9]{4}");
// Redact with custom appearance
pdf.RedactTextOnPage("CONFIDENTIAL", 0,
new RedactionOptions {
Color = IronColor.Black,
Overlay = "REDACTED"
});
pdf.SaveAs("redacted.pdf");Imports IronPdf
Private pdf = PdfDocument.FromFile("confidential.pdf")
' One-line redaction of sensitive content
pdf.RedactTextOnAllPages("SSN: [0-9]{3}-[0-9]{2}-[0-9]{4}")
' Redact with custom appearance
pdf.RedactTextOnPage("CONFIDENTIAL", 0, New RedactionOptions With {
.Color = IronColor.Black,
.Overlay = "REDACTED"
})
pdf.SaveAs("redacted.pdf")Imports IronPdf
Private pdf = PdfDocument.FromFile("confidential.pdf")
' One-line redaction of sensitive content
pdf.RedactTextOnAllPages("SSN: [0-9]{3}-[0-9]{2}-[0-9]{4}")
' Redact with custom appearance
pdf.RedactTextOnPage("CONFIDENTIAL", 0, New RedactionOptions With {
.Color = IronColor.Black,
.Overlay = "REDACTED"
})
pdf.SaveAs("redacted.pdf")Syncfusionの墨消し:
using Syncfusion.Pdf;
using Syncfusion.Pdf.Redaction;
PdfLoadedDocument loadedDocument = new PdfLoadedDocument("input.pdf");
// Create redaction annotation
PdfRedaction redaction = new PdfRedaction(
new RectangleF(100, 120, 200, 50),
Color.Black);
// Add to specific page
loadedDocument.Pages[0].Redactions.Add(redaction);
// Apply redactions
loadedDocument.Redact();
loadedDocument.Save("redacted.pdf");
loadedDocument.Close(true);using Syncfusion.Pdf;
using Syncfusion.Pdf.Redaction;
PdfLoadedDocument loadedDocument = new PdfLoadedDocument("input.pdf");
// Create redaction annotation
PdfRedaction redaction = new PdfRedaction(
new RectangleF(100, 120, 200, 50),
Color.Black);
// Add to specific page
loadedDocument.Pages[0].Redactions.Add(redaction);
// Apply redactions
loadedDocument.Redact();
loadedDocument.Save("redacted.pdf");
loadedDocument.Close(true);Imports Syncfusion.Pdf
Imports Syncfusion.Pdf.Redaction
Private loadedDocument As New PdfLoadedDocument("input.pdf")
' Create redaction annotation
Private redaction As New PdfRedaction(New RectangleF(100, 120, 200, 50), Color.Black)
' Add to specific page
loadedDocument.Pages(0).Redactions.Add(redaction)
' Apply redactions
loadedDocument.Redact()
loadedDocument.Save("redacted.pdf")
loadedDocument.Close(True)Imports Syncfusion.Pdf
Imports Syncfusion.Pdf.Redaction
Private loadedDocument As New PdfLoadedDocument("input.pdf")
' Create redaction annotation
Private redaction As New PdfRedaction(New RectangleF(100, 120, 200, 50), Color.Black)
' Add to specific page
loadedDocument.Pages(0).Redactions.Add(redaction)
' Apply redactions
loadedDocument.Redact()
loadedDocument.Save("redacted.pdf")
loadedDocument.Close(True)IronPDFの正規表現対応のパターンベースの墨消しは、大量の操作においてより効率的です。 正規表現パターンを指定し、すべてのページに一度のコールで編集を適用する機能は、大規模なドキュメント処理のためのコードを削減します。
デジタル署名の実装
両方のライブラリはデジタル署名をサポートしていますが、それらのアプローチは大きく異なります。
IronPDFのデジタル署名:
using IronPdf;
using IronPdf.Signing;
var pdf = new ChromePdfRenderer().RenderHtmlAsPdf("<h1>Contract</h1>");
// Load certificate
var cert = new X509Certificate2("certificate.pfx", "password");
// Create and apply signature with visual representation
var signature = new PdfSignature(cert)
{
SigningContact = "legal@company.com",
SigningLocation = "New York, NY",
SigningReason = "Contract Approval"
};
pdf.Sign(signature);
pdf.SaveAs("signed-contract.pdf");using IronPdf;
using IronPdf.Signing;
var pdf = new ChromePdfRenderer().RenderHtmlAsPdf("<h1>Contract</h1>");
// Load certificate
var cert = new X509Certificate2("certificate.pfx", "password");
// Create and apply signature with visual representation
var signature = new PdfSignature(cert)
{
SigningContact = "legal@company.com",
SigningLocation = "New York, NY",
SigningReason = "Contract Approval"
};
pdf.Sign(signature);
pdf.SaveAs("signed-contract.pdf");Imports IronPdf
Imports IronPdf.Signing
Private pdf = (New ChromePdfRenderer()).RenderHtmlAsPdf("<h1>Contract</h1>")
' Load certificate
Private cert = New X509Certificate2("certificate.pfx", "password")
' Create and apply signature with visual representation
Private signature = New PdfSignature(cert) With {
.SigningContact = "legal@company.com",
.SigningLocation = "New York, NY",
.SigningReason = "Contract Approval"
}
pdf.Sign(signature)
pdf.SaveAs("signed-contract.pdf")Imports IronPdf
Imports IronPdf.Signing
Private pdf = (New ChromePdfRenderer()).RenderHtmlAsPdf("<h1>Contract</h1>")
' Load certificate
Private cert = New X509Certificate2("certificate.pfx", "password")
' Create and apply signature with visual representation
Private signature = New PdfSignature(cert) With {
.SigningContact = "legal@company.com",
.SigningLocation = "New York, NY",
.SigningReason = "Contract Approval"
}
pdf.Sign(signature)
pdf.SaveAs("signed-contract.pdf")Syncfusionのデジタル署名:
using Syncfusion.Pdf;
using Syncfusion.Pdf.Security;
PdfLoadedDocument loadedDocument = new PdfLoadedDocument("contract.pdf");
PdfCertificate certificate = new PdfCertificate("certificate.pfx", "password");
PdfSignature signature = new PdfSignature(
loadedDocument,
loadedDocument.Pages[0],
certificate,
"Signature");
signature.Bounds = new RectangleF(100, 100, 200, 100);
signature.ContactInfo = "legal@company.com";
signature.LocationInfo = "New York";
signature.Reason = "Contract Approval";
loadedDocument.Save("signed.pdf");
loadedDocument.Close(true);using Syncfusion.Pdf;
using Syncfusion.Pdf.Security;
PdfLoadedDocument loadedDocument = new PdfLoadedDocument("contract.pdf");
PdfCertificate certificate = new PdfCertificate("certificate.pfx", "password");
PdfSignature signature = new PdfSignature(
loadedDocument,
loadedDocument.Pages[0],
certificate,
"Signature");
signature.Bounds = new RectangleF(100, 100, 200, 100);
signature.ContactInfo = "legal@company.com";
signature.LocationInfo = "New York";
signature.Reason = "Contract Approval";
loadedDocument.Save("signed.pdf");
loadedDocument.Close(true);Imports Syncfusion.Pdf
Imports Syncfusion.Pdf.Security
Private loadedDocument As New PdfLoadedDocument("contract.pdf")
Private certificate As New PdfCertificate("certificate.pfx", "password")
Private signature As New PdfSignature(loadedDocument, loadedDocument.Pages(0), certificate, "Signature")
signature.Bounds = New RectangleF(100, 100, 200, 100)
signature.ContactInfo = "legal@company.com"
signature.LocationInfo = "New York"
signature.Reason = "Contract Approval"
loadedDocument.Save("signed.pdf")
loadedDocument.Close(True)Imports Syncfusion.Pdf
Imports Syncfusion.Pdf.Security
Private loadedDocument As New PdfLoadedDocument("contract.pdf")
Private certificate As New PdfCertificate("certificate.pfx", "password")
Private signature As New PdfSignature(loadedDocument, loadedDocument.Pages(0), certificate, "Signature")
signature.Bounds = New RectangleF(100, 100, 200, 100)
signature.ContactInfo = "legal@company.com"
signature.LocationInfo = "New York"
signature.Reason = "Contract Approval"
loadedDocument.Save("signed.pdf")
loadedDocument.Close(True)IronPDFの署名の実装は、少ない設定ステップで包括的な視覚的署名オプションを提供します。 IronPDFのデジタル署名機能について詳しく知る。
透かしとスタンプ機能の比較はどうですか?
透かし実装
IronPDFの透かし:
using IronPdf;
var pdf = PdfDocument.FromFile("document.pdf");
// HTML-based watermark with full CSS styling
pdf.ApplyWatermark(@"
<div style='
color: rgba(255, 0, 0, 0.3);
font-size: 48px;
transform: rotate(-45deg);
font-family: Arial;
'>CONFIDENTIAL</div>",
50,
VerticalAlignment.Middle,
HorizontalAlignment.Center);
pdf.SaveAs("watermarked.pdf");using IronPdf;
var pdf = PdfDocument.FromFile("document.pdf");
// HTML-based watermark with full CSS styling
pdf.ApplyWatermark(@"
<div style='
color: rgba(255, 0, 0, 0.3);
font-size: 48px;
transform: rotate(-45deg);
font-family: Arial;
'>CONFIDENTIAL</div>",
50,
VerticalAlignment.Middle,
HorizontalAlignment.Center);
pdf.SaveAs("watermarked.pdf");Imports IronPdf
Private pdf = PdfDocument.FromFile("document.pdf")
' HTML-based watermark with full CSS styling
pdf.ApplyWatermark("
<div style='
color: rgba(255, 0, 0, 0.3);
font-size: 48px;
transform: rotate(-45deg);
font-family: Arial;
'>CONFIDENTIAL</div>", 50, VerticalAlignment.Middle, HorizontalAlignment.Center)
pdf.SaveAs("watermarked.pdf")Imports IronPdf
Private pdf = PdfDocument.FromFile("document.pdf")
' HTML-based watermark with full CSS styling
pdf.ApplyWatermark("
<div style='
color: rgba(255, 0, 0, 0.3);
font-size: 48px;
transform: rotate(-45deg);
font-family: Arial;
'>CONFIDENTIAL</div>", 50, VerticalAlignment.Middle, HorizontalAlignment.Center)
pdf.SaveAs("watermarked.pdf")Syncfusionの透かし:
using Syncfusion.Pdf;
using Syncfusion.Pdf.Graphics;
PdfLoadedDocument loadedDocument = new PdfLoadedDocument("document.pdf");
PdfPageBase page = loadedDocument.Pages[0];
PdfGraphics graphics = page.Graphics;
PdfFont font = new PdfStandardFont(PdfFontFamily.Helvetica, 40);
// Set transparency
PdfGraphicsState state = graphics.Save();
graphics.SetTransparency(0.25f);
// Draw watermark text
graphics.RotateTransform(-45);
graphics.DrawString("CONFIDENTIAL", font, PdfBrushes.Red, new PointF(-150, 400));
graphics.Restore(state);
loadedDocument.Save("watermarked.pdf");
loadedDocument.Close(true);using Syncfusion.Pdf;
using Syncfusion.Pdf.Graphics;
PdfLoadedDocument loadedDocument = new PdfLoadedDocument("document.pdf");
PdfPageBase page = loadedDocument.Pages[0];
PdfGraphics graphics = page.Graphics;
PdfFont font = new PdfStandardFont(PdfFontFamily.Helvetica, 40);
// Set transparency
PdfGraphicsState state = graphics.Save();
graphics.SetTransparency(0.25f);
// Draw watermark text
graphics.RotateTransform(-45);
graphics.DrawString("CONFIDENTIAL", font, PdfBrushes.Red, new PointF(-150, 400));
graphics.Restore(state);
loadedDocument.Save("watermarked.pdf");
loadedDocument.Close(true);Imports Syncfusion.Pdf
Imports Syncfusion.Pdf.Graphics
Private loadedDocument As New PdfLoadedDocument("document.pdf")
Private page As PdfPageBase = loadedDocument.Pages(0)
Private graphics As PdfGraphics = page.Graphics
Private font As PdfFont = New PdfStandardFont(PdfFontFamily.Helvetica, 40)
' Set transparency
Private state As PdfGraphicsState = graphics.Save()
graphics.SetTransparency(0.25F)
' Draw watermark text
graphics.RotateTransform(-45)
graphics.DrawString("CONFIDENTIAL", font, PdfBrushes.Red, New PointF(-150, 400))
graphics.Restore(state)
loadedDocument.Save("watermarked.pdf")
loadedDocument.Close(True)Imports Syncfusion.Pdf
Imports Syncfusion.Pdf.Graphics
Private loadedDocument As New PdfLoadedDocument("document.pdf")
Private page As PdfPageBase = loadedDocument.Pages(0)
Private graphics As PdfGraphics = page.Graphics
Private font As PdfFont = New PdfStandardFont(PdfFontFamily.Helvetica, 40)
' Set transparency
Private state As PdfGraphicsState = graphics.Save()
graphics.SetTransparency(0.25F)
' Draw watermark text
graphics.RotateTransform(-45)
graphics.DrawString("CONFIDENTIAL", font, PdfBrushes.Red, New PointF(-150, 400))
graphics.Restore(state)
loadedDocument.Save("watermarked.pdf")
loadedDocument.Close(True)IronPDFのHTMLベースのアプローチは、複雑な透かしに対して優れた柔軟性を提供し、画像、グラデーション、および高度なタイポグラフィを含みます。 透かしの例を見る ことで、可能性の範囲を確認できます。
どちらのライブラリがファイルフォーマット変換をより良く扱いますか?
DOCXからPDF変換
ファイルフォーマットの変換は、ワークフロー効率を決定することがよくあります。 各ライブラリがDOCXからPDFへの変換をどのように扱うかを見てみましょう。
IronPDF DOCX変換:
using IronPdf;
// Direct DOCX to PDF conversion
DocxToPdfRenderer renderer = new DocxToPdfRenderer();
PdfDocument pdf = renderer.RenderDocxAsPdf("contract.docx");
pdf.SaveAs("contract.pdf");using IronPdf;
// Direct DOCX to PDF conversion
DocxToPdfRenderer renderer = new DocxToPdfRenderer();
PdfDocument pdf = renderer.RenderDocxAsPdf("contract.docx");
pdf.SaveAs("contract.pdf");Imports IronPdf
' Direct DOCX to PDF conversion
Private renderer As New DocxToPdfRenderer()
Private pdf As PdfDocument = renderer.RenderDocxAsPdf("contract.docx")
pdf.SaveAs("contract.pdf")Imports IronPdf
' Direct DOCX to PDF conversion
Private renderer As New DocxToPdfRenderer()
Private pdf As PdfDocument = renderer.RenderDocxAsPdf("contract.docx")
pdf.SaveAs("contract.pdf")Syncfusion DOCX変換:
// Syncfusion requires the additional Syncfusion.DocIO package
using Syncfusion.DocIO;
using Syncfusion.DocIO.DLS;
using Syncfusion.DocIORenderer;
using Syncfusion.Pdf;
WordDocument wordDocument = new WordDocument("contract.docx", FormatType.Docx);
DocIORenderer renderer = new DocIORenderer();
PdfDocument pdfDocument = renderer.ConvertToPDF(wordDocument);
using (FileStream stream = new FileStream("contract.pdf", FileMode.Create))
{
pdfDocument.Save(stream);
}
wordDocument.Close();
pdfDocument.Close();// Syncfusion requires the additional Syncfusion.DocIO package
using Syncfusion.DocIO;
using Syncfusion.DocIO.DLS;
using Syncfusion.DocIORenderer;
using Syncfusion.Pdf;
WordDocument wordDocument = new WordDocument("contract.docx", FormatType.Docx);
DocIORenderer renderer = new DocIORenderer();
PdfDocument pdfDocument = renderer.ConvertToPDF(wordDocument);
using (FileStream stream = new FileStream("contract.pdf", FileMode.Create))
{
pdfDocument.Save(stream);
}
wordDocument.Close();
pdfDocument.Close();' Syncfusion requires the additional Syncfusion.DocIO package
Imports Syncfusion.DocIO
Imports Syncfusion.DocIO.DLS
Imports Syncfusion.DocIORenderer
Imports Syncfusion.Pdf
Private wordDocument As New WordDocument("contract.docx", FormatType.Docx)
Private renderer As New DocIORenderer()
Private pdfDocument As PdfDocument = renderer.ConvertToPDF(wordDocument)
Using stream As New FileStream("contract.pdf", FileMode.Create)
pdfDocument.Save(stream)
End Using
wordDocument.Close()
pdfDocument.Close()' Syncfusion requires the additional Syncfusion.DocIO package
Imports Syncfusion.DocIO
Imports Syncfusion.DocIO.DLS
Imports Syncfusion.DocIORenderer
Imports Syncfusion.Pdf
Private wordDocument As New WordDocument("contract.docx", FormatType.Docx)
Private renderer As New DocIORenderer()
Private pdfDocument As PdfDocument = renderer.ConvertToPDF(wordDocument)
Using stream As New FileStream("contract.pdf", FileMode.Create)
pdfDocument.Save(stream)
End Using
wordDocument.Close()
pdfDocument.Close()IronPDFはそのコアライブラリにDOCX変換を含んでいますが、SyncfusionはDocIOコンポーネントの別途購入とインストールを必要とします。 この違いは、コストと複雑さの両方に大きく影響します。 IronPDFのDOCXからPDFへの機能について詳しく知る。
パフォーマンスメトリクスの比較はどうですか?
ライブラリの構築方法に基づくパフォーマンス特性は異なります:
レンダリングパフォーマンス
レンダリングパフォーマンスの主要な違いは、速度だけでなく質的なものです:
- シンプルなHTML: SyncfusionのWebKitエンジンは基本的なHTMLを迅速にレンダリングできますが、JavaScriptの実行と高度なCSS3サポートはありません
- JavaScriptを含む複雑なHTML: IronPDFのChromiumエンジンはJavaScriptによってレンダリングされるコンテンツを処理します; SyncfusionのWebKitエンジンはJavaScriptをまったく実行できません
- バッチ処理: IronPDFはバッチPDF生成ワークフローのための並行処理をサポートします
メモリ使用量
IronPDFのChromiumレンダリングエンジンは、Syncfusionの軽量なWebKitアプローチよりも高いベースラインメモリ要件を持ちます。 最新のウェブコンテンツの正確なレンダリングが必要なアプリケーションでは、このトレードオフは一般的に受け入れられています。 SyncfusionのBlink/CEFエンジンオプションもChromiumを使用しており、IronPDFに匹敵するメモリ特性を持ちます。
IronPDFのストリーミング機能は、大きなドキュメントの効率的な処理をサポートします。
価格モデルはどのように見えますか?
所有の全体的なコストを理解することで、情報に基づいた決定をするのに役立ちます。
IronPDFの価格設定(2025)
IronPDFは永続ライセンスを提供しており、透明で一度きりの価格設定です。
-
Lite License: $999
- 開発者1名、1ロケーション、1プロジェクト
- Eメールサポートが含まれます
-
Plus License: $1,499
- 開発者3名、3ロケーション、3プロジェクト
- Eメール、チャット、電話サポート
-
Professional License: $2,999
- 開発者10名、10ロケーション、10プロジェクト
- スクリーン共有による優先サポート
-
追加オプション:
- ロイヤリティフリー再配布: +$2,999
- 5年間のサポートとアップデート: $2,999 (または$1,499/年)
- Iron Suite: $2,998 (IronPDFを含む10製品)
Syncfusionの価格設定(2025)
Syncfusionは購読モデルを使用しており、年間費用が毎年発生します。
- Team License (5 developers): $395/month ($5,995/year)
- Team License (10 developers): $695/month ($11,990/year)
- 10人以上の開発者:別途見積もりが必要です
- Community License: 無料で個人および小規模企業向け(収入<$1M、開発者≤5、従業員≤10)
重要な考慮事項:
- 価格は年間購読であり(最低1年の契約)
- Syncfusionのすべての製品が対象であり、PDFだけではない
- サポートが含まれますが、応答時間はティアによって異なります
- 永続ライセンスオプションはありません
コスト分析例
3年以上の間にわたって3人の開発者のチームの場合:
- IronPDF: $1,499 (一度きりの永続ライセンス) + オプションの年次サポート更新
- Syncfusion: $395/月 × 36ヶ月 (最低1年間の契約、サブスクリプションは毎年更新)
IronPDFの永続ライセンスモデルは、複数年にわたって多大な費用を蓄積する定期的なサブスクリプションコストを回避します。
ドキュメントとサポートの比較はどうなっていますか?
IronPDFサポート構造
*包括的なドキュメント:詳細なチュートリアル、ハウツーガイド、 API リファレンス
- 24時間365日のエンジニアリングサポート:製品を開発した開発者に直接アクセス可能 *ビデオチュートリアル: IronPDF YouTube チャンネルのステップバイステップガイド *コミュニティフォーラム:エンジニアが参加する活発なコミュニティ *応答時間:ライセンスユーザーの場合、通常 24 時間以内
Syncfusionサポート構造
*ドキュメント:包括的だがスイート全体に広がっている *サポートシステム:チケットシステムを備えたオンラインポータル *応答時間: 24時間以内の応答を約束 *コミュニティ:フォーラムとナレッジベース *リモートサポート:チームライセンスで利用可能
According to レビューサイトでのユーザーのフィードバック、IronPDFの集中したドキュメントと直接のエンジニアリングサポートは、問題解決のスピードについて一貫して高い評価を受けています。
各ライブラリの一般的な使用例は何ですか?
IronPDFが得意なこと:
-
モダンウェブアプリケーションのPDF生成
- SaaSプラットフォームの請求書生成
- Eコマースのレシート生成
- グラフ付きの動的レポート作成
-
複雑なドキュメント処理
- 法律文書の墨消し
- 財務報告書の生成
- 医療記録の管理
-
高精度なHTML変換
- マーケティング資料の再現
- ウェブページのアーカイブ
- ニュースレターのPDF作成
IronPDFのコード例を探求 し、実装パターンを確認します。
Syncfusionがうまく機能する条件:
-
基本的なPDF操作
- シンプルなドキュメント作成
- 基本的なフォーム記入
- 標準的なPDF操作
-
統合スイートユーザー
- 既にSyncfusionのUIコンポーネントを使用しているチーム
- 複数のSyncfusionツールを必要とするプロジェクト
- 標準化された開発環境
-
予算に敏感なスタートアップ
- コミュニティライセンスの対象となる場合
- 高度な機能を必要としない基本的なPDFニーズ
ライブラリ間の移行方法は?
SyncfusionからIronPDFに切り替えを検討している場合、次の移行アプローチがあります。
基本的な移行例
Syncfusionコード:
HtmlToPdfConverter converter = new HtmlToPdfConverter();
PdfDocument document = converter.Convert(htmlContent);
document.Save(stream);
document.Close(true);HtmlToPdfConverter converter = new HtmlToPdfConverter();
PdfDocument document = converter.Convert(htmlContent);
document.Save(stream);
document.Close(true);Dim converter As New HtmlToPdfConverter()
Dim document As PdfDocument = converter.Convert(htmlContent)
document.Save(stream)
document.Close(True)Dim converter As New HtmlToPdfConverter()
Dim document As PdfDocument = converter.Convert(htmlContent)
document.Save(stream)
document.Close(True)IronPDFの同等コード:
var pdf = new ChromePdfRenderer().RenderHtmlAsPdf(htmlContent);
pdf.SaveAs(stream);var pdf = new ChromePdfRenderer().RenderHtmlAsPdf(htmlContent);
pdf.SaveAs(stream);Dim pdf = (New ChromePdfRenderer()).RenderHtmlAsPdf(htmlContent)
pdf.SaveAs(stream)Dim pdf = (New ChromePdfRenderer()).RenderHtmlAsPdf(htmlContent)
pdf.SaveAs(stream)移行の重要な考慮事項:
- APIの単純化: IronPDFのシングルクラスアプローチは通常、Syncfusionのマルチクラスコンバーターパターンよりもはるかに少ないコード行を必要とします 2.機能の同等性: Syncfusion のほとんどの機能はIronPDFと同等です 3.パフォーマンス:レンダリング精度は向上しますが、メモリ使用量は若干増加します。 4.テスト:異なるレンダリング結果になる可能性のある複雑なHTMLレイアウトに焦点を当てる
IronPDFの移行ガイドをダウンロードして、詳細な変換パターンを確認してください。
実際の開発者は何を言っていますか?
-
"Syncfusion: この部分のマージンはあまり多くなく、ヘッダーがテキストに重なっていますが、大目に見ます。"
-
"画像が読み込まれませんでした - これは問題です。"
全比較を読む ### HackerNoonの2025年分析から: * "Syncfusion: この部分のマージンはあまり多くなく、ヘッダーがテキストに重なっていますが、大目に見ます。
- IronPDFとPrinceXMLは、HTMLを正確にPDFにレンダリングする能力で際立ちます。それにより、ドキュメントがブラウザで見るとおりに見えることを保証します。* モダンな.NET(Core, 6, 7+)やクロスプラットフォームスタックでのウェブからPDFへのレンダリングのために、IronPDF, PrinceXML、またはSyncfusionを選びます。
開発者フォーラムから:
HackerNoonの2025年の分析から:
"IronPDFとPrinceXMLは、HTMLをPDFに正確にレンダリングする能力において際立っており、文書がブラウザで見るものと同じ見た目になることを保証します。"
"現代 for .NET(Core、6、7+)またはクロスプラットフォームスタックにおけるWebからPDFへのレンダリングには、IronPDF、PrinceXML、またはSyncfusionを選択してください。"
共通の開発者の観察点:
公開されているレビューに基づくSyncfusionに関する開発者からのフィードバックの一般的なテーマ:
- ライセンスの複雑さ - Syncfusionのサブスクリプションモデルと施行のプラクティスは批判を受けています; IronPDFは透明な永続ライセンスを提供します
- エコシステムのナビゲーション - Syncfusion製品群の広さから、PDF固有のドキュメントとAPIを見つけるのに時間がかかることがあります; IronPDFの焦点を絞った範囲はこれを簡素化します
- 学習の曲線 - SyncfusionのマルチクラスAPIパターンはより多くのセットアップ時間を必要とし、IronPDFの設計は生産性への移行時間を短縮します
請求書生成テスト (1000枚の請求書)
インボイス生成: 品質と速度のトレードオフ
CSS3スタイリング、動的データ、チャートを含む複雑なHTMLテンプレートでインボイスを生成する場合、2つのライブラリは異なるトレードオフを提示します:
- IronPDF: フルChromiumレンダリングによりCSS3スタイル、JavaScriptで生成されたチャート、最新のフォントが正しくレンダリングされます
- Syncfusion (WebKit): 基本的なHTMLのために高速ですが、CSS3スタイリングとJavaScriptで生成されたコンテンツは処理されず、複雑なテンプレートには手動の回避策が必要です
- Syncfusion (Blink/CEF): IronPDFに匹敵するレンダリング能力を持ちますが追加の設定が必要です
最新のウェブ標準に依存するテンプレートのために、IronPDFは後処理の回避策なしにより正確な出力を生成します。
ドキュメントセキュリティ操作
IronPDFの統一されたSecuritySettings APIは、暗号化、透かし、およびデジタル署名の操作を単一の一貫したクラスに統合し、Syncfusionの個別のセキュリティオブジェクトと比較して、API呼び出しとオブジェクトライフサイクルの数を削減します。 このアーキテクチャの違いは、コードを簡素化し、誤設定の可能性を減少させます。
正しい選択をする: 決定フレームワーク
IronPDFを選ぶとき:
- モダンウェブ標準(CSS3, JavaScript)が必要
- 購読ではなく、一度のライセンス購入の方が好ましい
- あなたはサブスクリプションよりも一回限りのライセンスを好む
- 特化された、PDFに焦点を当てたソリューションを希望
- 複雑な文書のセキュリティが必要
Syncfusionを考慮する時:
-
他のSyncfusionコンポーネントをすでに使用している
-
基本的なPDF生成がニーズを満たす
-
コミュニティライセンスの対象となる
-
購読ベースの価格設定が好ましい
-
サブスクリプションベースの価格設定を好む PDFライブラリを選択する際の重要な考慮事項は、Bootstrap, Tailwind CSS, およびFoundationのような現代のCSSフレームワークを処理する能力です。
モダンCSSフレームワークサポート
これらのフレームワークは、ほとんどの現代のウェブアプリケーションを駆動し、flexboxやCSSグリッドのようなCSS3機能に大きく依存しています。 IronPDFの現代的なChromiumレンダリングエンジンは、すべての現在のCSSフレームワークを完全にサポートしています:
IronPDF: フルBootstrapサポート
-
Bootstrap 5: レスポンシブレイアウトのための完全なflexboxとCSSグリッドサポート
-
Bootstrap 5:レスポンシブレイアウトのための完全なフレックスボックスとCSSグリッドのサポート -複雑なレイアウト: BootstrapホームページとBootstrapテンプレートをピクセルパーフェクトにレンダリングします -最新機能: CSS3 アニメーション、変換、トランジション、メディアクエリ
-
CSSフレームワーク: Bootstrap、Tailwind CSS、Foundation、Bulmaはすべてシームレスに動作します
コード例: Bootstrapコンテンツのレンダリング
using IronPdf;
// Render a Bootstrap 5 layout
var renderer = new ChromePdfRenderer();
// Example: Bootstrap dashboard with flexbox cards
string bootstrapHtml = @"
<!DOCTYPE html>
<html>
<head>
<link href='https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css' rel='stylesheet'>
</head>
<body>
<nav class='navbar navbar-expand-lg navbar-dark bg-dark'>
<div class='container-fluid'>
<a class='navbar-brand' href='#'>Dashboard</a>
</div>
</nav>
<div class='container my-5'>
<div class='row g-4'>
<div class='col-lg-3 col-md-6'>
<div class='card shadow h-100'>
<div class='card-body d-flex flex-column'>
<h5 class='card-title'>Revenue</h5>
<p class='card-text fs-2 fw-bold text-success'>$45,231</p>
<p class='text-muted mt-auto'><small>+12% from last month</small></p>
</div>
</div>
</div>
<!-- Additional cards... -->
</div>
</div>
</body>
</html>";
var pdf = renderer.RenderHtmlAsPdf(bootstrapHtml);
pdf.SaveAs("bootstrap-dashboard.pdf");using IronPdf;
// Render a Bootstrap 5 layout
var renderer = new ChromePdfRenderer();
// Example: Bootstrap dashboard with flexbox cards
string bootstrapHtml = @"
<!DOCTYPE html>
<html>
<head>
<link href='https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css' rel='stylesheet'>
</head>
<body>
<nav class='navbar navbar-expand-lg navbar-dark bg-dark'>
<div class='container-fluid'>
<a class='navbar-brand' href='#'>Dashboard</a>
</div>
</nav>
<div class='container my-5'>
<div class='row g-4'>
<div class='col-lg-3 col-md-6'>
<div class='card shadow h-100'>
<div class='card-body d-flex flex-column'>
<h5 class='card-title'>Revenue</h5>
<p class='card-text fs-2 fw-bold text-success'>$45,231</p>
<p class='text-muted mt-auto'><small>+12% from last month</small></p>
</div>
</div>
</div>
<!-- Additional cards... -->
</div>
</div>
</body>
</html>";
var pdf = renderer.RenderHtmlAsPdf(bootstrapHtml);
pdf.SaveAs("bootstrap-dashboard.pdf");Imports IronPdf
' Render a Bootstrap 5 layout
Dim renderer As New ChromePdfRenderer()
' Example: Bootstrap dashboard with flexbox cards
Dim bootstrapHtml As String = "
<!DOCTYPE html>
<html>
<head>
<link href='https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css' rel='stylesheet'>
</head>
<body>
<nav class='navbar navbar-expand-lg navbar-dark bg-dark'>
<div class='container-fluid'>
<a class='navbar-brand' href='#'>Dashboard</a>
</div>
</nav>
<div class='container my-5'>
<div class='row g-4'>
<div class='col-lg-3 col-md-6'>
<div class='card shadow h-100'>
<div class='card-body d-flex flex-column'>
<h5 class='card-title'>Revenue</h5>
<p class='card-text fs-2 fw-bold text-success'>$45,231</p>
<p class='text-muted mt-auto'><small>+12% from last month</small></p>
</div>
</div>
</div>
<!-- Additional cards... -->
</div>
</div>
</body>
</html>"
Dim pdf = renderer.RenderHtmlAsPdf(bootstrapHtml)
pdf.SaveAs("bootstrap-dashboard.pdf")Imports IronPdf
' Render a Bootstrap 5 layout
Dim renderer As New ChromePdfRenderer()
' Example: Bootstrap dashboard with flexbox cards
Dim bootstrapHtml As String = "
<!DOCTYPE html>
<html>
<head>
<link href='https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css' rel='stylesheet'>
</head>
<body>
<nav class='navbar navbar-expand-lg navbar-dark bg-dark'>
<div class='container-fluid'>
<a class='navbar-brand' href='#'>Dashboard</a>
</div>
</nav>
<div class='container my-5'>
<div class='row g-4'>
<div class='col-lg-3 col-md-6'>
<div class='card shadow h-100'>
<div class='card-body d-flex flex-column'>
<h5 class='card-title'>Revenue</h5>
<p class='card-text fs-2 fw-bold text-success'>$45,231</p>
<p class='text-muted mt-auto'><small>+12% from last month</small></p>
</div>
</div>
</div>
<!-- Additional cards... -->
</div>
</div>
</body>
</html>"
Dim pdf = renderer.RenderHtmlAsPdf(bootstrapHtml)
pdf.SaveAs("bootstrap-dashboard.pdf")Syncfusion PDFのBootstrapのサポートは、使用されるレンダリングエンジンによって異なります。
Syncfusion PDFのBootstrapサポートは、使用されるレンダリングエンジンによって異なります:
-
WebKit エンジン (レガシー):
- フレックスボックスのサポートなし - Bootstrap 4+は正しくレンダリングされません
- 限定的なCSSグリッドのサポート
- Bootstrap 3またはテーブルベースのフォールバックが必要
- 最新のウェブ標準に対するサポートが限られているレガシーエンジン
-
Blink/CEF エンジン (新しい):
- 最新のBootstrap(Chromiumベース)をサポートする必要があります
- 追加の設定が必要です
- プラットフォーム固有の設定が必要な場合があります
- 複雑なレイアウトのパフォーマンスに関する考慮が必要です
CSSフレームワークの互換性の詳細については、Bootstrap & Flexbox CSSガイドを参照してください。
結論
Syncfusion PDF ViewerとIronPDFを比較すると、HTMLをPDFに変換する際に、IronPDFはほとんどのPDF特有のユースケースで優れた選択肢として浮上します。 そのChromeベースのレンダリングエンジンは、最新のWebコンテンツに対して比類のない精度を提供し、直感的なAPI設計は開発時間を大幅に短縮します。永久ライセンスモデルは、特に小規模なチームにとって、より良い長期的な価値を提供します。
Syncfusion PDFは、すでにSyncfusionエコシステムに投資しているチームや、コミュニティライセンスに該当する基本的なPDFニーズを持つチームにとっては依然として有効です。 しかし、専用のPDF機能、最新のWeb標準のサポート、優れたHTMLからPDFへの変換を求める場合、IronPDFはより焦点を絞った強力なソリューションを提供します。
レンダリング精度、包括的な機能、透明な価格設定、迅速なサポートの組み合わせにより、IronPDFは.NETアプリケーションにおける真剣なPDF開発の推奨選択肢となります。
違いを体験する準備はできましたか? 30日間無料トライアルをお試しいただき、ご自身のプロジェクトでIronPDFの機能をお試しください。
ジェイコブ・メラーはIron Softwareの最高技術責任者(CTO)であり、C# PDFテクノロジーを開拓する先見的なエンジニアです。Iron Softwareのコアコードベースを支えるオリジナル開発者として、彼は創業以来、会社の製品アーキテクチャを形成し、CEOのCameron Rimingtonとともに、会社をNASA、Tesla、および世界的な政府機関にサービスを提供する50人以上の会社に変えました。1999年にロンドンで最初のソフトウェアビジネスを開業し、2005年に最初 for .NETコンポーネントを作成した後、Microsoftのエコシステム全体で複雑な問題を解決することを専門としました。