移行ガイド C#でExpertPdfからIronPDFに移行する方法 カーティス・チャウ 更新日:1月 7, 2026 IronPDF をダウンロード NuGet ダウンロード DLL ダウンロード Windows 版 無料トライアル LLM向けのコピー LLM向けのコピー LLM 用の Markdown としてページをコピーする ChatGPTで開く このページについてChatGPTに質問する ジェミニで開く このページについてGeminiに問い合わせる Grokで開く このページについてGrokに質問する 困惑の中で開く このページについてPerplexityに問い合わせる 共有する Facebook で共有 Xでシェア(Twitter) LinkedIn で共有 URLをコピー 記事をメールで送る ExpertPdfからIronPdfへの移行:完全なC#移行ガイド ExpertPdfは、.NET用の商用HTML-PDFコンバータで、長年にわたり開発者にサービスを提供してきました。 しかし、ExpertPdfは、2018年以降凍結されたドキュメント、最新のCSS3機能を欠くレガシーなChromeバージョンへの依存、時代遅れのテクノロジーに対する550~1,200ドルのプレミアム価格、マージ、セキュリティ、分割のために個別のライセンスを必要とする断片的な製品群など、急速に進化する今日の開発環境において大きな課題に直面しています。 この包括的なガイドでは、ExpertPdfから最新のChromiumレンダリング、毎月のアップデート、オールインワンのパッケージアーキテクチャを持つ最新の.NET PDFライブラリであるIronPDFへの移行パスをステップバイステップで提供します。 なぜExpertPdfからIronPDFに移行するのですか? ExpertPdfには、開発チームを最新の代替ツールの評価に駆り立てるいくつかの課題があります。 これらの問題を理解することは、移行戦略を計画する上で不可欠です。 ### ExpertPdfの問題点 1.**Documentation Frozen Since 2018**: ExpertPdfのドキュメントは6年以上更新されていません。 .NETエコシステムの進化に伴い、最新の情報、例、ベストプラクティスを見つけることはますます難しくなっています。 2.**古いChromeバージョン**: ExpertPdfは、レンダリングに古いバージョンのChromeを使用しています。 最新のCSS3機能(Flexbox、Grid、CSS Variables)は正しくレンダリングされない可能性があり、セキュリティパッチは適用されません。 3.**レガシー技術向けプレミアム価格**:1ライセンスあたり550~1,200ドルで、ExpertPdfは時代遅れのレンダリングテクノロジーを提供しながらプレミアム価格を設定しています。 4.**断片化された製品スイート**: ExpertPdfは、機能ごとに別々のパッケージ(HtmlToPdf Converter、PDF Merger、PDF Security、PDF Splitter、PDF to Image)を販売しています。 5.**限られたモダン.NETサポート**:ExpertPdfには.NET Coreパッケージがありますが、最新の.NETバージョンやプラクティスに遅れをとっています。 ### アーキテクチャの比較 |アスペクト|エキスパートPDF|IronPDF| |--------|-----------|---------| |**ドキュメント** |2018年より凍結|継続的な更新| |**レンダリングエンジン** |レガシーChrome|最新のChromium| | **CSSサポート** |限定的なCSS3|フルCSS3(フレックスボックス、グリッド)| |**価格** |$550-$1,200|競争力のある価格設定| |**更新頻度** |頻度|毎月のリリース| |**製品モデル** |断片化(5つ以上のDLL)|オールインワンライブラリ| |**モダン.NET**| 制限的 |.NET 6/7/8/9+ ネイティブ| |**非同期サポート**について| 制限的 |完全なasync/await| ### 主な移行のメリット 1.**モダンレンダリング**:ピクセルパーフェクトな出力のための最新のChromiumエンジン 2.**オールインワンパッケージ**:PDF生成、マージ、セキュリティ、抽出を1つのNuGetで。 3.**積極的な開発**:新機能とセキュリティパッチを含む毎月のアップデート 4.**より良いドキュメント**:包括的なチュートリアルと例 5.**真のクロスプラットフォーム**:Windows、Linux、macOS、Dockerサポート ## 移行前の準備 ### 前提条件 あなたの環境がこれらの要件を満たしていることを確認してください: - .NET Framework 4.6.2+または.NET Core 3.1 / .NET 5-9 - Visual Studio 2019+またはC#拡張機能付きVS Code - NuGetパッケージマネージャへのアクセス - IronPDFライセンスキー ([ironpdf.com](https://ironpdf.com/licensing/) にて無料トライアル可能) ### 監査エキスパートPDFの使用法 ソリューションディレクトリで以下のコマンドを実行し、ExpertPdfへの参照をすべて特定します: ```bash # Find allエキスパートPDFreferences grep -r "ExpertPdf\|PdfConverter\|PDFMerge\|PdfSecurityManager" --include="*.cs" . # Check NuGet packages dotnet list package | grep -i "ExpertPdf" ``` 一般的なExpertPdfパッケージ - ExpertPdf.HtmlToPdf/code> - HTMLからPDFへの変換 - ExpertPdf.PDFMerge/code> - PDFマージ - `ExpertPdf.PDFSecurity` - 暗号化とパスワード - ExpertPdf.PDFSplit/code> - PDF分割 - ExpertPdf.PdfToImage/code> - PDFから画像への変換 ### コアパターンの変更を理解する ExpertPdfは、バイト配列を直接返すメソッドを持つ`PdfConverter`を使用しています。 IronPDFは`ChromePdfRenderer`を使用し、保存する前に追加の操作機能を提供する`PdfDocument`オブジェクトを返します。 ## ステップごとの移行プロセス ### ステップ 1: NuGet パッケージを更新する。 すべてのExpertPdfパッケージを削除し、IronPdfをインストールしてください: ```bash # Remove allエキスパートPDFpackages dotnet remove package ExpertPdf.HtmlToPdf dotnet remove package ExpertPdf.PDFMerge dotnet remove package ExpertPdf.PDFSecurity dotnet remove package ExpertPdf.PDFSplit dotnet remove package ExpertPdf.PdfToImage # InstallIronPDF(includes all features) dotnet add package IronPdf ``` ### ステップ 2: 名前空間参照の更新 ExpertPdfの名前空間をIronPdfに置き換えてください: ```csharp // Remove these using ExpertPdf.HtmlToPdf; // Add this using IronPdf; ``` ### ステップ 3: ライセンスの設定 ExpertPdfは、コンバータごとのライセンスを使用しています。 IronPDFは単一のグローバルライセンスを使用しています: ```csharp // Add at application startup (Program.cs or Startup.cs) IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY"; ``` ## 完全な API 移行のリファレンス ### コア クラス マッピング |ExpertPdfクラス|IronPDF 同等物|ノート| |----------------|-------------------|-------| |<コード>PdfConverterコード|<コード>ChromePdfRendererコード|主な変換クラス| |<コード>PdfDocumentOptionsコード|<コード>ChromePdfRenderOptionsコード|`RenderingOptions`経由| |<コード>PdfHeaderOptionsコード|`TextHeaderFooter`または`HtmlHeaderFooter`。|設定可能| |<コード>PdfFooterOptionsコード|`TextHeaderFooter`または`HtmlHeaderFooter`。|設定可能| |<コード>PDFMergeコード|`PdfDocument.Merge()`を使用してください。|静的メソッド| ###>マージントップコード|同じプロパティ名| |<コード>PdfHeaderOptions.HeaderTextコード|<コード>TextHeader.CenterTextコード|>PdfFooterOptions.FooterTextコード|<コード>TextFooter.RightTextコード|>&p;コード|<コード>{ページ}コード| |`&P;`|<コード>{総ページ数}コード| ##> ```csharp // NuGet: Install-Package ExpertPdf.HtmlToPdf using ExpertPdf.HtmlToPdf; using System; class Program { static void Main() { // Create the PDF converter PdfConverter pdfConverter = new PdfConverter(); // Convert HTML string to PDF byte[] pdfBytes = pdfConverter.GetPdfBytesFromHtmlString("Hello WorldThis is a PDF document."); // Save to file System.IO.File.WriteAllBytes("output.pdf", pdfBytes); Console.WriteLine("PDF created successfully!"); } } ``` **IronPDFの実装:**。 ```csharp // NuGet: Install-Package IronPdf using IronPdf; using System; class Program { static void Main() { // Create a PDF from HTML string var renderer = new ChromePdfRenderer(); var pdf = renderer.RenderHtmlAsPdf("Hello WorldThis is a PDF document."); // Save to file pdf.SaveAs("output.pdf"); Console.WriteLine("PDF created successfully!"); } } ``` IronPDFのアプローチは`PdfDocument`オブジェクトを返し、保存する前に追加操作(マージ、透かし、セキュリティ)を可能にします。 その他のオプションについては、[HTML to PDF documentation](https://ironpdf.com/how-to/html-file-to-pdf/)を参照してください。 ### ページ設定付きURL to PDF **ExpertPdfの実装:** ```csharp // NuGet: Install-Package ExpertPdf.HtmlToPdf using ExpertPdf.HtmlToPdf; using System; class Program { static void Main() { // Create the PDF converter PdfConverter pdfConverter = new PdfConverter(); // Set page size and orientation pdfConverter.PdfDocumentOptions.PdfPageSize = PdfPageSize.A4; pdfConverter.PdfDocumentOptions.PdfPageOrientation = PdfPageOrientation.Portrait; // Convert URL to PDF byte[] pdfBytes = pdfConverter.GetPdfBytesFromUrl("https://www.example.com"); // Save to file System.IO.File.WriteAllBytes("webpage.pdf", pdfBytes); Console.WriteLine("PDF from URL created successfully!"); } } ``` **IronPDFの実装:**。 ```csharp // NuGet: Install-Package IronPdf using IronPdf; using System; class Program { static void Main() { // Create a PDF renderer var renderer = new ChromePdfRenderer(); // Set page size and orientation renderer.RenderingOptions.PaperSize = PdfPaperSize.A4; renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Portrait; // Convert URL to PDF var pdf = renderer.RenderUrlAsPdf("https://www.example.com"); // Save to file pdf.SaveAs("webpage.pdf"); Console.WriteLine("PDF from URL created successfully!"); } } ``` IronPDFの`RenderingOptions`はページ設定のための直接的なプロパティアクセスを提供します。 その他のオプションについては、[URL to PDF documentation](https://ironpdf.com/how-to/url-to-pdf/)を参照してください。 ### ページ番号を含むヘッダーとフッター この例では、ヘッダー/フッター設定の決定的な違いを示しています。ExpertPDFは`&p;`/`&P;`トークンを持つ別々の`PdfHeaderOptions/code>とPdfFooterOptions/code>クラスを使用し、IronPDFは{page}`/`{total-pages}`プレースホルダーを持つTextHeaderFooter/code>を使用しています。 **ExpertPdfの実装:** ```csharp // NuGet: Install-Package ExpertPdf.HtmlToPdf using ExpertPdf.HtmlToPdf; using System; class Program { static void Main() { // Create the PDF converter PdfConverter pdfConverter = new PdfConverter(); // Enable header pdfConverter.PdfHeaderOptions.ShowHeader = true; pdfConverter.PdfHeaderOptions.HeaderText = "Document Header"; pdfConverter.PdfHeaderOptions.HeaderTextAlignment = HorizontalTextAlign.Center; // Enable footer with page numbers pdfConverter.PdfFooterOptions.ShowFooter = true; pdfConverter.PdfFooterOptions.FooterText = "Page &p; of &P;"; pdfConverter.PdfFooterOptions.FooterTextAlignment = HorizontalTextAlign.Right; // Convert HTML file to PDF byte[] pdfBytes = pdfConverter.GetPdfBytesFromHtmlFile("input.html"); // Save to file System.IO.File.WriteAllBytes("output-with-header-footer.pdf", pdfBytes); Console.WriteLine("PDF with headers and footers created successfully!"); } } ``` **IronPDFの実装:**。 ```csharp // NuGet: Install-Package IronPdf using IronPdf; using System; class Program { static void Main() { // Create a PDF renderer var renderer = new ChromePdfRenderer(); // Configure header renderer.RenderingOptions.TextHeader = new TextHeaderFooter() { CenterText = "Document Header", DrawDividerLine = true }; // Configure footer with page numbers renderer.RenderingOptions.TextFooter = new TextHeaderFooter() { RightText = "Page {page} of {total-pages}", DrawDividerLine = true }; // Convert HTML file to PDF var pdf = renderer.RenderHtmlFileAsPdf("input.html"); // Save to file pdf.SaveAs("output-with-header-footer.pdf"); Console.WriteLine("PDF with headers and footers created successfully!"); } } ``` IronPDFの`TextHeaderFooter`は`LeftText`、`CenterText`、`RightText`プロパティとオプションの区切り線を提供します。 HTMLベースのヘッダーには、`HtmlHeaderFooter`を使用してください。 その他のオプションについては、[headers and footers documentation](https://ironpdf.com/how-to/headers-and-footers/)を参照してください。 ## 重要な移行に関する注意事項 ### ライセンス キー ロケーション ExpertPdfは、コンバータごとのライセンスを使用しています。 IronPdfは起動時に単一のグローバルライセンスを使用します: ```csharp //エキスパートPDF- per converter pdfConverter.LicenseKey = "EXPERTPDF-LICENSE"; //IronPDF- global, set once IronPdf.License.LicenseKey = "IRONPDF-LICENSE"; ``` ### ページ番号トークン変換 ExpertPdfトークンをIronPDFプレースホルダーに置き換えてください: ```csharp // ExpertPdf "Page &p; of &P;" // IronPDF "Page {page} of {total-pages}" ``` ### 断片化されたパッケージが統合されました。 ExpertPdfの個別パッケージ(PDFMerge, PDFSecurity, PDFSplit, PdfToImage)はすべてIronPdfの単一パッケージに含まれています: ```csharp //エキスパートPDF- requires separate PDFMerge package var merger = new PdfMerge(); merger.AppendPDFFile("file1.pdf"); merger.AppendPDFFile("file2.pdf"); merger.SaveMergedPDFToFile("merged.pdf"); //IronPDF- included in main package var pdf1 = PdfDocument.FromFile("file1.pdf"); var pdf2 = PdfDocument.FromFile("file2.pdf"); var merged = PdfDocument.Merge(pdf1, pdf2); merged.SaveAs("merged.pdf"); ``` マージオプションについては、[PDFマージドキュメント](https://ironpdf.com/how-to/merge-or-split-pdfs/)を参照してください。 ### カスタムページサイズ ExpertPdfはポイントを使用しています。 IronPDFはミリメートルを使用しています。 変換してください:` ポイント / 72 * 25.4 = mm`. ## 移行後のチェックリスト コードの移行が完了したら、以下を確認してください: - [生成されたPDFのビジュアル比較 - [ヘッダー/フッターとページ番号の確認 - [セキュリティ/暗号化設定のテスト - [マージの検証 - [カスタムページサイズの確認 - [パフォーマンスベンチマーク - [クロスプラットフォームテスト - [ExpertPdf ライセンスファイルの削除 - [ドキュメントの更新 ## PDFインフラストラクチャの将来性を確保する .NET 10が目前に迫り、C# 14では新しい言語機能が導入されるため、活発な開発と最新のレンダリングが行われているPDFライブラリを選択することで、長期的な互換性を確保することができます。 IronPdfの毎月のアップデートと最新のChromeエンジンは、ExpertPdfのレガシーなChromeバージョンとは異なり、プロジェクトが2025年や2026年に拡張されても、最新のCSS3レイアウト(Flexbox、Grid)で正しく動作し続けるPDF生成の基盤を提供します。 ## その他のリソース - [IronPDFドキュメント](https://ironpdf.com/docs/). - [HTMLからPDFへのチュートリアル](https://ironpdf.com/tutorials/)。 - [APIリファレンス](https://ironpdf.com/object-reference/api/). - [NuGetパッケージ](https://www.nuget.org/packages/IronPdf/)。 - [ライセンスオプション](https://ironpdf.com/licensing/)。 --- ExpertPdfからIronPDFに移行することで、凍結されたドキュメント、レガシーなChromeレンダリング、断片化された製品ライセンス、限定された最新の.NETサポートといった課題が解消されます。 最新のChromiumエンジンを備えたアクティブにメンテナンスされたライブラリへの移行により、PDF生成は、進化するWeb標準や.NET Frameworkと歩調を合わせることができます。 カーティス・チャウ 今すぐエンジニアリングチームとチャット テクニカルライター Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。 関連する記事 更新日 1月 7, 2026 C#でWebView2からIronPDFに移行する方法 この完全なC#ガイドでWebView2からIronPDFへの移行をマスターしてください。不安定なUIコントロールから専用のPDFライブラリに切り替えます。メモリ管理、クロスプラットフォーム展開、スレッド要件の削除のコード例を含みます。 詳しく読む 更新日 1月 7, 2026 C#でiTextからIronPDFに移行する方法 この完全なC#ガイドでiTextからIronPDFへの移行をマスターしてください。プログラムによるPDF作成とAGPLのリスクから、モダンなHTMLファーストライブラリに乗り換えましょう。HTML変換、マージ、テーブルのコード例を含みます。 詳しく読む 更新日 1月 7, 2026 C#でGemBox PDFからIronPDFに移行する方法 この完全なC#ガイドでGemBox PDFからIronPDFへの移行をマスターしましょう。座標ベースのレイアウトと段落制限から、無制限でモダンなHTML/CSSレンダリングに切り替えます。テキスト、表、結合のコード例が含まれています。 詳しく読む C#でFastReportからIronPDFに移行する方法C#でEO.PdfからIronPDFに移行...
更新日 1月 7, 2026 C#でWebView2からIronPDFに移行する方法 この完全なC#ガイドでWebView2からIronPDFへの移行をマスターしてください。不安定なUIコントロールから専用のPDFライブラリに切り替えます。メモリ管理、クロスプラットフォーム展開、スレッド要件の削除のコード例を含みます。 詳しく読む
更新日 1月 7, 2026 C#でiTextからIronPDFに移行する方法 この完全なC#ガイドでiTextからIronPDFへの移行をマスターしてください。プログラムによるPDF作成とAGPLのリスクから、モダンなHTMLファーストライブラリに乗り換えましょう。HTML変換、マージ、テーブルのコード例を含みます。 詳しく読む
更新日 1月 7, 2026 C#でGemBox PDFからIronPDFに移行する方法 この完全なC#ガイドでGemBox PDFからIronPDFへの移行をマスターしましょう。座標ベースのレイアウトと段落制限から、無制限でモダンなHTML/CSSレンダリングに切り替えます。テキスト、表、結合のコード例が含まれています。 詳しく読む