製品比較 IronPDF vs GemBox.Pdf: HTMLからPDFへの変換のための完全な.NET PDFライブラリ比較ガイド Jacob Mellor 更新日:2026年1月18日 IronPDF をダウンロード NuGet ダウンロード DLL ダウンロード Windows 版 無料トライアル LLM向けのコピー LLM向けのコピー LLM 用の Markdown としてページをコピーする ChatGPTで開く このページについてChatGPTに質問する ジェミニで開く このページについてGeminiに問い合わせる Grokで開く このページについてGrokに質問する 困惑の中で開く このページについてPerplexityに問い合わせる 共有する Facebook で共有 Xでシェア(Twitter) LinkedIn で共有 URLをコピー 記事をメールで送る .NETアプリケーションの開発においてPDF生成および操作を必要とする場合、適切なC# PDFライブラリを選択することがプロジェクトの成功に大きな影響を与える可能性があります。 この包括的な比較は、開発者が機能、パフォーマンス、価格、および実際の使用事例に基づいて情報に基づいた決定を下すのを助けるために、2つの著名な.NET PDFライブラリであるIronPDFとGemBox.Pdfを検討します。 クイック比較の概要 製品比較の概要 .NET開発用IronPDFとGemBox.Pdfの機能比較 カテゴリ 特徴/側面 IronPDF GemBox.Pdf 主な利点 **コア**アーキテクチャ デザイン哲学 HTMLファースト、Chromeレンダリング PDFネイティブ操作 文脈依存 APIの複雑さ `RenderHtmlAsPdf()`のような単純なメソッド。 低レベルPDFオブジェクト IronPDF: より速い開発 学習曲線 通常1~2日 通常3~5日 IronPDF: より迅速な導入 **プラットフォームサポート** クロスプラットフォーム Windows、Linux、macOS、Docker Windows、Linux、macOS、Android、iOS GemBox:モバイルサポート .NETバージョン .NET 10、9、8、7、6、5、Core 3.1 以上、Framework 4.6.2 以上 .NET 6、Standard 2.0、Framework 3.5+。 IronPDF: 最新 for .NETサポート クラウドプラットフォーム Azure/AWSの最適化 標準クラウドサポート IronPDF:クラウド対応 **HTMLからPDFへ** レンダリングエンジン フルChromeV8エンジン 組み込みのHTMLサポートなし*。 IronPDF:ネイティブHTMLからPDFへ CSS3/HTML5 サポート 完全なサポート GemBox.Documentが必要です。 IronPDF: 最新のWeb標準 JavaScriptの実行 完全なJavaScriptサポート JavaScriptサポートなし IronPDF: 動的コンテンツ レンダリング速度 ~125ms(標準 該当なし(HTMLサポートなし) IronPDF:高速レンダリング **開発者としての経験** コード例 すぐに実行できる100以上のサンプル 100以上の例文あり 両方:豊富なリソース ドキュメント チュートリアル、ハウツー、ビデオ APIドキュメント IronPDF:複数の学習パス **コンテンツ操作** PDFのマージ/分割 組み込みメソッド 組み込みメソッド 両方:標準機能 テキスト抽出 ユニコード対応、OCR統合 ユニコード対応、OCR内蔵 GemBox:内蔵OCR フォームサポート HTMLフォームからPDFフォームへ フォームの作成、入力、フラット化 文脈依存 **パフォーマンス指標** メモリ使用量 標準10MB以下 低メモリーフットプリント 両方:効率的 スレッドサポート ネイティブのasync/awaitを最適化 スレッドセーフな操作 IronPDF:より良い非同期サポート **Security & Encryption** 暗号化レベル AES-256、カスタムハンドラー AES-256標準 両方:業界標準 デジタル署名 統合された視覚的シグネチャ デジタル署名のサポート 両方:署名サポート **Licensing & Pricing** エントリーレベル Lite: $799 (1 dev, 1 project) シングル開発者: $890 (開発者1名、プロジェクト数無制限) IronPDF:より低いエントリーコスト 再配布 +1,999ドル ロイヤリティフリー デプロイ回数無制限 GemBox:より良いデプロイメント用語 スイートオプション Iron Suite: $1,498 (9 products) GemBox バンドル: $2,200 (7 製品) IronPDF:より良いスイートバリュー **サポート** サポートが含まれています はい、24時間365日のエンジニアリングサポート はい、1年間のプロフェッショナルサポート 両方:良好なサポート 納期 通常24~48時間 1営業日以内 両方:迅速な対応 **最適**な対象 使用例 HTMLからPDF、ウェブアプリ、レポート PDF操作、フォーム、OCR 文脈依存 *注意* GemBox.Pdf は PDF 操作に重点を置いており、HTML 変換には GemBox.Document が必要です。IronPdfはフルブラウザレンダリングでネイティブHTMLからPDFへの変換を提供します。 *GemBoxでHTMLをサポートするには、追加製品の購入が必要です。 ご注意GemBox.Pdf では、HTML から PDF への変換に別途 GemBox.Document ライブラリ (追加料金 $890) が必要です。 IronPDFライブラリとは何ですか? IronPDFは、HTMLからPDFへの変換を開発者が簡単に行えるように設計された包括的な.NET PDFライブラリです。 Chromeレンダリングエンジンをコアに持ち、IronPDFはC#、F#、VB.NETアプリケーションにおけるPDF生成のアプローチを変革します。 ライブラリの哲学は、既存のウェブ開発スキルを活用することに重点を置いています。 複雑なPDF APIを学ぶ代わりに、開発者は馴染みのあるHTML、CSS、JavaScriptを使って洗練されたPDF文書を作成できます。 このアプローチは、現代のウェブ標準に準拠したピクセルパーフェクトなレンダリングを実現しながら、開発時間を大幅に短縮します。 IronPDFのコア機能 IronPDFは、開発者が遭遇する可能性のあるあらゆるPDF関連タスクを網羅する広範な機能セットを提供します。 IronPDFの際立った機能は、HTMLコンテンツをPDFに変換する際の卓越した精度です。 Chrome V8 エンジン: Google Chrome と同じエンジンを使用して HTML をレンダリングし、98% 以上のブラウザ忠実度を保証します。 -完全なCSS3/HTML5サポート:フレックスボックス、グリッド、アニメーションなどの最新のWeb標準を完全にサポート JavaScript実行:レンダリング前にJavaScriptを処理し、動的コンテンツを完全にキャプチャします -レスポンシブデザイン:カスタマイズ可能なビューポート設定でレスポンシブレイアウトを処理 Webフォントのサポート: Google Fonts、カスタムフォント、アイコンフォントを正確にレンダリングします 高度なPDF操作 PDFの結合と分割:シンプルなメソッド呼び出しで複数のPDFを結合したり、特定のページを抽出したりできます -デジタル署名:証明書サポートによる暗号署名の適用 -フォーム管理: HTMLから入力可能なフォームを作成したり、既存のPDFフォームを操作したりします -透かしとスタンプ:透明度コントロールを使用してテキストまたは画像の透かしを追加します -ヘッダーとフッター:ページ番号付きの動的なヘッダー/フッター セキュリティとコンプライアンス -暗号化:カスタム権限設定によるAES-256暗号化 PDF/A準拠:長期保存に適したアーカイブ品質のPDFを生成 -編集:センシティブなコンテンツを永久に削除します -パスワード保護:きめ細かな権限設定によるユーザーと所有者のパスワードサポート IronPDFのコード例:高度な機能を持つHTMLからPDF using IronPdf; using IronPdf.Rendering; // Configure the Chrome renderer with advanced options var renderer = new ChromePdfRenderer { RenderingOptions = new ChromePdfRenderOptions { // Set paper orientation and size PaperOrientation = PdfPaperOrientation.Portrait, PaperSize = PdfPaperSize.A4, // Configure margins (in millimeters) MarginTop = 25, MarginBottom = 25, MarginLeft = 20, MarginRight = 20, // Enable JavaScript execution EnableJavaScript = true, RenderDelay = 1000, // Wait 1 second for JS to complete // Print background colors and images PrintHtmlBackgrounds = true, // Create PDF forms from HTML form elements CreatePdfFormsFromHtml = true, // Custom header and footer HtmlHeader = new HtmlHeaderFooter { Height = 20, HtmlFragment = "<div style='text-align: center; font-size: 12px;'>Company Report - {page} of {total-pages}</div>", DrawDividerLine = true }, HtmlFooter = new HtmlHeaderFooter { Height = 15, HtmlFragment = "<div style='text-align: center; font-size: 10px;'>© 2025 Company Name. Confidential.</div>" } } }; // Convert complex HTML with CSS and JavaScript string htmlContent = @" <!DOCTYPE html> <html> <head> <style> body { font-family: 'Segoe UI', Arial, sans-serif; line-height: 1.6; } .invoice-header { background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: white; padding: 30px; border-radius: 10px; margin-bottom: 30px; } .data-table { width: 100%; border-collapse: collapse; margin-top: 20px; } .data-table th { background-color: #f8f9fa; padding: 12px; text-align: left; border-bottom: 2px solid #dee2e6; } .data-table td { padding: 10px; border-bottom: 1px solid #dee2e6; } .total-section { margin-top: 30px; text-align: right; font-size: 18px; font-weight: bold; } @media print { .no-print { display: none; } } </style> </head> <body> <div class='invoice-header'> <h1>Invoice #INV-2025-001</h1> <p>Date: <span id='current-date'></span></p> </div> <table class='data-table'> <thead> <tr> <th>Item Description</th> <th>Quantity</th> <th>Unit Price</th> <th>Total</th> </tr> </thead> <tbody> <tr> <td>Professional PDF Library License</td> <td>1</td> <td>$799.00</td> <td>$799.00</td> </tr> <tr> <td>Priority Support (1 Year)</td> <td>1</td> <td>$299.00</td> <td>$299.00</td> </tr> </tbody> </table> <div class='total-section'> <p>Subtotal: $1,048.00</p> <p>Tax (8%): $83.84</p> <p style='color: #667eea; font-size: 24px;'>Total: $1,131.84</p> </div> <script> // Dynamic date insertion document.getElementById('current-date').textContent = new Date().toLocaleDateString('en-US', { year: 'numeric', month: 'long', day: 'numeric' }); </script> </body> </html>"; // Render the HTML to PDF PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlContent); // Apply additional security settings pdf.SecuritySettings.OwnerPassword = "admin123"; pdf.SecuritySettings.UserPassword = "user123"; pdf.SecuritySettings.AllowUserPrinting = PdfPrintSecurity.NoPrint; pdf.SecuritySettings.AllowUserCopyPasteContent = false; pdf.SecuritySettings.AllowUserAnnotations = false; pdf.SecuritySettings.AllowUserFormData = true; // Add metadata pdf.MetaData.Author = "Invoice System"; pdf.MetaData.Title = "Invoice INV-2025-001"; pdf.MetaData.Subject = "Customer Invoice"; pdf.MetaData.Keywords = "invoice, payment, 2025"; pdf.MetaData.CreationDate = DateTime.Now; // Save the PDF pdf.SaveAs("invoice-2025-001.pdf"); // Optional: Save as PDF/A for archival pdf.SaveAsPdfA("invoice-2025-001-archive.pdf", PdfAVersions.PdfA3); using IronPdf; using IronPdf.Rendering; // Configure the Chrome renderer with advanced options var renderer = new ChromePdfRenderer { RenderingOptions = new ChromePdfRenderOptions { // Set paper orientation and size PaperOrientation = PdfPaperOrientation.Portrait, PaperSize = PdfPaperSize.A4, // Configure margins (in millimeters) MarginTop = 25, MarginBottom = 25, MarginLeft = 20, MarginRight = 20, // Enable JavaScript execution EnableJavaScript = true, RenderDelay = 1000, // Wait 1 second for JS to complete // Print background colors and images PrintHtmlBackgrounds = true, // Create PDF forms from HTML form elements CreatePdfFormsFromHtml = true, // Custom header and footer HtmlHeader = new HtmlHeaderFooter { Height = 20, HtmlFragment = "<div style='text-align: center; font-size: 12px;'>Company Report - {page} of {total-pages}</div>", DrawDividerLine = true }, HtmlFooter = new HtmlHeaderFooter { Height = 15, HtmlFragment = "<div style='text-align: center; font-size: 10px;'>© 2025 Company Name. Confidential.</div>" } } }; // Convert complex HTML with CSS and JavaScript string htmlContent = @" <!DOCTYPE html> <html> <head> <style> body { font-family: 'Segoe UI', Arial, sans-serif; line-height: 1.6; } .invoice-header { background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: white; padding: 30px; border-radius: 10px; margin-bottom: 30px; } .data-table { width: 100%; border-collapse: collapse; margin-top: 20px; } .data-table th { background-color: #f8f9fa; padding: 12px; text-align: left; border-bottom: 2px solid #dee2e6; } .data-table td { padding: 10px; border-bottom: 1px solid #dee2e6; } .total-section { margin-top: 30px; text-align: right; font-size: 18px; font-weight: bold; } @media print { .no-print { display: none; } } </style> </head> <body> <div class='invoice-header'> <h1>Invoice #INV-2025-001</h1> <p>Date: <span id='current-date'></span></p> </div> <table class='data-table'> <thead> <tr> <th>Item Description</th> <th>Quantity</th> <th>Unit Price</th> <th>Total</th> </tr> </thead> <tbody> <tr> <td>Professional PDF Library License</td> <td>1</td> <td>$799.00</td> <td>$799.00</td> </tr> <tr> <td>Priority Support (1 Year)</td> <td>1</td> <td>$299.00</td> <td>$299.00</td> </tr> </tbody> </table> <div class='total-section'> <p>Subtotal: $1,048.00</p> <p>Tax (8%): $83.84</p> <p style='color: #667eea; font-size: 24px;'>Total: $1,131.84</p> </div> <script> // Dynamic date insertion document.getElementById('current-date').textContent = new Date().toLocaleDateString('en-US', { year: 'numeric', month: 'long', day: 'numeric' }); </script> </body> </html>"; // Render the HTML to PDF PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlContent); // Apply additional security settings pdf.SecuritySettings.OwnerPassword = "admin123"; pdf.SecuritySettings.UserPassword = "user123"; pdf.SecuritySettings.AllowUserPrinting = PdfPrintSecurity.NoPrint; pdf.SecuritySettings.AllowUserCopyPasteContent = false; pdf.SecuritySettings.AllowUserAnnotations = false; pdf.SecuritySettings.AllowUserFormData = true; // Add metadata pdf.MetaData.Author = "Invoice System"; pdf.MetaData.Title = "Invoice INV-2025-001"; pdf.MetaData.Subject = "Customer Invoice"; pdf.MetaData.Keywords = "invoice, payment, 2025"; pdf.MetaData.CreationDate = DateTime.Now; // Save the PDF pdf.SaveAs("invoice-2025-001.pdf"); // Optional: Save as PDF/A for archival pdf.SaveAsPdfA("invoice-2025-001-archive.pdf", PdfAVersions.PdfA3); $vbLabelText $csharpLabel この例は、グラデーション、テーブル、動的なJavaScriptコンテンツ、およびセキュリティ設定やメタデータなどの高度なPDF機能を備えた複雑なHTMLレイアウトをIronPDFがどのように処理できるかを示しています。 ライブラリは、HTMLデザインに正確に一致するプロフェッショナルなPDFをシームレスに生成します。 GemBox.Pdfライブラリとは何ですか? GemBox.Pdfは、.NETにおけるPDF操作に対する異なるアプローチを表しています。 HTML to PDF変換に焦点を当てるのではなく、GemBox.Pdfは低レベルのPDF操作および直接的なPDF操作を専門としています。 これにより、開発者がPDFの構造やコンテンツに正確な制御を必要とするシナリオで特に適しています。 このライブラリは、既存のPDF文書を扱うのに優れており、PDFファイルを詳細に読み取り、編集し、操作するための堅牢な機能を提供します。 GemBox.PdfはAdobe Acrobatに依存しないため、さまざまな環境でのデプロイメントが簡単です。 GemBox.Pdfのコア機能 GemBox.Pdfは包括的なPDF操作機能を提供します。 PDF文書操作 PDFの読み書き: PDFの構造とコンテンツに直接アクセス -結合と分割:複数のPDFを結合したり、特定のページを抽出したりできます -ページの複製:異なるPDF文書間でページをインポートします -ページ管理:プログラムでページを追加、削除、または並べ替える コンテンツ抽出と操作 -テキスト抽出:位置情報を含むUnicodeテキストを抽出します -画像抽出: PDF文書から埋め込まれた画像を取得します OCRサポート:スキャンした文書の光学文字認識機能を内蔵 -コンテンツの削除:機密情報を永久に削除 フォームとインタラクティビティ -インタラクティブフォーム: PDFフォームの作成、入力、フラット化、エクスポート -フォームフィールド管理:すべてのフォームフィールドタイプへのプログラムによるアクセス -注釈:ハイパーリンクやその他のPDF注釈を追加します グラフィックとビジュアル要素 -描画操作:テキスト、画像、ベクターグラフィックを追加します -シェイプとパス:複雑なベクター描画を作成する -透かし:テキストや画像の透かしを適用します -コンテンツグループ:コンテンツを論理的なグループに整理します GemBox.Pdfのコード例:PDF操作とフォーム using GemBox.Pdf; using GemBox.Pdf.Content; using GemBox.Pdf.Forms; using GemBox.Pdf.Security; // Set license (use FREE-LIMITED-KEY for evaluation) ComponentInfo.SetLicense("FREE-LIMITED-KEY"); // Create a new PDF document from scratch using (var document = new PdfDocument()) { // Add a page with custom size var page = document.Pages.Add(); // Create formatted text with multiple styles using (var formattedText = new PdfFormattedText()) { formattedText.FontSize = 24; formattedText.FontFamily = new PdfFontFamily("Arial"); formattedText.Color = PdfColor.FromRgb(0.2, 0.2, 0.6); formattedText.AppendLine("GemBox.Pdf Document Example"); formattedText.FontSize = 12; formattedText.Color = PdfColor.FromRgb(0, 0, 0); formattedText.AppendLine("This document demonstrates PDF creation and manipulation features."); // Draw text to the page page.Content.DrawText(formattedText, new PdfPoint(50, 700)); } // Add a form to the document var form = document.Form; // Create text field var textField = form.Fields.AddText(page, 50, 600, 200, 30); textField.Name = "CustomerName"; textField.Value = "Enter your name"; textField.Format.Fill.Color = PdfColor.FromRgb(0.95, 0.95, 0.95); // Create checkbox var checkBox = form.Fields.AddCheck(page, 50, 550, 20, 20); checkBox.Name = "Agreement"; checkBox.Checked = false; // Add descriptive text next to checkbox using (var checkboxLabel = new PdfFormattedText()) { checkboxLabel.Append("I agree to the terms and conditions"); page.Content.DrawText(checkboxLabel, new PdfPoint(80, 555)); } // Create submit button var submitButton = form.Fields.AddButton(page, 50, 500, 100, 30); submitButton.Name = "Submit"; submitButton.Actions.Activate = PdfActionType.Named; // Add button appearance using (var buttonText = new PdfFormattedText()) { buttonText.Append("Submit Form"); buttonText.FontSize = 14; buttonText.Color = PdfColor.FromRgb(1, 1, 1); // Create button appearance stream var appearance = submitButton.Appearance.Normal; appearance.Fill.Color = PdfColor.FromRgb(0.2, 0.4, 0.8); appearance.Stroke.Color = PdfColor.FromRgb(0.1, 0.2, 0.4); appearance.Stroke.Width = 1; // Draw button background appearance.DrawRectangle(new PdfPoint(0, 0), new PdfSize(100, 30), true, true); // Draw button text appearance.DrawText(buttonText, new PdfPoint(20, 10)); } // Add a table using low-level graphics var tableTop = 400; var tableLeft = 50; var cellWidth = 150; var cellHeight = 30; // Draw table headers page.Content.DrawRectangle(new PdfPoint(tableLeft, tableTop), new PdfSize(cellWidth * 3, cellHeight), true, true); using (var headerText = new PdfFormattedText()) { headerText.FontSize = 12; headerText.Color = PdfColor.FromRgb(1, 1, 1); headerText.Append("Product"); page.Content.DrawText(headerText, new PdfPoint(tableLeft + 10, tableTop + 10)); headerText.Clear(); headerText.Append("Quantity"); page.Content.DrawText(headerText, new PdfPoint(tableLeft + cellWidth + 10, tableTop + 10)); headerText.Clear(); headerText.Append("Price"); page.Content.DrawText(headerText, new PdfPoint(tableLeft + cellWidth * 2 + 10, tableTop + 10)); } // Draw table data rows var rowData = new[] { new { Product = "PDF Library", Quantity = "1", Price = "$890" }, new { Product = "Support Plan", Quantity = "1", Price = "$299" }, new { Product = "Training", Quantity = "2", Price = "$500" } }; var currentY = tableTop - cellHeight; foreach (var row in rowData) { // Draw cell borders page.Content.DrawRectangle(new PdfPoint(tableLeft, currentY), new PdfSize(cellWidth, cellHeight), false, true); page.Content.DrawRectangle(new PdfPoint(tableLeft + cellWidth, currentY), new PdfSize(cellWidth, cellHeight), false, true); page.Content.DrawRectangle(new PdfPoint(tableLeft + cellWidth * 2, currentY), new PdfSize(cellWidth, cellHeight), false, true); // Draw cell content using (var cellText = new PdfFormattedText()) { cellText.FontSize = 11; cellText.Append(row.Product); page.Content.DrawText(cellText, new PdfPoint(tableLeft + 10, currentY + 10)); cellText.Clear(); cellText.Append(row.Quantity); page.Content.DrawText(cellText, new PdfPoint(tableLeft + cellWidth + 10, currentY + 10)); cellText.Clear(); cellText.Append(row.Price); page.Content.DrawText(cellText, new PdfPoint(tableLeft + cellWidth * 2 + 10, currentY + 10)); } currentY -= cellHeight; } // Apply security settings var securitySettings = document.SecuritySettings; securitySettings.DocumentOpenPassword = "user123"; securitySettings.PermissionsPassword = "owner123"; securitySettings.Permissions = PdfPermissions.AllowPrint | PdfPermissions.AllowFormFill; // Save the document document.Save("gembox-example.pdf"); } // Example: Manipulating existing PDF using (var existingDoc = PdfDocument.Load("existing-document.pdf")) { // Extract text from first page var page = existingDoc.Pages[0]; var text = page.Content.GetText(); Console.WriteLine($"Extracted text: {text}"); // Add watermark to all pages foreach (var p in existingDoc.Pages) { using (var watermark = new PdfFormattedText()) { watermark.Append("CONFIDENTIAL"); watermark.FontSize = 50; watermark.Color = PdfColor.FromRgb(0.5, 0.5, 0.5); watermark.Opacity = 0.3; // Calculate center position var pageWidth = p.MediaBox.Width; var pageHeight = p.MediaBox.Height; var textWidth = watermark.Width; var textHeight = watermark.Height; var x = (pageWidth - textWidth) / 2; var y = (pageHeight - textHeight) / 2; // Draw watermark diagonally p.Content.SaveGraphicsState(); p.Content.SetTransform(1, 0, 0, 1, x, y); p.Content.SetTransform(0.7071, 0.7071, -0.7071, 0.7071, 0, 0); p.Content.DrawText(watermark, new PdfPoint(0, 0)); p.Content.RestoreGraphicsState(); } } existingDoc.Save("watermarked-document.pdf"); } using GemBox.Pdf; using GemBox.Pdf.Content; using GemBox.Pdf.Forms; using GemBox.Pdf.Security; // Set license (use FREE-LIMITED-KEY for evaluation) ComponentInfo.SetLicense("FREE-LIMITED-KEY"); // Create a new PDF document from scratch using (var document = new PdfDocument()) { // Add a page with custom size var page = document.Pages.Add(); // Create formatted text with multiple styles using (var formattedText = new PdfFormattedText()) { formattedText.FontSize = 24; formattedText.FontFamily = new PdfFontFamily("Arial"); formattedText.Color = PdfColor.FromRgb(0.2, 0.2, 0.6); formattedText.AppendLine("GemBox.Pdf Document Example"); formattedText.FontSize = 12; formattedText.Color = PdfColor.FromRgb(0, 0, 0); formattedText.AppendLine("This document demonstrates PDF creation and manipulation features."); // Draw text to the page page.Content.DrawText(formattedText, new PdfPoint(50, 700)); } // Add a form to the document var form = document.Form; // Create text field var textField = form.Fields.AddText(page, 50, 600, 200, 30); textField.Name = "CustomerName"; textField.Value = "Enter your name"; textField.Format.Fill.Color = PdfColor.FromRgb(0.95, 0.95, 0.95); // Create checkbox var checkBox = form.Fields.AddCheck(page, 50, 550, 20, 20); checkBox.Name = "Agreement"; checkBox.Checked = false; // Add descriptive text next to checkbox using (var checkboxLabel = new PdfFormattedText()) { checkboxLabel.Append("I agree to the terms and conditions"); page.Content.DrawText(checkboxLabel, new PdfPoint(80, 555)); } // Create submit button var submitButton = form.Fields.AddButton(page, 50, 500, 100, 30); submitButton.Name = "Submit"; submitButton.Actions.Activate = PdfActionType.Named; // Add button appearance using (var buttonText = new PdfFormattedText()) { buttonText.Append("Submit Form"); buttonText.FontSize = 14; buttonText.Color = PdfColor.FromRgb(1, 1, 1); // Create button appearance stream var appearance = submitButton.Appearance.Normal; appearance.Fill.Color = PdfColor.FromRgb(0.2, 0.4, 0.8); appearance.Stroke.Color = PdfColor.FromRgb(0.1, 0.2, 0.4); appearance.Stroke.Width = 1; // Draw button background appearance.DrawRectangle(new PdfPoint(0, 0), new PdfSize(100, 30), true, true); // Draw button text appearance.DrawText(buttonText, new PdfPoint(20, 10)); } // Add a table using low-level graphics var tableTop = 400; var tableLeft = 50; var cellWidth = 150; var cellHeight = 30; // Draw table headers page.Content.DrawRectangle(new PdfPoint(tableLeft, tableTop), new PdfSize(cellWidth * 3, cellHeight), true, true); using (var headerText = new PdfFormattedText()) { headerText.FontSize = 12; headerText.Color = PdfColor.FromRgb(1, 1, 1); headerText.Append("Product"); page.Content.DrawText(headerText, new PdfPoint(tableLeft + 10, tableTop + 10)); headerText.Clear(); headerText.Append("Quantity"); page.Content.DrawText(headerText, new PdfPoint(tableLeft + cellWidth + 10, tableTop + 10)); headerText.Clear(); headerText.Append("Price"); page.Content.DrawText(headerText, new PdfPoint(tableLeft + cellWidth * 2 + 10, tableTop + 10)); } // Draw table data rows var rowData = new[] { new { Product = "PDF Library", Quantity = "1", Price = "$890" }, new { Product = "Support Plan", Quantity = "1", Price = "$299" }, new { Product = "Training", Quantity = "2", Price = "$500" } }; var currentY = tableTop - cellHeight; foreach (var row in rowData) { // Draw cell borders page.Content.DrawRectangle(new PdfPoint(tableLeft, currentY), new PdfSize(cellWidth, cellHeight), false, true); page.Content.DrawRectangle(new PdfPoint(tableLeft + cellWidth, currentY), new PdfSize(cellWidth, cellHeight), false, true); page.Content.DrawRectangle(new PdfPoint(tableLeft + cellWidth * 2, currentY), new PdfSize(cellWidth, cellHeight), false, true); // Draw cell content using (var cellText = new PdfFormattedText()) { cellText.FontSize = 11; cellText.Append(row.Product); page.Content.DrawText(cellText, new PdfPoint(tableLeft + 10, currentY + 10)); cellText.Clear(); cellText.Append(row.Quantity); page.Content.DrawText(cellText, new PdfPoint(tableLeft + cellWidth + 10, currentY + 10)); cellText.Clear(); cellText.Append(row.Price); page.Content.DrawText(cellText, new PdfPoint(tableLeft + cellWidth * 2 + 10, currentY + 10)); } currentY -= cellHeight; } // Apply security settings var securitySettings = document.SecuritySettings; securitySettings.DocumentOpenPassword = "user123"; securitySettings.PermissionsPassword = "owner123"; securitySettings.Permissions = PdfPermissions.AllowPrint | PdfPermissions.AllowFormFill; // Save the document document.Save("gembox-example.pdf"); } // Example: Manipulating existing PDF using (var existingDoc = PdfDocument.Load("existing-document.pdf")) { // Extract text from first page var page = existingDoc.Pages[0]; var text = page.Content.GetText(); Console.WriteLine($"Extracted text: {text}"); // Add watermark to all pages foreach (var p in existingDoc.Pages) { using (var watermark = new PdfFormattedText()) { watermark.Append("CONFIDENTIAL"); watermark.FontSize = 50; watermark.Color = PdfColor.FromRgb(0.5, 0.5, 0.5); watermark.Opacity = 0.3; // Calculate center position var pageWidth = p.MediaBox.Width; var pageHeight = p.MediaBox.Height; var textWidth = watermark.Width; var textHeight = watermark.Height; var x = (pageWidth - textWidth) / 2; var y = (pageHeight - textHeight) / 2; // Draw watermark diagonally p.Content.SaveGraphicsState(); p.Content.SetTransform(1, 0, 0, 1, x, y); p.Content.SetTransform(0.7071, 0.7071, -0.7071, 0.7071, 0, 0); p.Content.DrawText(watermark, new PdfPoint(0, 0)); p.Content.RestoreGraphicsState(); } } existingDoc.Save("watermarked-document.pdf"); } $vbLabelText $csharpLabel この例は、GemBox.Pdfの低レベルPDF操作の強みを強調しており、フォーム作成、グラフィックス描画、および文書のセキュリティ機能を示しています。 コードはIronPDFのHTMLアプローチよりも冗長ですが、PDFのあらゆる側面を精密に制御できます。 これらのライブラリのHTMLからPDFへの変換の対応方法 HTMLからPDFへの変換のアプローチは、IronPDFとGemBox.Pdfの間の最も重要な違いの一つです。 IronPDFのHTML to PDFアプローチ IronPDFはHTMLからPDFへの変換を主な焦点としてゼロから開発されました。 ライブラリには、HTML、CSS、およびJavaScriptをウェブブラウザと同様に処理するフルChromeレンダリングエンジンが含まれています。 これにより、以下が実現されます。 -真のブラウザレンダリング: Google Chromeと同じBlinkエンジンを使用 -完全なWeb標準: CSS3、HTML5、フレックスボックス、グリッド、最新 for JavaScriptを完全にサポート -動的コンテンツ:レンダリング前にJavaScriptを実行し、AJAXコンテンツと動的要素をキャプチャします。 -レスポンシブデザイン:メディアクエリとレスポンシブレイアウトを処理 -外部リソース: URLから画像、スタイルシート、フォントを自動的に取得します GemBoxの限定的なHTMLサポート GemBox.Pdf自体はHTMLからPDFへの変換をサポートしていません。 GemBoxでHTMLをPDFに変換するには、開発者は以下を行う必要があります。 別途GemBox.Documentを購入する(追加$890) GemBox.Documentを使用してHTMLをDOCXに変換する 次にDOCXをPDFに変換する このアプローチには重大な制約があります。 JavaScriptがサポートされていないため、動的なコンテンツを処理できません CSSサポートの制限:多くの最新のCSS機能はサポートされていません -スタイルの問題: Stack Overflow のディスカッションで指摘されているように、境界線や複雑なレイアウトに関する既知の問題 -印刷最適化のみ:印刷用に特別にフォーマットされたHTMLが必要です -追加費用: 2つの別々のライブラリを購入する必要があります モダンCSSフレームワークサポート:重要な違い Bootstrap、Tailwind CSS、FoundationなどのモダンなCSSフレームワークとの作業時に、IronPDFのChromeベースのレンダリングが最も際立つ利点の一つになります。 これらのフレームワークは現代のウェブアプリケーションの基盤となっており、PDFでの正確なレンダリングが多くのユースケースで必要不可欠です。 IronPDF: モダンなフレームワークの完全サポート IronPDFのChromeレンダリングエンジンは、すべてのモダンなCSSフレームワークを完全にネイティブでサポートしています。 Bootstrap 5:レスポンシブレイアウトのための完全なフレックスボックスとCSSグリッドのサポート Tailwind CSS:完全なユーティリティファーストの CSS フレームワークのサポート -実世界の例: BootstrapホームページとBootstrapテンプレートをピクセルパーフェクトにレンダリングします -最新のCSS3機能:アニメーション、変形、トランジション、カスタムプロパティ -レスポンシブデザイン:メディアクエリとビューポートベースのレイアウトがシームレスに機能します コード例: Bootstrap形式からPDFへ using IronPdf; var renderer = new ChromePdfRenderer(); string bootstrapForm = @" <!DOCTYPE html> <html> <head> <link href='https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css' rel='stylesheet'> </head> <body> <div class='container mt-5'> <h1 class='mb-4'>Customer Registration</h1> <form class='needs-validation'> <div class='row g-3'> <div class='col-md-6'> <label class='form-label'>First Name</label> <input type='text' class='form-control' value='John'> </div> <div class='col-md-6'> <label class='form-label'>Last Name</label> <input type='text' class='form-control' value='Smith'> </div> </div> <div class='mt-4'> <button class='btn btn-primary' type='submit'>Submit</button> </div> </form> </div> </body> </html>"; var pdf = renderer.RenderHtmlAsPdf(bootstrapForm); pdf.SaveAs("bootstrap-form.pdf"); using IronPdf; var renderer = new ChromePdfRenderer(); string bootstrapForm = @" <!DOCTYPE html> <html> <head> <link href='https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css' rel='stylesheet'> </head> <body> <div class='container mt-5'> <h1 class='mb-4'>Customer Registration</h1> <form class='needs-validation'> <div class='row g-3'> <div class='col-md-6'> <label class='form-label'>First Name</label> <input type='text' class='form-control' value='John'> </div> <div class='col-md-6'> <label class='form-label'>Last Name</label> <input type='text' class='form-control' value='Smith'> </div> </div> <div class='mt-4'> <button class='btn btn-primary' type='submit'>Submit</button> </div> </form> </div> </body> </html>"; var pdf = renderer.RenderHtmlAsPdf(bootstrapForm); pdf.SaveAs("bootstrap-form.pdf"); $vbLabelText $csharpLabel GemBox: モダンなフレームワークのサポートなし GemBox.PdfはネイティブHTMLレンダリングを欠き、HTML変換にGemBox.Documentに依存しなければならないため、モダンなCSSフレームワークには厳しい制約があります。 Bootstrap のサポートなし: Flexbox と CSS グリッド機能が正しくレンダリングされません Tailwind CSS なし:ユーティリティ クラスとモダン レイアウトはサポートされていません -手動の回避策が必要:印刷に最適化されたHTMLバージョンを作成する必要があります -制限されたCSS3:多くの最新のCSS機能は動作しません -さらなる複雑さ: 2段階の変換プロセス (HTML → DOCX → PDF) により不整合が生じる 開発者間の議論によると、境界やレイアウトなどの基本的なCSS機能でも、GemBoxのHTML変換アプローチでは問題になる可能性があります。 実際の影響:アプリケーションの UI に Bootstrap を使用しており、Web インターフェイスに一致する PDF レポートまたはエクスポートを生成する必要がある場合、 IronPDF は簡単なソリューションを提供しますが、GemBox では大幅な再設計または手動による回避策が必要になります。 CSSフレームワークの互換性の詳細については、Bootstrap & Flexbox CSSガイドを参照してください。 どちらのライブラリが異なるPDFタスクで優れているか? 各ライブラリがどの点で優れているかを把握することは、特定のニーズに最適なツールを選ぶのに役立ちます。 IronPDFが優れている点 IronPDFは、以下のシナリオで優れたパフォーマンスを示します。 1. ウェブアプリケーションのPDF生成 SaaSアプリケーション、ウェブポータル、およびウェブコンテンツをPDFに変換する必要があるシステムに最適です。 Chromeレンダリングエンジンにより、Bootstrap、Tailwind CSS、カスタムフレームワークを使用する複雑なウェブレイアウトが完璧にレンダリングされます。 2. 動的レポート生成 レポートにチャート(Chart.js, D3.js)、動的データビジュアライゼーション、またはJavaScriptでレンダリングされたコンテンツが含まれる場合、IronPDFはすべてを正確にキャプチャします。 これにより、ビジネスインテリジェンスダッシュボードやデータ駆動アプリケーションに最適です。 3. 請求書と文書テンプレート 請求書、領収書、ビジネス文書のためのHTML/CSSテンプレートの使用により、デザイナーはPDF固有のAPIを学ばずにテンプレートを作成できます。変更は馴染みのあるウェブ技術を使用して迅速に行うことができます。 4. 迅速な開発プロジェクト 単純なAPIとHTMLベースのアプローチにより、開発時間が大幅に短縮されます。開発者は、複雑なPDFを数分で作成できます。 5. クロスプラットフォームデプロイメント Windows、Linux、macOS、Docker, およびクラウドプラットフォームへのネイティブサポートにより、IronPDFは多様な環境でのデプロイメントを簡素化します。 GemBox.Pdfが優れている点 GemBox.Pdfは、以下の領域でその強みを示します。 1. 低レベルのPDF操作 PDF構造を精密に制御する必要がある場合、GemBox.Pdfのオブジェクト指向アプローチは、PDF要素、ストリーム、ディクショナリへの直接アクセスを提供します。 2. フォームが多いアプリケーション PDFフォームを多用するアプリケーションにおいて、GemBox.Pdfは複雑なインタラクティブフォームをプログラムで操作するための包括的なフォームフィールド操作を提供します。 3. OCRの要件 内蔵OCR機能により、GemBox.Pdfは追加のライブラリなしでスキャンされた文書のテキストを抽出することができ、文書のデジタル化プロジェクトに適しています。 4. モバイル開発 AndroidおよびiOSプラットフォームのネイティブサポートにより、PDF機能が必要なモバイルアプリケーションに適しています。 5. 既存のPDFの修正 新しいPDFを生成するのではなく、主に既存のPDFで作業する場合、GemBox.Pdfは抽出、操作、および修正に適したツールを提供します。 インストールとセットアップの比較 両方のライブラリはNuGetを通じた簡単なインストールを提供していますが、複雑さのレベルが異なります。 IronPDFのインストール IronPDFのインストールは非常に簡単です: Install-Package IronPdf または.NET CLI経由で: dotnet add package IronPdf パッケージには、必要なすべてのものが含まれており、Chromeレンダリングエンジンも含まれています。ほとんどのユースケースにおいて追加の構成や依存関係は必要ありません。 特定のデプロイメントシナリオ用に、IronPDFは以下を提供しています: IronPdf.Slim:実行時にプラットフォーム固有のコンポーネントをダウンロードする軽量パッケージ IronPdf.Linux: Linux 展開用に事前構成済み IronPdf.MacOs: macOS 環境に最適化されています GemBox.Pdfのインストール GemBox.Pdfのインストールは基本的なPDF操作に対しても簡単です。 Install-Package GemBox.Pdf しかし、HTMLからPDFへの変換には以下が必要です。 Install-Package GemBox.Document 両方のライブラリはライセンスキーの設定が必要です。 // IronPDF License.LicenseKey = "YOUR-LICENSE-KEY"; // GemBox.Pdf ComponentInfo.SetLicense("YOUR-LICENSE-KEY"); // IronPDF License.LicenseKey = "YOUR-LICENSE-KEY"; // GemBox.Pdf ComponentInfo.SetLicense("YOUR-LICENSE-KEY"); $vbLabelText $csharpLabel ライセンスと価格の違いは何ですか? ライセンスモデルを理解することで、各ソリューションの総所有コストを判断するのに役立ちます。 IronPDFライセンス IronPDFは、透明性のあるティアライセンス(2025年の価格): -ライトライセンス: $799 1年間の更新とサポート 1プロジェクト 1年のサポートとアップデート -プラスライセンス: $1,199 3か所 3プロジェクト 1年のサポートとアップデート -プロフェッショナルライセンス: $2,399 配布権なし 10プロジェクト 1年のサポートとアップデート 追加オプション: ロイヤリティフリーの再配布: +$2,399 SaaS/OEMライセンスが利用可能 Iron Suiteバンドル: 9 製品用 $1,498 主な利点: 24/5サポートと24時間SLA 永久ライセンス(一括購入) 開発とテストは無料 開発/ステージング/本番環境へのデプロイメントが含まれる GemBox.Pdfのライセンス GemBoxは開発者単位のライセンスを提供しています。 -単独開発者: 890 ドル 1年間の更新とサポート 無制限のプロジェクト 1年のサポートとアップデート ロイヤリティフリーのデプロイメントが含まれる 重要な考慮事項: HTMLからPDFへの変換にはGemBox.Documentが必要: 追加$890 HTMLからPDFへの合計コスト: 最低$1,780 更新時に40%割引(期限前に更新すれば60%) GemBoxバンドル: 7製品で$2,200 主な利点: 24/5サポートと24時間SLA 永久ライセンス 無制限のデプロイメントが含まれる サーバーまたはOEMライセンスは不要 一般的なシナリオのコスト比較 シナリオ IronPDFのコスト GemBoxのコスト 単一開発者、HTMLからPDF $799 $1,780 3人の開発者、PDF操作のみ $1,499 $2,670 3人の開発者、HTMLからPDF $1,199 $5,340 企業(10人の開発者)、完全な機能 $2,399 $8,900+ どちらのライブラリを選ぶべきか? IronPDFとGemBox.Pdfの選択は、具体的な要件によって異なります。 IronPDFを選ぶとき: HTMLからPDFへの変換は必須です。IronPDFのChromeベースのレンダリングは他に類を見ないものです。 -最新のWebサポートが必要です: CSS3、HTML5、 JavaScriptの完全な機能 -迅速な開発が重要:シンプルなAPIにより市場投入までの時間が短縮されます -動的コンテンツを操作します: JavaScript実行によりリアルタイムのデータが取得されます -クロスプラットフォーム展開が必要:クラウドとコンテナ環境に対する優れたサポート -予算を考慮する: HTML から PDF へのシナリオでは、初期コストが低く、価値が高くなります。 GemBox.Pdfを選択する場合: -低レベルのPDF制御が不可欠: PDFオブジェクトと構造への直接アクセス -モバイルプラットフォームのサポートが必要です:ネイティブのAndroidおよびiOSとの互換性 OCRはコア要件です:追加の依存関係のない組み込みOCR -既存のPDFを主に扱う場合:強力な操作および抽出機能 HTMLからPDFへの変換は不要です。未使用のGemBox.Documentへの支払いを避けてください。 -無制限の展開が重要:ロイヤリティフリーの再配布が含まれています 両方のライブラリを使用することを検討する場合: 一部の組織は、以下のようにアプリケーションの異なる部分に対して両方のライブラリを使用することに価値を見出します。 IronPDFはレポート生成とHTMLからPDFへの変換用 GemBox.Pdfはフォーム処理とPDF操作用 選んだライブラリでの開始方法 両方のライブラリは、機能を評価するための無料試用版を提供しています。 IronPDFを試す NuGetパッケージをインストール 開発にライセンスキーは不要 試用モードではPDFに透かしが表示されます 評価期間中はすべての機能にアクセス可能 IronPDF無料試用版をダウンロード GemBox.Pdfを試す NuGetパッケージをインストール ComponentInfo.SetLicense("FREE-LIMITED-KEY") を使用します 無料モードでは2ページに制限されています 制限を解除するにはアップグレード 視覚的なインストールガイド Visual Studioのグラフィカルインターフェイスを好む開発者のために、両方のライブラリをインストールするためのステップバイステップガイドです。 新しいASP.NETプロジェクトの作成 ASP.NET Webアプリケーションを作成するためのVisual Studioの新しいプロジェクトダイアログ - PDF生成プロジェクトの基礎 Webフォームをプロジェクトテンプレートとして選択 - IronPDFとGemBox.Pdfの両方の実装に適しています NuGetを介したPDFライブラリのインストール プロジェクトを右クリックしてNuGetパッケージマネージャーを通じてライブラリをインストール Visual Studioのプロジェクトメニューを介してNuGetパッケージマネージャーにアクセスする代替方法 NuGetパッケージマネージャーを通じてIronPDFをインストール - 包括的な機能説明とダウンロード数に注目 代替インストール方法 IronPDFのウェブサイトでは、NuGetインストールが適していないシナリオ向けに直接DLLダウンロードを提供しています 結論 IronPDFとGemBox.Pdfはどちらも.NET開発者向けの質の高いPDFライブラリで、それぞれ独自の強みを持っています。 IronPDFは、Chromeレンダリングエンジンを使用したHTMLからPDFへの変換が得意で、現代のウェブアプリケーションや動的なコンテンツ生成に最適です。 GemBox.Pdfは、低レベルのPDF操作およびモバイルサポートが優れており、正確なPDFコントロールを必要とするアプリケーションに最適です。 現代のアプリケーションを構築するほとんどのウェブ開発者やチームにとって、IronPDFは機能の組み合わせ、使いやすさ、価値の点で最高の選択肢です。 HTMLからピクセルパーフェクトなPDFをレンダリングする能力は、開発時間と複雑さを大幅に削減します。 ただし、GemBox.Pdfは、特にモバイル開発やPDFフォーム処理やOCR要件に焦点を当てたアプリケーションにおいては、堅実な選択肢となります。 HTMLコンテンツをプロフェッショナルなPDFに変換する準備はできましたか? IronPDFの無料トライアルを始めて、.NETアプリケーションでのChrome品質のレンダリングの力を体験してみてください。 包括的なドキュメント、豊富なコード例、および応答性の高いサポートにより、PDFの生成は数分で行われ、時間を必要としません。 ご注意GemBox.PdfおよびGemBox.Documentはそれぞれの所有者の登録商標です。 このサイトはGemBox.PdfまたはGemBox.Documentと提携しておらず、支援または推薦も受けていません。 すべての製品名、ロゴ、およびブランドは各所有者の所有物です。 比較は情報提供のみを目的としており、執筆時点で公開されている情報を反映しています。 よくある質問 C# で HTML を PDF に変換するにはどうすればいいですか? IronPDF の RenderHtmlAsPdf メソッドを使用して、HTML 文字列を PDF に変換できます。RenderHtmlFileAsPdf を使用して HTML ファイルを PDF に変換することもできます。 これらのライブラリで既存の PDF ファイルを操作できますか? はい、IronPDF と GemBox.Pdf の両方が既存の PDF ファイルの操作に使用できます。IronPDF は結合、分割、透かしの追加などの一般的なタスクを簡素化します。GemBox.Pdf は PDF オブジェクトの詳細な制御を提供し、複雑な操作タスクに役立ちます。 HTML から PDF への変換で IronPDF を使用する利点は何ですか? IronPDF は、その Chrome V8 レンダリングエンジンにより、98% 以上のブラウザ忠実度で優れた HTML から PDF への変換品質を提供します。最新の CSS3、HTML5、JavaScript 実行、ウェブフォント、およびレスポンシブデザインをサポートしています。 小規模な開発チームにとってより費用対効果の高いライブラリはどちらですか? 3 人の開発者チームが HTML から PDF への変換を必要とする場合、IronPDF の Plus ライセンスは $1,499 で、GemBox の場合、3 つの GemBox.Pdf ライセンスと 3 つの GemBox.Document ライセンスで $5,340 かかります。IronPDF はチームにとってかなり良い価値を提供します。 IronPDF は大量の PDF 生成に適していますか? はい、IronPDF は約 125 ms の HTML から PDF へのレンダリング時間と最適化された非同期/待機サポートにより、優れたパフォーマンスを発揮します。10MB 未満の効率的なメモリ使用量で、大量のウェブベースの PDF 生成に適しています。 IronPDF に含まれるサポートの種類は何ですか? IronPDF には、開発チームへの直接アクセスと 24 〜 48 時間の典型的な応答時間を含む 24/5 エンジニアリングサポート、包括的なドキュメント、およびコード例が含まれています。 これらのライブラリで PDF/A 準拠のドキュメントを作成できますか? はい、IronPDF は SaveAsPdfA() のような単純なメソッド呼び出しで PDF/A 準拠のドキュメントを生成でき、複数の PDF/A バージョンをサポートします。GemBox.Pdf は PDF/A ドキュメントを読み取り、変更時に準拠を維持することができます。 これらのライブラリは最新の .NET Frameworkと互換性がありますか? はい、両方のライブラリは最新の .NET バージョンをサポートしています。IronPDF は .NET Framework 4.6.2+、.NET Core 3.1+、および .NET 5 から 10 をサポートします。GemBox.Pdf は .NET Framework 3.5+、.NET Standard 2.0、.NET 6+ をサポートしています。 クラウド展開に最適化されたライブラリはどちらですか? IronPDF はクラウド展開に最適化されており、Azure、AWS、Docker コンテナ、およびサーバーレス環境向けの特定サポートがあります。HTML ベースのアプローチがウェブアプリケーションに自然に適合し、SaaS アプリケーションに最適な選択となります。 IronPDF をテストするための無料バージョンはありますか? IronPDF は、ライセンスキーなしで無制限の開発とテストを可能にする無料の評価オプションを提供しており、出力には透かしが表示されます。購入前に製品を評価するのに十分な機能を提供します。 Jacob Mellor 今すぐエンジニアリングチームとチャット 最高技術責任者(CTO) ジェイコブ・メラーはIron Softwareの最高技術責任者(CTO)であり、C# PDFテクノロジーを開拓する先見的なエンジニアです。Iron Softwareのコアコードベースを支えるオリジナル開発者として、彼は創業以来、会社の製品アーキテクチャを形成し、CEOのCameron Rimingtonとともに、会社をNASA、Tesla、および世界的な政府機関にサービスを提供する50人以上の会社に変えました。1999年にロンドンで最初のソフトウェアビジネスを開業し、2005年に最初 for .NETコンポーネントを作成した後、Microsoftのエコシステム全体で複雑な問題を解決することを専門としました。彼の主要なIronPDFとIron Suite .NETライブラリは、世界中で3000万以上のNuGetインストールを達成し、彼の基礎となるコードは世界中で使用されている開発者ツールに力を与え続けています。25年の商業経験と41年のコーディングの専門知識を持つJacobは、次世代の技術リーダーを指導しながら、エンタープライズグレードのC#、Java、Python PDFテクノロジーにおけるイノベーションの推進に注力しています。 関連する記事 更新日 2026年3月1日 ASP.NET MVCでPDFを生成:iTextSharp vs IronPDFガイド iTextSharpとIronPDFを使ってASP.NET MVCのPDF生成方法を比較します。どちらのライブラリがより優れたHTMLレンダリングと簡単な実装を提供するかをご覧ください。 詳しく読む 更新日 2026年2月1日 Ghostscript GPL vs IronPDF:技術比較ガイド Ghostscript GPLとIronPDFの主な違いをご覧ください。AGPLライセンスと商用ライセンス、コマンドラインスイッチと.NETネイティブAPI、HTML-to-PDF機能を比較してください。 詳しく読む 更新日 2026年3月1日 ASP PDFライブラリ:IronPDF、Aspose、Syncfusionの比較 ASP.NET Core アプリケーションに最適な PDF ライブラリを発見しよう。IronPDF の Chrome エンジンを Aspose および Syncfusion の代替案と比較します。 詳しく読む IronPDF対iTextPdf: 完全な.NET PDFライブラリ比較IronPDF vs PDFTron (Apryse): 2025...
更新日 2026年3月1日 ASP.NET MVCでPDFを生成:iTextSharp vs IronPDFガイド iTextSharpとIronPDFを使ってASP.NET MVCのPDF生成方法を比較します。どちらのライブラリがより優れたHTMLレンダリングと簡単な実装を提供するかをご覧ください。 詳しく読む
更新日 2026年2月1日 Ghostscript GPL vs IronPDF:技術比較ガイド Ghostscript GPLとIronPDFの主な違いをご覧ください。AGPLライセンスと商用ライセンス、コマンドラインスイッチと.NETネイティブAPI、HTML-to-PDF機能を比較してください。 詳しく読む
更新日 2026年3月1日 ASP PDFライブラリ:IronPDF、Aspose、Syncfusionの比較 ASP.NET Core アプリケーションに最適な PDF ライブラリを発見しよう。IronPDF の Chrome エンジンを Aspose および Syncfusion の代替案と比較します。 詳しく読む