フッターコンテンツにスキップ
移行ガイド

C#でPDFreactorからIronPDFに移行する方法

PDFreactorからIronPDFへの移行:完全なC#マイグレーションガイド

PDFreactorからIronPDFに移行することで、.NETネイティブライブラリを通して同等のHTMLからPDFへの変換機能を提供しながら、Java依存とサーバーインフラを排除します。 このガイドでは、Javaベースのサーバーアーキテクチャを.NETアプリケーションにシームレスに統合するインプロセスライブラリに置き換える、完全でステップバイステップの移行パスを提供します。

なぜPDFreactorからIronPDFに移行するのか

PDFreactorについて

PDFreactorは、さまざまなプラットフォームに統合された強力なHTMLからPDFへの変換サーバーです。 商用ソリューションとして、PDFreactorは独自の技術を活用し、HTMLとCSSコンテンツを高品質のPDFドキュメントに変換します。 特筆すべき属性として、PDFreactorは幅広いCSSプロパティに対応しており、複雑なレイアウトレンダリングの有力な候補となります。

しかし、PDFreactorがJavaに依存しているため、.NET環境では、その非ネイティブの性質がデプロイと統合を複雑にする可能性があるという課題があります。 Javaに依存しているため、.NETアプリケーションに余分なオーバーヘッドが発生し、追加の統合作業が必要になることがよくあります。

Javaの依存性の問題

PDFreactorのアーキテクチャは、.NET環境においていくつかの課題を生み出します:

1.Javaランタイムが必要です:すべてのサーバーにJRE/JDKのインストールが必要です。

2.サーバーアーキテクチャ:追加のインフラストラクチャを必要とする別のサービスとして実行されます。 サーバーベースのソリューションとして、PDFreactorはすべての変換にREST APIコールを必要とします。

3.複雑なデプロイメント:主に.NETエコシステムでJavaの依存関係を管理することは、セットアップを複雑にし、メンテナンスコストを増加させる可能性があります。 CI/CDパイプラインで管理する2つのランタイム(Java + .NET)。

4.プロセス間通信:REST APIやソケット通信は待ち時間を増やします。 すべてのPDF変換には、サーバーへのHTTPラウンドトリップが必要です。

5.個別のライセンス管理:ライセンスはアプリケーションではなく、サーバーインスタンスにバインドされます。 Javaサービスインスタンスに関連付けられたサーバーごとのライセンス。

6.リソース分離:プロセスのメモリとCPUの管理を分離します。 監視、拡張、保守のための追加サーバー。

PDFreactorとIronPDFの比較

特徴/側面PDFreactorIronPDF
ネイティブ.NETライブラリなし(Javaベース)はい
ランタイムJava(外部サーバー).NET ネイティブ(進行中)
アーキテクチャREST API サービスNuGetライブラリ
デプロイメントJava + サーバー設定単一のNuGetパッケージ
依存関係についてJRE + HTTPクライアント自己完結型
レイテンシーについてネットワーク往復直接メソッド呼び出し
クロスプラットフォーム対応可(Javaに依存)はい(バンドルされているChromium)
CSSサポートCSS3、CSS Paged Mediaの高度なサポート包括的なHTML5/CSS3のサポート
展開の複雑さJavaのため、より複雑シンプル、.NETと直接統合
PDF操作の特徴基本(生成のみ)マージ、分割、編集、注釈を含む広範囲な作業

PDFreactorとは対照的に、IronPDFはネイティブの.NETライブラリであり、Javaのような外部依存なしに.NETプロジェクトにシームレスに統合できるように設計されています。 IronPdfはバンドルされているChromiumレンダリングエンジンを使用しており、わずか数行のコードでHTMLをPDFに変換することができます。

2025年と2026年まで.NET 10とC# 14の導入を計画しているチームにとって、IronPDFは包括的なPDFライフサイクル管理を提供しながらJavaサーバーの複雑さを解消する.NETネイティブソリューションを提供します。


始める前に

前提条件

1..NET環境: .NET Framework 4.6.2+ または .NET Core 3.1+ / .NET 5/6/7/8/9+. 2.NuGetアクセス:NuGetパッケージをインストールする能力。 3.IronPDFライセンスironPdf.comからライセンスキーを取得してください。

NuGetパッケージの変更

# RemovePDFreactorNuGet packages
dotnet remove package PDFreactor.NET
dotnet remove package PDFreactor.Native.Windows.x64

# StopPDFreactorserver service (if running locally)
# Windows: net stop PDFreactor
# Linux: sudo systemctl stop pdfreactor

# Install IronPDF
dotnet add package IronPdf
# RemovePDFreactorNuGet packages
dotnet remove package PDFreactor.NET
dotnet remove package PDFreactor.Native.Windows.x64

# StopPDFreactorserver service (if running locally)
# Windows: net stop PDFreactor
# Linux: sudo systemctl stop pdfreactor

# Install IronPDF
dotnet add package IronPdf
SHELL

ライセンス構成

PDFreactor(サーバーベース):

// License configured on server via config file or command line
// Client connects to licensed server
var pdfReactor = new PDFreactor("http://pdfreactor-server:9423");
// License configured on server via config file or command line
// Client connects to licensed server
var pdfReactor = new PDFreactor("http://pdfreactor-server:9423");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

IronPDF(アプリケーションレベル):

// One-time setup at application startup
IronPdf.License.LicenseKey = "YOUR-IRONPDF-LICENSE-KEY";
// One-time setup at application startup
IronPdf.License.LicenseKey = "YOUR-IRONPDF-LICENSE-KEY";
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

PDFreactorの使用法を特定する。

# FindPDFreactorusage
grep -r "PDFreactor\|RealObjects\|Configuration.*Document" --include="*.cs" .

# FindCSSページングメディアrules to convert
grep -r "@page\|counter(page)\|counter(pages)" --include="*.cs" --include="*.css" .
# FindPDFreactorusage
grep -r "PDFreactor\|RealObjects\|Configuration.*Document" --include="*.cs" .

# FindCSSページングメディアrules to convert
grep -r "@page\|counter(page)\|counter(pages)" --include="*.cs" --include="*.css" .
SHELL

完全な API リファレンス

名前空間の変更

// Before: PDFreactor
using RealObjects.PDFreactor;
using System.IO;

// After: IronPDF
using IronPdf;
using IronPdf.Rendering;
// Before: PDFreactor
using RealObjects.PDFreactor;
using System.IO;

// After: IronPDF
using IronPdf;
using IronPdf.Rendering;
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

コア クラス マッピング

PDFreactorIronPDFノート
<コード>PDFreactor</コード<コード>ChromePdfRenderer</コード主な変換クラス
<コード>コンフィギュレーション</コード<コード>ChromePdfRenderOptions</コードPDF設定
<コード>結果</コード<コード>PdfDocument</コード出力文書
config.Document = html.renderer.RenderHtmlAsPdf(html).HTML入力
result.Document (byte[])<コード>pdf.BinaryData</コード生バイト

構成プロパティのマッピング

PDFreactorの構成IronPDF レンダリングオプションノート
config.Document = html.renderer.RenderHtmlAsPdf(html).HTMLコンテンツ
config.Document = url.renderer.RenderUrlAsPdf(url)のようにします。URL変換
config.PageFormat = PageFormat.A4.RenderingOptions.PaperSize=PdfPaperSize.A4用紙サイズ
<コード>config.PageOrientation</コード<コード>RenderingOptions.PaperOrientation</コードオリエンテーション
<コード>config.PageMargins</コードRenderingOptions.MarginTop/Bottom/Left/Rightマージン (mm)
config.EnableJavaScript = true.RenderingOptions.EnableJavaScript = true.JS実行
config.AddUserStyleSheet(css).HTMLにCSSを埋め込むCSSインジェクション
<コード>config.Title</コード<コード>pdf.MetaData.Title</コードメタデータ
<コード>config.Encryption</コード<コード>pdf.SecuritySettings</コードセキュリティ

PDFreactorでは利用できない新機能

IronPDFの特徴翻訳内容
PdfDocument.Merge()を使用してください。複数のPDFをマージ
<コード>pdf.ApplyWatermark()</コード></コード透かしの追加
pdf.ExtractAllText()を使用してください。テキスト抽出
<コード>pdf.Form</コードフォーム入力
<コード>pdf.Sign()</コードデジタル署名

コード移行の例

例1: HTML文字列からPDFへの変換

翻訳前 (PDFreactor):

// NuGet: Install-Package PDFreactor.Native.Windows.x64
using RealObjects.PDFreactor;
using System.IO;

class Program
{
    static void Main()
    {
       PDFreactorpdfReactor = new PDFreactor();

        string html = "<html><body><h1>Hello World</h1></body></html>";

        Configuration config = new Configuration();
        config.Document = html;

        Result result = pdfReactor.Convert(config);

        File.WriteAllBytes("output.pdf", result.Document);
    }
}
// NuGet: Install-Package PDFreactor.Native.Windows.x64
using RealObjects.PDFreactor;
using System.IO;

class Program
{
    static void Main()
    {
       PDFreactorpdfReactor = new PDFreactor();

        string html = "<html><body><h1>Hello World</h1></body></html>";

        Configuration config = new Configuration();
        config.Document = html;

        Result result = pdfReactor.Convert(config);

        File.WriteAllBytes("output.pdf", result.Document);
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

翻訳後(IronPDF):

// NuGet: Install-Package IronPdf
using IronPdf;
using System;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();

        string html = "<html><body><h1>Hello World</h1></body></html>";

        var pdf = renderer.RenderHtmlAsPdf(html);

        pdf.SaveAs("output.pdf");
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;
using System;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();

        string html = "<html><body><h1>Hello World</h1></body></html>";

        var pdf = renderer.RenderHtmlAsPdf(html);

        pdf.SaveAs("output.pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

基本的な違いは、アーキテクチャ・パターンです。 PDFreactorは、PDFreactorインスタンス(Javaサーバーに接続する)、設定とHTMLコンテンツを保持するための別のConfigurationオブジェクトを作成し、Resultオブジェクトを返すConvert()を呼び出し、最後にFile.WriteAllBytes()を使用してresult.Documentバイトをファイルに書き込む必要があります。

IronPDFはこれを単純化し、ChromePdfRendererを作成し、RenderHtmlAsPdf()をHTML文字列で直接呼び出し、返されたPdfDocumentに組み込みのSaveAs()メソッドを使用します。 サーバー接続、設定オブジェクト、手動でのバイト処理はありません。 包括的な例については、HTML to PDF documentationを参照してください。

例2: URLからPDFへの変換

翻訳前 (PDFreactor):

// NuGet: Install-Package PDFreactor.Native.Windows.x64
using RealObjects.PDFreactor;
using System.IO;

class Program
{
    static void Main()
    {
       PDFreactorpdfReactor = new PDFreactor();

        Configuration config = new Configuration();
        config.Document = "https://www.example.com";

        Result result = pdfReactor.Convert(config);

        File.WriteAllBytes("webpage.pdf", result.Document);
    }
}
// NuGet: Install-Package PDFreactor.Native.Windows.x64
using RealObjects.PDFreactor;
using System.IO;

class Program
{
    static void Main()
    {
       PDFreactorpdfReactor = new PDFreactor();

        Configuration config = new Configuration();
        config.Document = "https://www.example.com";

        Result result = pdfReactor.Convert(config);

        File.WriteAllBytes("webpage.pdf", result.Document);
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

翻訳後(IronPDF):

// NuGet: Install-Package IronPdf
using IronPdf;
using System;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();

        var pdf = renderer.RenderUrlAsPdf("https://www.example.com");

        pdf.SaveAs("webpage.pdf");
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;
using System;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();

        var pdf = renderer.RenderUrlAsPdf("https://www.example.com");

        pdf.SaveAs("webpage.pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

PDFreactorは、HTML文字列とURLの両方に同じconfig.Documentプロパティを使用し、自動的にタイプを決定します。 IronPDFは明示的なメソッドを提供します:HTML文字列のRenderHtmlAsPdf()URLのRenderUrlAsPdf()です。 この明示的なアプローチにより、コードの明快さとインテリセンスのサポートが向上します。 詳しくは、チュートリアルをご覧ください。

例3:ページ番号を含むヘッダーとフッター

翻訳前 (PDFreactor):

// NuGet: Install-Package PDFreactor.Native.Windows.x64
using RealObjects.PDFreactor;
using System.IO;

class Program
{
    static void Main()
    {
       PDFreactorpdfReactor = new PDFreactor();

        string html = "<html><body><h1>Document with Headers</h1><p>Content here</p></body></html>";

        Configuration config = new Configuration();
        config.Document = html;
        config.AddUserStyleSheet("@page { @top-center { content: 'Header Text'; } @bottom-center { content: 'Page ' counter(page); } }");

        Result result = pdfReactor.Convert(config);

        File.WriteAllBytes("document.pdf", result.Document);
    }
}
// NuGet: Install-Package PDFreactor.Native.Windows.x64
using RealObjects.PDFreactor;
using System.IO;

class Program
{
    static void Main()
    {
       PDFreactorpdfReactor = new PDFreactor();

        string html = "<html><body><h1>Document with Headers</h1><p>Content here</p></body></html>";

        Configuration config = new Configuration();
        config.Document = html;
        config.AddUserStyleSheet("@page { @top-center { content: 'Header Text'; } @bottom-center { content: 'Page ' counter(page); } }");

        Result result = pdfReactor.Convert(config);

        File.WriteAllBytes("document.pdf", result.Document);
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

翻訳後(IronPDF):

// NuGet: Install-Package IronPdf
using IronPdf;
using IronPdf.Rendering;
using System;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();

        renderer.RenderingOptions.TextHeader = new TextHeaderFooter()
        {
            CenterText = "Header Text"
        };

        renderer.RenderingOptions.TextFooter = new TextHeaderFooter()
        {
            CenterText = "Page {page}"
        };

        string html = "<html><body><h1>Document with Headers</h1><p>Content here</p></body></html>";

        var pdf = renderer.RenderHtmlAsPdf(html);

        pdf.SaveAs("document.pdf");
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;
using IronPdf.Rendering;
using System;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();

        renderer.RenderingOptions.TextHeader = new TextHeaderFooter()
        {
            CenterText = "Header Text"
        };

        renderer.RenderingOptions.TextFooter = new TextHeaderFooter()
        {
            CenterText = "Page {page}"
        };

        string html = "<html><body><h1>Document with Headers</h1><p>Content here</p></body></html>";

        var pdf = renderer.RenderHtmlAsPdf(html);

        pdf.SaveAs("document.pdf");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

この例は、最も重要な構文の違いを示しています。 PDFreactorは、@pageルール、@top-center/@bottom-centerリージョン、およびAddUserStyleSheet()を介して注入されたページ番号のためのcounter(page)を持つCSSページメディア構文を使用しています。

IronPDFはTextHeaderFooterオブジェクトをRenderingOptions.TextHeaderRenderingOptions.TextFooterに割り当てた.NETネイティブAPIを使用しています。 ページ番号は、CSSのcounter(page)の代わりに{page}プレースホルダを使用します。 IronPDFはヘッダー/フッタークラスのためにIronPdf.Rendering名前空間をインポートする必要があることに注意してください。


重要な移行に関する注意事項

サーバーは必要ありません。

IronPdfはインプロセスで動作します。Javaサーバーを設定する必要はありません:

// PDFreactor: Requires server connection
var pdfReactor = new PDFreactor("http://localhost:9423");

// IronPDF: No server URL needed
var renderer = new ChromePdfRenderer();
// PDFreactor: Requires server connection
var pdfReactor = new PDFreactor("http://localhost:9423");

// IronPDF: No server URL needed
var renderer = new ChromePdfRenderer();
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

CSSページドメディアからIronPDF APIへ

CSSの@pageルールをRenderingOptionsに置き換えてください:

//PDFreactorCSS: @page { @bottom-center { content: 'Page ' counter(page); } }
//IronPDFequivalent:
renderer.RenderingOptions.TextFooter = new TextHeaderFooter 
{ 
    CenterText = "Page {page}" 
};
//PDFreactorCSS: @page { @bottom-center { content: 'Page ' counter(page); } }
//IronPDFequivalent:
renderer.RenderingOptions.TextFooter = new TextHeaderFooter 
{ 
    CenterText = "Page {page}" 
};
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

ページ番号プレースホルダーの構文

//PDFreactorCSS: counter(page)
// IronPDF: {page}

//PDFreactorCSS: counter(pages)  
// IronPDF: {total-pages}
//PDFreactorCSS: counter(page)
// IronPDF: {page}

//PDFreactorCSS: counter(pages)  
// IronPDF: {total-pages}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

結果処理の変更

Configuration + Resultのパターンが直接PdfDocumentになります:

// PDFreactor: Configuration → Convert → Result → bytes
Result result = pdfReactor.Convert(config);
byte[] bytes = result.Document;
File.WriteAllBytes("output.pdf", bytes);

// IronPDF: Direct PdfDocument with built-in methods
var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("output.pdf");
// Or: byte[] bytes = pdf.BinaryData;
// PDFreactor: Configuration → Convert → Result → bytes
Result result = pdfReactor.Convert(config);
byte[] bytes = result.Document;
File.WriteAllBytes("output.pdf", bytes);

// IronPDF: Direct PdfDocument with built-in methods
var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("output.pdf");
// Or: byte[] bytes = pdf.BinaryData;
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

マージン単位の変更

PDFreactorは文字列を使用します; IronPDFはミリメートルを使用しています:

// PDFreactor: config.PageMargins.Top = "1in"
// IronPDF: renderer.RenderingOptions.MarginTop = 25.4  // 1 inch in mm
// PDFreactor: config.PageMargins.Top = "1in"
// IronPDF: renderer.RenderingOptions.MarginTop = 25.4  // 1 inch in mm
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

移行後の新機能

IronPDFに移行すると、PDFreactorでは提供できない機能が得られます:

PDFマージ

var pdf1 = PdfDocument.FromFile("document1.pdf");
var pdf2 = PdfDocument.FromFile("document2.pdf");
var merged = PdfDocument.Merge(pdf1, pdf2);
merged.SaveAs("merged.pdf");
var pdf1 = PdfDocument.FromFile("document1.pdf");
var pdf2 = PdfDocument.FromFile("document2.pdf");
var merged = PdfDocument.Merge(pdf1, pdf2);
merged.SaveAs("merged.pdf");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

ウォーターマーク

pdf.ApplyWatermark("<h2 style='color:red;'>CONFIDENTIAL</h2>");
pdf.ApplyWatermark("<h2 style='color:red;'>CONFIDENTIAL</h2>");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

テキスト抽出

string text = pdf.ExtractAllText();
string text = pdf.ExtractAllText();
Dim text As String = pdf.ExtractAllText()
$vbLabelText   $csharpLabel

パスワード保護

pdf.SecuritySettings.UserPassword = "userpassword";
pdf.SecuritySettings.OwnerPassword = "ownerpassword";
pdf.SecuritySettings.UserPassword = "userpassword";
pdf.SecuritySettings.OwnerPassword = "ownerpassword";
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

機能比較の概要

フィーチャーPDFreactorIronPDF
HTMLからPDFへ
URLからPDFへ
ヘッダー/フッターCSSページングメディアネイティブAPI
ページ設定
JavaScriptサポート
.NET ネイティブ
インプロセス
PDFのマージ
PDFの分割
透かし
テキスト抽出
フォーム入力
デジタル署名

移行チェックリスト

移行前

  • [ ] コードベース内のすべてのPDFreactorの使用状況のインベントリ
  • [CSS Paged Mediaルールをすべて文書化すること。
  • [すべての設定(余白、ページサイズ、JavaScript)に注意してください。)
  • [ ] IronPDFライセンスキーの保存を計画する(環境変数を推奨)
  • [ ] まずはIronPDFトライアルライセンスでテストしてください。

パッケージの変更

  • [ ] PDFreactor.NETNuGetパッケージを削除します。
  • [ ] PDFreactor.Native.Windows.x64NuGetパッケージを削除します。
  • [ ] IronPdf NuGetパッケージをインストールします:dotnet add package IronPdf NuGetパッケージをインストールします。

コードの変更

  • [ ] 名前空間のインポートを更新する (using RealObjects.PDFreactor;using IronPdf;)
  • [ヘッダー/フッタークラスにusing IronPdf.Rendering;を追加してください。
  • [ ] PDFreactorクラスをChromePdfRendererに置き換えてください。
  • [ ]<コード>コンフィギュレーション</コードオブジェクトを RenderingOptions プロパティに変換する。
  • [ ]config.Document = html.をrenderer.RenderHtmlAsPdf(html).に置き換えてください。
  • [ ]config.Document = url.をrenderer.RenderUrlAsPdf(url)のようにします。に置き換えてください。
  • [ ] File.WriteAllBytes(path, result.Document)pdf.SaveAs(path) に置き換えてください。
  • [CSS @pageルールをTextHeader/TextFooterオブジェクトに変換します。
  • [ ] ページ番号プレースホルダを更新 (counter(page){page})
  • [文字列からミリメートルへのマージン単位の変換

インフラストラクチャの移行

  • [Java ランタイム要件の削除
  • [PDFreactor サーバーの廃止
  • [ ] Docker/デプロイメント設定の更新
  • [CI/CD パイプラインの更新

移行後

  • [PDF 出力の品質が期待に沿うかどうかのテスト
  • [ヘッダー/フッターレンダリングの検証
  • [使用されている場合は、JavaScriptの実行を確認してください。
  • [必要に応じて、新しい機能(マージ、透かし、セキュリティ)を追加してください。

結論

PDFreactorからIronPDFに移行することで、HTMLからPDFへの同等の機能を提供しながら、Java依存とサーバーインフラを排除することができます。 PDFreactorとIronPDFの間で適切なツールを選択することは、特定のプロジェクトの要件と既存のインフラストラクチャに大きく依存します。 あなたのプロジェクトが広範なCSSサポートと忠実度の高いレンダリングを要求し、Javaの依存関係を扱うことができる場合、PDFreactorは有力な候補です。 逆に、.NET環境で開発していて、シームレスな統合と広範なPDF機能を望むのであれば、IronPDFがより適切な選択です。

この移行における主な変更点は以下のとおりです: 1.アーキテクチャ:サーバーベースのJavaサービス → インプロセス.NETライブラリ 2.メインクラスPDFreactorChromePdfRenderer 3.コンフィギュレーションConfigurationオブジェクト → RenderingOptionsプロパティ 4.HTML変換config.Document + Convert()RenderHtmlAsPdf(). 5.URL変換config.Document + Convert()RenderUrlAsPdf(). 6.出力result.Document + File.WriteAllBytes()pdf.SaveAs(). 7.ヘッダー/フッター:CSS @page ルール → TextHeaderFooter オブジェクト 8.ページ番号counter(page){ページ}。 9.新機能:PDFマージ、透かし、テキスト抽出、デジタル署名など

主な利点としては、別個のサーバープロセスが不要な簡素化されたアーキテクチャ、REST/IPCの代わりに直接APIコールを使用した.NETネイティブの統合、Javaランタイム+サーバーではなく単一のNuGetパッケージによる複雑性の軽減、マージ、分割、編集、署名など変換以外のPDFライフサイクルの完全サポートなどがあります。

IronPDFドキュメントチュートリアルAPIリファレンスをご覧いただき、PDFreactorへの移行を促進してください。

カーティス・チャウ
テクニカルライター

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

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