C#でHiQPdfからIronPDFに移行する方法
HiQPdfからIronPdfへの移行:完全なC#移行ガイド
HiQPdfからIronPDFへの移行は、あなたの.NET PDFワークフローを、ページ制限のある古いWebKitベースのレンダリングエンジンから、JavaScriptフレームワークをフルサポートした最新のChromium搭載ライブラリへと変えます。 このガイドでは、.NETのプロフェッショナルな開発者向けに、3ページの制限と断片的なパッケージ構造を排除した、包括的でステップバイステップの移行パスを提供します。
なぜHiQPdfからIronPDFへ移行するのか
HiQPdfの制限について
HiQPdfは商用HTML-to-PDFライブラリですが、本番アプリケーションに影響を与えるいくつかの制限があります:
1.制限のある"無料"バージョン: 無料バージョンでは、3ページの制限があり、邪魔な透かしが入ります。
2.古いWebKitエンジン:HiQPdfは古いWebKitベースのレンダリングエンジンを使用しているため、React、Angular、Vueのような最新のJavaScriptフレームワークと格闘しています。
3.不明瞭な.NET Coreサポート:ドキュメントでは、.NET Core / .NET 5+のサポートが明確にされていないため、最新のアプリケーション開発の不確実性が生じています。
4.断片化されたパッケージ:異なるプラットフォーム用の複数のNuGetパッケージ(HiQPdf、HiQPdf.Free、HiQPdf.NetCore、HiQPdf.NetCore.x64、HiQPdf.Client)が依存関係の管理を複雑にしています。
5.複雑なAPI:Document、Header、Footer プロパティ・チェーンを通じて、流暢で直感的な方法ではなく、冗長な設定を必要とします。
6.限られたJavaScriptサポート: WebKitエンジンは、最新のJavaScriptフレームワークや複雑な動的レイアウトによって生成されたコンテンツのレンダリングに課題があります。
HiQPdfとIronPdfの比較
| アスペクト | HiQPdf | IronPDF |
|---|---|---|
| レンダリングエンジン | WebKitベース(古い) | モダンChromium |
| 無料レベル | 3ページ以内+透かし | 30日間フルトライアル |
| モダンJSサポート | 制限的 | フル(React、Angular、Vue) |
| .NET Core/5+サポート | 複数のパッケージが必要 | 統一パッケージ |
| APIデザイン | 複雑なプロパティチェーン | クリーンで流暢なAPI |
| CSS3 サポート | 部分的 | フルサポート |
| ドキュメンテーション | 断片化 | 包括的 |
| NuGetパッケージ | 複数のバリエーション | 単一パッケージ |
2025年、2026年まで.NET 10とC# 14の採用を計画しているチームにとって、IronPDFは最新の.NETバージョンと最新のChromiumレンダリングエンジンに対する文書化されたサポートで、将来を見据えた基盤を提供します。
マイグレーションの複雑さの評価
機能別の見積もり作業
| フィーチャー | 移行の複雑さ | ノート |
|---|---|---|
| HTMLからPDFへ | 低レベル | メソッドの直接置換 |
| URLからPDFへ | 低レベル | メソッドの直接置換 |
| PDFのマージ | 低レベル | 異なるマージアプローチ |
| ヘッダー/フッター | 中規模 | プレースホルダーの構文変更 |
| ページサイズ/余白 | 低レベル | 同じ単位(mm) |
| トリガーモード/遅延 | 低レベル | プロパティのマッピング |
パラダイムシフト
このHiQPdfの移行における基本的なシフトは、プロパティチェーン設定から流暢なレンダリングオプションです:
HiQPdf: converter.Document.Header.Height = 50;
converter.Document.Header.Add(新しいHtmlToPdfVariableElement(...));
IronPdf: renderer.RenderingOptions.TextHeader = new TextHeaderFooter() { ... };始める前に
前提条件
1..NETバージョン: IronPDFは.NET Framework 4.6.2+と.NET Core 3.1+ / .NET 5/6/7/8/9+をサポートしています。 2.ライセンスキー:ironpdf.comからIronPDFライセンスキーを取得してください。 3.HiQPdfを削除する:すべてのHiQPdf NuGetパッケージの亜種を削除する予定です。
すべてのHiQPdfの使用法を特定する
# FindHiQPdfnamespace usage
grep -r "using HiQPdf\|HtmlToPdf\|PdfDocument" --include="*.cs" .
# Find header/footer usage
grep -r "\.Header\.\|\.Footer\.\|HtmlToPdfVariableElement" --include="*.cs" .
# Find placeholder syntax
grep -r "CrtPage\|PageCount" --include="*.cs" .
# Find NuGet references
grep -r "HiQPdf" --include="*.csproj" .# FindHiQPdfnamespace usage
grep -r "using HiQPdf\|HtmlToPdf\|PdfDocument" --include="*.cs" .
# Find header/footer usage
grep -r "\.Header\.\|\.Footer\.\|HtmlToPdfVariableElement" --include="*.cs" .
# Find placeholder syntax
grep -r "CrtPage\|PageCount" --include="*.cs" .
# Find NuGet references
grep -r "HiQPdf" --include="*.csproj" .NuGetパッケージの変更
# Remove allHiQPdfvariants
dotnet remove package HiQPdf
dotnet remove package HiQPdf.Free
dotnet remove package HiQPdf.NetCore
dotnet remove package HiQPdf.NetCore.x64
dotnet remove package HiQPdf.Client
# InstallIronPDF(single package for all platforms)
dotnet add package IronPdf# Remove allHiQPdfvariants
dotnet remove package HiQPdf
dotnet remove package HiQPdf.Free
dotnet remove package HiQPdf.NetCore
dotnet remove package HiQPdf.NetCore.x64
dotnet remove package HiQPdf.Client
# InstallIronPDF(single package for all platforms)
dotnet add package IronPdfクイック スタート マイグレーション
ステップ 1: ライセンス構成の更新
翻訳前 (HiQPdf):
HtmlToPdf converter = new HtmlToPdf();
converter.SerialNumber = "HIQPDF-SERIAL-NUMBER";HtmlToPdf converter = new HtmlToPdf();
converter.SerialNumber = "HIQPDF-SERIAL-NUMBER";IRON VB CONVERTER ERROR developers@ironsoftware.com翻訳後(IronPDF):。
// Set globally at application startup
IronPdf.License.LicenseKey = "YOUR-IRONPDF-LICENSE-KEY";// Set globally at application startup
IronPdf.License.LicenseKey = "YOUR-IRONPDF-LICENSE-KEY";IRON VB CONVERTER ERROR developers@ironsoftware.comステップ 2: 名前空間インポートを更新する
// Before (HiQPdf)
using HiQPdf;
// After (IronPDF)
using IronPdf;
using IronPdf.Rendering;// Before (HiQPdf)
using HiQPdf;
// After (IronPDF)
using IronPdf;
using IronPdf.Rendering;IRON VB CONVERTER ERROR developers@ironsoftware.com完全な API リファレンス
メインクラスのマッピング
| HiQPdfクラス | IronPDF クラス | ノート |
|---|---|---|
| <コード>HtmlToPdf</コード | <コード>ChromePdfRenderer</コード | メインコンバータクラス |
| <コード>PdfDocument</コード | <コード>PdfDocument</コード | 同じ名前、異なる名前空間 |
| <コード>HtmlToPdfVariableElement</コード | TextHeaderFooterまたはHtmlHeaderFooter。 | ヘッダー/フッターコンテンツ |
変換メソッドマッピング
| HiQPdfメソッド | IronPDF メソッド | ノート |
|---|---|---|
ConvertHtmlToMemory(html、baseUrl)。 | RenderHtmlAsPdf(html)を使用してください。 | PdfDocument<//code> を返します。 |
ConvertUrlToMemory(url)を使用してください。 | RenderUrlAsPdf(url)を使用してください。 | PdfDocument<//code> を返します。 |
File.WriteAllBytes(path, bytes). | pdf.SaveAs(path)のようにします。 | 直接保存方式 |
PDFドキュメントメソッドマッピング
| HiQPdfメソッド | IronPDF メソッド | ノート |
|---|---|---|
PdfDocument.FromFile(パス)。 | PdfDocument.FromFile(パス)。 | 同じメソッド名 |
document1.AddDocument(document2)のようにします。 | PdfDocument.Merge(pdf1, pdf2). | 静的マージ方式 |
document.WriteToFile(パス)。 | pdf.SaveAs(path)のようにします。 | 異なるメソッド名 |
ヘッダー/フッター プレースホルダーのマッピング
| HiQPdfプレースホルダ | IronPDF プレースホルダー | 翻訳内容 |
|---|---|---|
{CrtPage}<//code> | <コード>{ページ}</コード | 現在のページ番号 |
| <コード>{ページ数}</コード | <コード>{総ページ数}</コード | 総ページ数 |
コード移行の例
例1: HTMLからPDFへの変換
翻訳前 (HiQPdf):
// NuGet: Install-Package HiQPdf
using HiQPdf;
using System;
class Program
{
static void Main()
{
HtmlToPdf htmlToPdfConverter = new HtmlToPdf();
byte[] pdfBuffer = htmlToPdfConverter.ConvertUrlToMemory("https://example.com");
System.IO.File.WriteAllBytes("output.pdf", pdfBuffer);
// Convert HTML string
string html = "<h1>Hello World</h1><p>This is a PDF document.</p>";
byte[] pdfFromHtml = htmlToPdfConverter.ConvertHtmlToMemory(html, "");
System.IO.File.WriteAllBytes("fromhtml.pdf", pdfFromHtml);
}
}// NuGet: Install-Package HiQPdf
using HiQPdf;
using System;
class Program
{
static void Main()
{
HtmlToPdf htmlToPdfConverter = new HtmlToPdf();
byte[] pdfBuffer = htmlToPdfConverter.ConvertUrlToMemory("https://example.com");
System.IO.File.WriteAllBytes("output.pdf", pdfBuffer);
// Convert HTML string
string html = "<h1>Hello World</h1><p>This is a PDF document.</p>";
byte[] pdfFromHtml = htmlToPdfConverter.ConvertHtmlToMemory(html, "");
System.IO.File.WriteAllBytes("fromhtml.pdf", pdfFromHtml);
}
}IRON VB CONVERTER ERROR developers@ironsoftware.com翻訳後(IronPDF):。
// NuGet: Install-Package IronPdf
using IronPdf;
using System;
class Program
{
static void Main()
{
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderUrlAsPdf("https://example.com");
pdf.SaveAs("output.pdf");
// Convert HTML string
string html = "<h1>Hello World</h1><p>This is a PDF document.</p>";
var pdfFromHtml = renderer.RenderHtmlAsPdf(html);
pdfFromHtml.SaveAs("fromhtml.pdf");
}
}// NuGet: Install-Package IronPdf
using IronPdf;
using System;
class Program
{
static void Main()
{
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderUrlAsPdf("https://example.com");
pdf.SaveAs("output.pdf");
// Convert HTML string
string html = "<h1>Hello World</h1><p>This is a PDF document.</p>";
var pdfFromHtml = renderer.RenderHtmlAsPdf(html);
pdfFromHtml.SaveAs("fromhtml.pdf");
}
}IRON VB CONVERTER ERROR developers@ironsoftware.comHiQPdfのアプローチでは、HtmlToPdfインスタンスを作成し、ConvertUrlToMemory()またはConvertHtmlToMemory()を呼び出してバイト配列を取得し、手動でバイトをファイルに書き込む必要があります。IronPDFのChromePdfRendererは直接SaveAs()メソッドでPdfDocumentオブジェクトを返すので、手動でファイルを書き込むステップがなくなります。また、最新のChromiumエンジンは、複雑なHTML/CSS/JavaScriptコンテンツのレンダリングを改善します。 その他のレンダリングオプションについては、HTML to PDF documentationを参照してください。
例2: 複数のPDFをマージする
翻訳前 (HiQPdf):
// NuGet: Install-Package HiQPdf
using HiQPdf;
using System;
class Program
{
static void Main()
{
// Create first PDF
HtmlToPdf converter1 = new HtmlToPdf();
byte[] pdf1 = converter1.ConvertHtmlToMemory("<h1>First Document</h1>", "");
System.IO.File.WriteAllBytes("doc1.pdf", pdf1);
// Create second PDF
HtmlToPdf converter2 = new HtmlToPdf();
byte[] pdf2 = converter2.ConvertHtmlToMemory("<h1>Second Document</h1>", "");
System.IO.File.WriteAllBytes("doc2.pdf", pdf2);
// Merge PDFs
PdfDocument document1 = PdfDocument.FromFile("doc1.pdf");
PdfDocument document2 = PdfDocument.FromFile("doc2.pdf");
document1.AddDocument(document2);
document1.WriteToFile("merged.pdf");
}
}// NuGet: Install-Package HiQPdf
using HiQPdf;
using System;
class Program
{
static void Main()
{
// Create first PDF
HtmlToPdf converter1 = new HtmlToPdf();
byte[] pdf1 = converter1.ConvertHtmlToMemory("<h1>First Document</h1>", "");
System.IO.File.WriteAllBytes("doc1.pdf", pdf1);
// Create second PDF
HtmlToPdf converter2 = new HtmlToPdf();
byte[] pdf2 = converter2.ConvertHtmlToMemory("<h1>Second Document</h1>", "");
System.IO.File.WriteAllBytes("doc2.pdf", pdf2);
// Merge PDFs
PdfDocument document1 = PdfDocument.FromFile("doc1.pdf");
PdfDocument document2 = PdfDocument.FromFile("doc2.pdf");
document1.AddDocument(document2);
document1.WriteToFile("merged.pdf");
}
}IRON VB CONVERTER ERROR developers@ironsoftware.com翻訳後(IronPDF):。
// NuGet: Install-Package IronPdf
using IronPdf;
using System;
class Program
{
static void Main()
{
var renderer = new ChromePdfRenderer();
// Create first PDF
var pdf1 = renderer.RenderHtmlAsPdf("<h1>First Document</h1>");
pdf1.SaveAs("doc1.pdf");
// Create second PDF
var pdf2 = renderer.RenderHtmlAsPdf("<h1>Second Document</h1>");
pdf2.SaveAs("doc2.pdf");
// Merge PDFs
var merged = PdfDocument.Merge(pdf1, pdf2);
merged.SaveAs("merged.pdf");
}
}// NuGet: Install-Package IronPdf
using IronPdf;
using System;
class Program
{
static void Main()
{
var renderer = new ChromePdfRenderer();
// Create first PDF
var pdf1 = renderer.RenderHtmlAsPdf("<h1>First Document</h1>");
pdf1.SaveAs("doc1.pdf");
// Create second PDF
var pdf2 = renderer.RenderHtmlAsPdf("<h1>Second Document</h1>");
pdf2.SaveAs("doc2.pdf");
// Merge PDFs
var merged = PdfDocument.Merge(pdf1, pdf2);
merged.SaveAs("merged.pdf");
}
}IRON VB CONVERTER ERROR developers@ironsoftware.comHiQPdfのアプローチでは、PdfDocument.FromFile()を使ってファイルからドキュメントを読み込み、最初のドキュメントでAddDocument()を呼び出して2番目のドキュメントを追加し、WriteToFile()を使って保存します。 IronPDFは複数のPdfDocumentオブジェクトを直接受け入れる、よりクリーンな静的PdfDocument.Merge()メソッドを提供します。 PDFのマージと分割については、こちらをご覧ください。
例3: ページ番号を含むPDFのヘッダーとフッター
翻訳前 (HiQPdf):
// NuGet: Install-Package HiQPdf
using HiQPdf;
using System;
class Program
{
static void Main()
{
HtmlToPdf htmlToPdfConverter = new HtmlToPdf();
// Add header
htmlToPdfConverter.Document.Header.Height = 50;
HtmlToPdfVariableElement headerHtml = new HtmlToPdfVariableElement("<div style='text-align:center'>Page Header</div>", "");
htmlToPdfConverter.Document.Header.Add(headerHtml);
// Add footer with page number
htmlToPdfConverter.Document.Footer.Height = 50;
HtmlToPdfVariableElement footerHtml = new HtmlToPdfVariableElement("<div style='text-align:center'>Page {CrtPage} of {PageCount}</div>", "");
htmlToPdfConverter.Document.Footer.Add(footerHtml);
byte[] pdfBuffer = htmlToPdfConverter.ConvertHtmlToMemory("<h1>Document with Headers and Footers</h1>", "");
System.IO.File.WriteAllBytes("header-footer.pdf", pdfBuffer);
}
}// NuGet: Install-Package HiQPdf
using HiQPdf;
using System;
class Program
{
static void Main()
{
HtmlToPdf htmlToPdfConverter = new HtmlToPdf();
// Add header
htmlToPdfConverter.Document.Header.Height = 50;
HtmlToPdfVariableElement headerHtml = new HtmlToPdfVariableElement("<div style='text-align:center'>Page Header</div>", "");
htmlToPdfConverter.Document.Header.Add(headerHtml);
// Add footer with page number
htmlToPdfConverter.Document.Footer.Height = 50;
HtmlToPdfVariableElement footerHtml = new HtmlToPdfVariableElement("<div style='text-align:center'>Page {CrtPage} of {PageCount}</div>", "");
htmlToPdfConverter.Document.Footer.Add(footerHtml);
byte[] pdfBuffer = htmlToPdfConverter.ConvertHtmlToMemory("<h1>Document with Headers and Footers</h1>", "");
System.IO.File.WriteAllBytes("header-footer.pdf", pdfBuffer);
}
}IRON VB CONVERTER ERROR developers@ironsoftware.com翻訳後(IronPDF):。
// NuGet: Install-Package IronPdf
using IronPdf;
using IronPdf.Rendering;
using System;
class Program
{
static void Main()
{
var renderer = new ChromePdfRenderer();
// Configure header and footer
renderer.RenderingOptions.TextHeader = new TextHeaderFooter()
{
CenterText = "Page Header",
FontSize = 12
};
renderer.RenderingOptions.TextFooter = new TextHeaderFooter()
{
CenterText = "Page {page} of {total-pages}",
FontSize = 10
};
var pdf = renderer.RenderHtmlAsPdf("<h1>Document with Headers and Footers</h1>");
pdf.SaveAs("header-footer.pdf");
}
}// NuGet: Install-Package IronPdf
using IronPdf;
using IronPdf.Rendering;
using System;
class Program
{
static void Main()
{
var renderer = new ChromePdfRenderer();
// Configure header and footer
renderer.RenderingOptions.TextHeader = new TextHeaderFooter()
{
CenterText = "Page Header",
FontSize = 12
};
renderer.RenderingOptions.TextFooter = new TextHeaderFooter()
{
CenterText = "Page {page} of {total-pages}",
FontSize = 10
};
var pdf = renderer.RenderHtmlAsPdf("<h1>Document with Headers and Footers</h1>");
pdf.SaveAs("header-footer.pdf");
}
}IRON VB CONVERTER ERROR developers@ironsoftware.comHiQPdfのアプローチでは、Document.Header.Heightを設定し、HtmlToPdfVariableElementオブジェクトを作成し、ヘッダー/フッターセクションでAdd()を呼び出す必要があります。 ページ番号のプレースホルダには、{CrtPage}<//code>と{PageCount}<//code>の構文を使用します。 IronPDFはCenterTextプロパティと異なるプレースホルダー構文で、よりクリーンなTextHeaderFooter設定を提供します:{page}と{total-pages}です。 HTMLベースのヘッダーを含むその他のオプションについては、headers and footers documentationを参照してください。
重要な移行に関する注意事項
プレースホルダーの構文の変更
ページ番号のある文書で最も重要な変更は、プレースホルダーの構文です:
//HiQPdfplaceholders
"Page {CrtPage} of {PageCount}"
//IronPDFplaceholders
"Page {page} of {total-pages}"//HiQPdfplaceholders
"Page {CrtPage} of {PageCount}"
//IronPDFplaceholders
"Page {page} of {total-pages}"IRON VB CONVERTER ERROR developers@ironsoftware.com完全なプレースホルダ・マッピング:。
{CrtPage}<//code> →{page}<//code{PageCount}<//code> → <code>{total-pages}。
マージ メソッドの違い
HiQPdfは、最初のドキュメントを所定の位置に修正します:
// HiQPdf: Modifies document1
document1.AddDocument(document2);
document1.WriteToFile("merged.pdf");// HiQPdf: Modifies document1
document1.AddDocument(document2);
document1.WriteToFile("merged.pdf");IRON VB CONVERTER ERROR developers@ironsoftware.comIronPDFは新しいマージされたドキュメントを返します:
// IronPDF: Returns new document
var merged = PdfDocument.Merge(pdf1, pdf2);
merged.SaveAs("merged.pdf");// IronPDF: Returns new document
var merged = PdfDocument.Merge(pdf1, pdf2);
merged.SaveAs("merged.pdf");IRON VB CONVERTER ERROR developers@ironsoftware.com3ページの制限はありません。
HiQPdfの無料版では、透かし入りの出力は3ページまでです。 IronPdfは試用期間中、人工的な制限なしに完全なドキュメントを生成します。
ChromePdfRendererを再利用してください。
変換のたびに新しいHtmlToPdfインスタンスを作成するHiQPdfとは異なり、IronPDFのChromePdfRendererは再利用されるべきです:
// IronPDF: Create once, reuse
var renderer = new ChromePdfRenderer();
var pdf1 = renderer.RenderHtmlAsPdf(html1);
var pdf2 = renderer.RenderHtmlAsPdf(html2);// IronPDF: Create once, reuse
var renderer = new ChromePdfRenderer();
var pdf1 = renderer.RenderHtmlAsPdf(html1);
var pdf2 = renderer.RenderHtmlAsPdf(html2);IRON VB CONVERTER ERROR developers@ironsoftware.comトラブルシューティング
問題1: HtmlToPdfが見つかりません
問題:HtmlToPdfクラスがIronPDFに存在しません。
解決策:ChromePdfRendererに置き換えてください:
// HiQPdf
HtmlToPdf htmlToPdfConverter = new HtmlToPdf();
// IronPDF
var renderer = new ChromePdfRenderer();// HiQPdf
HtmlToPdf htmlToPdfConverter = new HtmlToPdf();
// IronPDF
var renderer = new ChromePdfRenderer();IRON VB CONVERTER ERROR developers@ironsoftware.com問題 2: ConvertHtmlToMemory が見つかりません。
問題:ConvertHtmlToMemory()メソッドが存在しません。
解決策:RenderHtmlAsPdf()を使用してください:
// HiQPdf
byte[] pdfBytes = converter.ConvertHtmlToMemory(html, "");
// IronPDF
var pdf = renderer.RenderHtmlAsPdf(html);
byte[] pdfBytes = pdf.BinaryData;// HiQPdf
byte[] pdfBytes = converter.ConvertHtmlToMemory(html, "");
// IronPDF
var pdf = renderer.RenderHtmlAsPdf(html);
byte[] pdfBytes = pdf.BinaryData;IRON VB CONVERTER ERROR developers@ironsoftware.com問題3: ページ番号のプレースホルダーが機能しない
問題:{CrtPage}と{PageCount}は、文字通り出力されます。
解決策:IronPDFプレースホルダーの構文を更新しました:
//HiQPdfsyntax (won't work)
"Page {CrtPage} of {PageCount}"
//IronPDFsyntax
"Page {page} of {total-pages}"//HiQPdfsyntax (won't work)
"Page {CrtPage} of {PageCount}"
//IronPDFsyntax
"Page {page} of {total-pages}"IRON VB CONVERTER ERROR developers@ironsoftware.com問題 4: HtmlToPdfVariableElement が見つかりません。
問題:HtmlToPdfVariableElementクラスが存在しません。
解決策:TextHeaderFooterまたはHtmlHeaderFooterを使用してください:
// HiQPdf
HtmlToPdfVariableElement headerHtml = new HtmlToPdfVariableElement("<div>Header</div>", "");
converter.Document.Header.Add(headerHtml);
// IronPDF
renderer.RenderingOptions.TextHeader = new TextHeaderFooter()
{
CenterText = "Header",
FontSize = 12
};// HiQPdf
HtmlToPdfVariableElement headerHtml = new HtmlToPdfVariableElement("<div>Header</div>", "");
converter.Document.Header.Add(headerHtml);
// IronPDF
renderer.RenderingOptions.TextHeader = new TextHeaderFooter()
{
CenterText = "Header",
FontSize = 12
};IRON VB CONVERTER ERROR developers@ironsoftware.com移行チェックリスト
移行前
- [コードベース内のすべてのHiQPdf APIコールをインベントリ化する。
- [現在のページサイズ、マージン、設定を文書化してください。
- [ヘッダー/フッターの設定とプレースホルダーの特定
- [IronPDF ライセンスキーの取得
- [開発環境でのIronPDFのテスト
コードの移行
- [すべてのHiQPdf NuGetパッケージ(すべての亜種)を削除します。)
- [ ] IronPdf NuGetパッケージをインストールします:
dotnet add package IronPdf<//code>. - [名前空間インポートの更新
- [ ]
HtmlToPdfをChromePdfRendererに置き換えてください。 - [ ]
ConvertHtmlToMemory()をRenderHtmlAsPdf()に変換してください。 - [ ]
ConvertUrlToMemory()をRenderUrlAsPdf()に変換してください。 - [ ] ヘッダー/フッターのプレースホルダーを更新 (
{CrtPage}→{page},<コード>{ページ数}</コード→{total-pages}) - [ ]
HtmlToPdfVariableElementをTextHeaderFooterに置き換えてください。 - [ ] マージ操作の更新 (
AddDocument→PdfDocument.Merge) - [ ] 起動時にライセンスキーの初期化を追加する
テスティング
- [HTMLからPDFへの変換テスト
- [テストURLからPDFへの変換
- [ヘッダー/フッターレンダリングの検証
- [ページ番号のプレースホルダを確認する
- [テストPDFマージ
- [ ] JavaScriptを多用するページのテスト(Chromiumでサポートされるようになりました)
移行後
- [ ] 設定からHiQPdfのシリアル番号を削除する
- [ドキュメントの更新
- [レンダリングの違いを監視する
結論
HiQPdfからIronPDFへの移行は、.NETアプリケーションにいくつかの大きな利点をもたらします。 React、Angular、Vue、および複雑なJavaScriptフレームワークを完全にサポートする最新のChromiumレンダリングエンジンを得ることができます。 透かしの入った3ページの制限はなくなり、代わりに本物のフル機能のトライアルが提供されます。 単一に統一されたNuGetパッケージは、断片化されたHiQPdfの亜種を置き換えます。
この移行における主な変更点は以下のとおりです: 1.クラス置換:HtmlToPdf →<コード>ChromePdfRenderer</コードです。 2.メソッド置換:ConvertHtmlToMemory()→RenderHtmlAsPdf().BinaryData。 3.マージアプローチ:document1.AddDocument(document2) → PdfDocument.Merge(pdf1, pdf2). 4.プレースホルダーの構文:{CrtPage} → {page},<コード>{ページ数}</コード→ {total-pages}. 5.ヘッダー/フッター:HtmlToPdfVariableElement → TextHeaderFooter です。
IronPDFドキュメント、チュートリアル、APIリファレンスをご覧いただき、HiQPdfへの移行を促進してください。






