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

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

GrabzItからIronPDFへの移行は、コールバックが複雑なクラウドベースのスクリーンショットキャプチャサービスから、選択可能で検索可能なテキストを含む真のベクターPDFを生成するインプロセスライブラリへと、あなた for .NET PDFワークフローを変えます。 このガイドでは、プロ for .NET開発者向けに、外部サーバーへの依存、コールバックハンドラ、キャプチャごとの価格設定を排除した、包括的でステップバイステップの移行パスを提供します。

なぜGrabzItからIronPDFへ移行するのか

GrabzItアーキテクチャの問題

GrabzItは、クラウドベースのスクリーンショットとPDFキャプチャサービスです。迅速な統合には便利ですが、基本的なアーキテクチャ上の制限があります:

1.画像ベースの PDF:GrabzItは、テキストを選択できないスクリーンショットベースの PDF (基本的には PDF 形式でラップされた画像) を作成します。 これは、テキスト操作やアクセシビリティを必要とするあらゆるユースケースにおける基本的な制限です。

2.外部処理:すべてのコンテンツは処理のためにGrabzItのサーバーに送信されるため、機密データのプライバシーとコンプライアンスに関する懸念が生じます。 お客様のHTMLコンテンツは、お客様のインフラストラクチャから離脱します。

3.コールバックの複雑さ:GrabzItは、Webhook 処理インフラストラクチャを必要とする非同期コールバック モデルを使用します。 結果を受け取るためにエンドポイントを設定する必要があり、アーキテクチャが複雑になります。

4.キャプチャごとの価格設定:使用量に応じた支払いモデルは規模が大きくなると高額になる可能性があります。 PDFの生成にはコストがかかります。

5.テキスト検索なし: PDF は画像ベースであるため、OCR なしではテキスト検索と抽出は機能しません。つまり、追加の手順とコストがかかります。

6.ファイル サイズが大きい:画像ベースの PDF はベクターベースの PDF よりも大幅に大きく、5 ~ 10 倍になることもあります。

7.ネットワーク依存性:インターネット接続がないと PDF を生成できないため、オフライン シナリオは不可能になります。

8.遅延: PDF を生成するたびに外部サーバーへのネットワーク ラウンドトリップが必要となり、500 ミリ秒~ 5 秒の遅延が発生します。

GrabzItとIronPDFの比較

アスペクト GrabzIt IronPDF
PDFタイプ 画像ベース(スクリーンショット) 真のベクトルPDF
テキストの選択 不可 全文選択
テキスト検索 OCRが必要 ネイティブ検索可能
処理場所 外部サーバー ローカル/プロセス
プライバシー 外部送信データ データはローカルのまま
遅延 ネットワーク・ラウンドトリップ(500ms~5s) ローカル処理(~100ms)
価格モデル キャプチャ 開発者ライセンス
オフライン機能 なし はい
ファイルサイズ 大規模(画像データ) 小(ベクトルデータ)
要コールバック はい(非同期) いいえ(同期/非同期)
CSS/JSサポート 制限的 フルChromiumエンジン

2025年、2026年まで.NET 10とC# 14の採用を計画しているチームにとって、IronPDFは最新 for .NETパターンとネイティブに統合されたローカル処理で、将来を見据えた基盤を提供します。


マイグレーションの複雑さの評価

機能別の見積もり作業

フィーチャー 移行の複雑さ
HTMLからPDFへ 低レベル
URLからPDFへ 低レベル
HTMLから画像へ 低レベル
ページサイズ/余白 低レベル
コールバックハンドラ 低レベル
透かし 低レベル
ヘッダー/フッター 中規模
認証キー 低レベル

パラダイムシフト

このGrabzIt移行における基本的な変化は、非同期コールバックベースのクラウド処理から同期インプロセス生成への変化です。

GrabzIt:   HTMLを送信 → コールバックを待つ → 結果をサーバーから取得
IronPDF:   HTMLをレンダリング → すぐにPDFを取得

始める前に

前提条件

  1. .NETバージョン: IronPDFは.NET Framework 4.6.2以降および.NET Core 3.1以降 / .NET 5/6/7/8/9以降をサポートしています。 2.ライセンスキー: IronPDFからIronPDFライセンスキーを取得します。 3.インフラストラクチャの削除を計画する:廃止のためのコールバックハンドラーとWebhookエンドポイントを文書化する

すべてのGrabzItの使用法を特定する

# FindGrabzItclient usage
grep -r "GrabzItClient\|GrabzIt\." --include="*.cs" .

# Find callback handlers
grep -r "GrabzIt\|grabzit" --include="*.ashx" --include="*.aspx" --include="*.cs" .

# Find configuration
grep -r "APPLICATION_KEY\|APPLICATION_SECRET\|grabzit" --include="*.config" --include="*.json" .
# FindGrabzItclient usage
grep -r "GrabzItClient\|GrabzIt\." --include="*.cs" .

# Find callback handlers
grep -r "GrabzIt\|grabzit" --include="*.ashx" --include="*.aspx" --include="*.cs" .

# Find configuration
grep -r "APPLICATION_KEY\|APPLICATION_SECRET\|grabzit" --include="*.config" --include="*.json" .
SHELL

NuGetパッケージの変更

# Remove GrabzIt
dotnet remove package GrabzIt

# Install IronPDF
dotnet add package IronPdf
# Remove GrabzIt
dotnet remove package GrabzIt

# Install IronPDF
dotnet add package IronPdf
SHELL

クイック スタート マイグレーション

ステップ 1: ライセンス構成の更新

翻訳前 (GrabzIt):

GrabzItは、クライアントのインスタンス化ごとにアプリケーションキーとシークレットを必要とします:

var grabzIt = new GrabzItClient("YOUR_APPLICATION_KEY", "YOUR_APPLICATION_SECRET");
var grabzIt = new GrabzItClient("YOUR_APPLICATION_KEY", "YOUR_APPLICATION_SECRET");
Dim grabzIt As New GrabzItClient("YOUR_APPLICATION_KEY", "YOUR_APPLICATION_SECRET")
$vbLabelText   $csharpLabel

翻訳後(IronPDF):

// Set once at application startup
IronPdf.License.LicenseKey = "YOUR-IRONPDF-LICENSE-KEY";

// Then create renderer without credentials
var renderer = new ChromePdfRenderer();
// Set once at application startup
IronPdf.License.LicenseKey = "YOUR-IRONPDF-LICENSE-KEY";

// Then create renderer without credentials
var renderer = new ChromePdfRenderer();
' Set once at application startup
IronPdf.License.LicenseKey = "YOUR-IRONPDF-LICENSE-KEY"

' Then create renderer without credentials
Dim renderer As New ChromePdfRenderer()
$vbLabelText   $csharpLabel

ステップ 2: 名前空間インポートを更新する

// Before (GrabzIt)
using GrabzIt;
using GrabzIt.Parameters;

// After (IronPDF)
using IronPdf;
// Before (GrabzIt)
using GrabzIt;
using GrabzIt.Parameters;

// After (IronPDF)
using IronPdf;
Imports IronPdf
$vbLabelText   $csharpLabel

完全な API リファレンス

GrabzItClientからIronPDFへのマッピング

GrabzItメソッド IronPDF 同等物
new GrabzItClient(key, secret) new ChromePdfRenderer()
HTMLToPDF(html) renderer.RenderHtmlAsPdf(html)
URLToPDF(url) renderer.RenderUrlAsPdf(url)
HTMLToImage(html) pdf.ToBitmap()
Save(callbackUrl) pdf.SaveAs(path)
SaveTo(filePath) pdf.SaveAs(filePath)
GetResult(id) 該当なし
GetStatus(id) 該当なし

PDFOptionsからRenderingOptionsへのマッピング

GrabzIt PDFオプション IronPDF プロパティ
PageSize (A4、レター) RenderingOptions.PaperSize
CustomId 該当なし
MarginTop RenderingOptions.MarginTop
MarginBottom RenderingOptions.MarginBottom

ImageOptionsからIronPDFへのマッピング

GrabzIt ImageOptions IronPDF 同等物
Format (png, jpg) bitmap.Save(path, ImageFormat.Png)
Width RenderingOptions.ViewPortWidth
Height RenderingOptions.ViewPortHeight

コード移行の例

例1: HTMLからPDFへの変換

翻訳前 (GrabzIt):

// NuGet: Install-Package GrabzIt
using GrabzIt;
using GrabzIt.Parameters;
using System;

class Program
{
    static void Main()
    {
        var grabzIt = new GrabzItClient("YOUR_APPLICATION_KEY", "YOUR_APPLICATION_SECRET");
        var options = new PDFOptions();
        options.CustomId = "my-pdf";

        grabzIt.HTMLToPDF("<html><body><h1>Hello World</h1></body></html>", options);
        grabzIt.SaveTo("output.pdf");
    }
}
// NuGet: Install-Package GrabzIt
using GrabzIt;
using GrabzIt.Parameters;
using System;

class Program
{
    static void Main()
    {
        var grabzIt = new GrabzItClient("YOUR_APPLICATION_KEY", "YOUR_APPLICATION_SECRET");
        var options = new PDFOptions();
        options.CustomId = "my-pdf";

        grabzIt.HTMLToPDF("<html><body><h1>Hello World</h1></body></html>", options);
        grabzIt.SaveTo("output.pdf");
    }
}
Imports GrabzIt
Imports GrabzIt.Parameters
Imports System

Module Program
    Sub Main()
        Dim grabzIt As New GrabzItClient("YOUR_APPLICATION_KEY", "YOUR_APPLICATION_SECRET")
        Dim options As New PDFOptions()
        options.CustomId = "my-pdf"

        grabzIt.HTMLToPDF("<html><body><h1>Hello World</h1></body></html>", options)
        grabzIt.SaveTo("output.pdf")
    End Sub
End Module
$vbLabelText   $csharpLabel

翻訳後(IronPDF):

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

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        var pdf = renderer.RenderHtmlAsPdf("<html><body><h1>Hello World</h1></body></html>");
        pdf.SaveAs("output.pdf");
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;
using System;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        var pdf = renderer.RenderHtmlAsPdf("<html><body><h1>Hello World</h1></body></html>");
        pdf.SaveAs("output.pdf");
    }
}
Imports IronPdf
Imports System

Class Program
    Shared Sub Main()
        Dim renderer = New ChromePdfRenderer()
        Dim pdf = renderer.RenderHtmlAsPdf("<html><body><h1>Hello World</h1></body></html>")
        pdf.SaveAs("output.pdf")
    End Sub
End Class
$vbLabelText   $csharpLabel

違いは大きく、GrabzIt は API 資格情報 (YOUR_APPLICATION_SECRET) を必要とし、カスタム ID を持つ PDFOptions オブジェクトを作成し、結果として外部サーバー経由で送信される画像ベースの PDF が生成されます。IronPDFの ChromePdfRenderer は、資格情報、ネットワーク呼び出し、コールバックなしで、選択可能なテキストを含む真のベクター PDF をローカルで生成します。 その他のレンダリングオプションについては、HTML to PDF documentationを参照してください。

例2: URLからPDFへの変換

翻訳前 (GrabzIt):

// NuGet: Install-Package GrabzIt
using GrabzIt;
using GrabzIt.Parameters;
using System;

class Program
{
    static void Main()
    {
        var grabzIt = new GrabzItClient("YOUR_APPLICATION_KEY", "YOUR_APPLICATION_SECRET");
        var options = new PDFOptions();
        options.PageSize = PageSize.A4;

        grabzIt.URLToPDF("https://www.example.com", options);
        grabzIt.SaveTo("webpage.pdf");
    }
}
// NuGet: Install-Package GrabzIt
using GrabzIt;
using GrabzIt.Parameters;
using System;

class Program
{
    static void Main()
    {
        var grabzIt = new GrabzItClient("YOUR_APPLICATION_KEY", "YOUR_APPLICATION_SECRET");
        var options = new PDFOptions();
        options.PageSize = PageSize.A4;

        grabzIt.URLToPDF("https://www.example.com", options);
        grabzIt.SaveTo("webpage.pdf");
    }
}
Imports GrabzIt
Imports GrabzIt.Parameters
Imports System

Module Program
    Sub Main()
        Dim grabzIt As New GrabzItClient("YOUR_APPLICATION_KEY", "YOUR_APPLICATION_SECRET")
        Dim options As New PDFOptions()
        options.PageSize = PageSize.A4

        grabzIt.URLToPDF("https://www.example.com", options)
        grabzIt.SaveTo("webpage.pdf")
    End Sub
End Module
$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");
    }
}
Imports IronPdf
Imports System

Class Program
    Shared Sub Main()
        Dim renderer = New ChromePdfRenderer()
        Dim pdf = renderer.RenderUrlAsPdf("https://www.example.com")
        pdf.SaveAs("webpage.pdf")
    End Sub
End Class
$vbLabelText   $csharpLabel

GrabzIt では、オプション オブジェクトを通じて PageSize.A4 を設定し、外部サーバーで認証する必要があります。IronPDFの RenderUrlAsPdf() メソッドは URL を直接受け入れ、完全な CSS とJavaScript をサポートする完全な Chromium エンジンを使用してローカルでレンダリングします。 URLからPDFへの変換の詳細については、こちらをご覧ください。

例3: HTMLから画像への変換

翻訳前 (GrabzIt):

// NuGet: Install-Package GrabzIt
using GrabzIt;
using GrabzIt.Parameters;
using System;

class Program
{
    static void Main()
    {
        var grabzIt = new GrabzItClient("YOUR_APPLICATION_KEY", "YOUR_APPLICATION_SECRET");
        var options = new ImageOptions();
        options.Format = ImageFormat.png;
        options.Width = 800;
        options.Height = 600;

        grabzIt.HTMLToImage("<html><body><h1>Hello World</h1></body></html>", options);
        grabzIt.SaveTo("output.png");
    }
}
// NuGet: Install-Package GrabzIt
using GrabzIt;
using GrabzIt.Parameters;
using System;

class Program
{
    static void Main()
    {
        var grabzIt = new GrabzItClient("YOUR_APPLICATION_KEY", "YOUR_APPLICATION_SECRET");
        var options = new ImageOptions();
        options.Format = ImageFormat.png;
        options.Width = 800;
        options.Height = 600;

        grabzIt.HTMLToImage("<html><body><h1>Hello World</h1></body></html>", options);
        grabzIt.SaveTo("output.png");
    }
}
Imports GrabzIt
Imports GrabzIt.Parameters
Imports System

Module Program
    Sub Main()
        Dim grabzIt As New GrabzItClient("YOUR_APPLICATION_KEY", "YOUR_APPLICATION_SECRET")
        Dim options As New ImageOptions()
        options.Format = ImageFormat.png
        options.Width = 800
        options.Height = 600

        grabzIt.HTMLToImage("<html><body><h1>Hello World</h1></body></html>", options)
        grabzIt.SaveTo("output.png")
    End Sub
End Module
$vbLabelText   $csharpLabel

翻訳後(IronPDF):

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

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        var pdf = renderer.RenderHtmlAsPdf("<html><body><h1>Hello World</h1></body></html>");
        var images = pdf.ToBitmap();
        images[0].Save("output.png", System.Drawing.Imaging.ImageFormat.Png);
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;
using System;
using System.Drawing;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        var pdf = renderer.RenderHtmlAsPdf("<html><body><h1>Hello World</h1></body></html>");
        var images = pdf.ToBitmap();
        images[0].Save("output.png", System.Drawing.Imaging.ImageFormat.Png);
    }
}
Imports IronPdf
Imports System
Imports System.Drawing

Class Program
    Shared Sub Main()
        Dim renderer = New ChromePdfRenderer()
        Dim pdf = renderer.RenderHtmlAsPdf("<html><body><h1>Hello World</h1></body></html>")
        Dim images = pdf.ToBitmap()
        images(0).Save("output.png", System.Drawing.Imaging.ImageFormat.Png)
    End Sub
End Class
$vbLabelText   $csharpLabel

GrabzIt は、フォーマット、幅、高さの設定用に、専用の HTMLToImage() メソッドと ImageOptions を提供します。IronPDFは、最初に RenderHtmlAsPdf() を使用して HTML を PDF にレンダリングし、次に ToBitmap() を使用してビットマップに変換することで、同じ結果を実現します。 このアプローチでは、1回のレンダー操作でPDFと画像の両方の出力が得られます。


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

コールバックは必要ありません

最も重要なアーキテクチャの変更は、コールバック・ハンドラを完全に削除することです:

// GrabzIt: Async callback pattern
grabzIt.HTMLToPDF(html, options);
grabzIt.Save("https://myserver.com/grabzit-callback");  // Wait for callback...

// Callback handler (separate endpoint)
public class GrabzItHandler : IHttpHandler
{
    public void ProcessRequest(HttpContext context)
    {
        string id = context.Request.QueryString["id"];
        GrabzItClient grabzIt = new GrabzItClient("APP_KEY", "APP_SECRET");
        GrabzItFile file = grabzIt.GetResult(id);
        file.Save("output.pdf");
    }
}

// IronPDF: Synchronous - result immediately available
var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("output.pdf");  // Done! なし callback needed.
// GrabzIt: Async callback pattern
grabzIt.HTMLToPDF(html, options);
grabzIt.Save("https://myserver.com/grabzit-callback");  // Wait for callback...

// Callback handler (separate endpoint)
public class GrabzItHandler : IHttpHandler
{
    public void ProcessRequest(HttpContext context)
    {
        string id = context.Request.QueryString["id"];
        GrabzItClient grabzIt = new GrabzItClient("APP_KEY", "APP_SECRET");
        GrabzItFile file = grabzIt.GetResult(id);
        file.Save("output.pdf");
    }
}

// IronPDF: Synchronous - result immediately available
var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("output.pdf");  // Done! なし callback needed.
' GrabzIt: Async callback pattern
grabzIt.HTMLToPDF(html, options)
grabzIt.Save("https://myserver.com/grabzit-callback")  ' Wait for callback...

' Callback handler (separate endpoint)
Public Class GrabzItHandler
    Implements IHttpHandler

    Public Sub ProcessRequest(context As HttpContext) Implements IHttpHandler.ProcessRequest
        Dim id As String = context.Request.QueryString("id")
        Dim grabzIt As New GrabzItClient("APP_KEY", "APP_SECRET")
        Dim file As GrabzItFile = grabzIt.GetResult(id)
        file.Save("output.pdf")
    End Sub

    Public ReadOnly Property IsReusable As Boolean Implements IHttpHandler.IsReusable
        Get
            Return False
        End Get
    End Property
End Class

' IronPDF: Synchronous - result immediately available
Dim pdf = renderer.RenderHtmlAsPdf(html)
pdf.SaveAs("output.pdf")  ' Done! No callback needed.
$vbLabelText   $csharpLabel

移行後にすべてのGrabzItコールバック ハンドラー (.ashx ファイル、ハンドラー エンドポイント、Webhook 構成) を削除します

真のベクター PDF

GrabzItは、テキストを選択できない画像ベースのPDFを作成します。 IronPDFは真のベクターPDFを生成します:

// With IronPDF, text extraction works natively
var pdf = PdfDocument.FromFile("document.pdf");
string text = pdf.ExtractAllText();  // Works without OCR!
// With IronPDF, text extraction works natively
var pdf = PdfDocument.FromFile("document.pdf");
string text = pdf.ExtractAllText();  // Works without OCR!
Imports IronPdf

' With IronPDF, text extraction works natively
Dim pdf = PdfDocument.FromFile("document.pdf")
Dim text As String = pdf.ExtractAllText()  ' Works without OCR!
$vbLabelText   $csharpLabel

詳細については、テキスト抽出ドキュメントを参照してください。

ファイルサイズの縮小

ベクターベースのPDFは通常、GrabzItの画像ベースのPDFよりも5~10倍小さくなります。 これにより、ストレージコスト、ダウンロード時間、電子メール添付の実現性が向上します。

API認証情報の削除

GrabzItは、すべての操作にAPI認証情報を必要とします:

// Remove these from configuration
// YOUR_APPLICATION_KEY
// YOUR_APPLICATION_SECRET
// Remove these from configuration
// YOUR_APPLICATION_KEY
// YOUR_APPLICATION_SECRET
$vbLabelText   $csharpLabel

IronPDFはアプリケーション起動時に設定される単一のライセンスキーを使用します。


トラブルシューティング

問題 1: GrabzItClient が見つかりません

問題:GrabzItを削除した後、GrabzItClient 参照によってコンパイル エラーが発生します。

解決策: ChromePdfRenderer に置き換えます。

// Remove:
// var grabzIt = new GrabzItClient("KEY", "SECRET");

// Replace with:
var renderer = new ChromePdfRenderer();
// Remove:
// var grabzIt = new GrabzItClient("KEY", "SECRET");

// Replace with:
var renderer = new ChromePdfRenderer();
' Remove:
' Dim grabzIt = New GrabzItClient("KEY", "SECRET")

' Replace with:
Dim renderer = New ChromePdfRenderer()
$vbLabelText   $csharpLabel

問題2: PDFOptionsが見つかりません

問題: PDFOptions クラスがIronPDFに存在しません。

解決策: RenderingOptions プロパティを使用します:

// GrabzIt
var options = new PDFOptions();
options.PageSize = PageSize.A4;

// IronPDF
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
// GrabzIt
var options = new PDFOptions();
options.PageSize = PageSize.A4;

// IronPDF
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
' GrabzIt
Dim options As New PDFOptions()
options.PageSize = PageSize.A4

' IronPDF
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4
$vbLabelText   $csharpLabel

問題 3: コールバックハンドラはまだ参照されている

問題:アプリケーションはコールバック エンドポイントを想定しています。

解決策:コールバック インフラストラクチャを完全に削除します。 IronPDFは結果を同期的に返します。

問題4:ImageOptionsが見つかりません

問題: ImageOptions クラスがIronPDFに存在しません。

解決策:最初に PDF にレンダリングしてから変換します。

// GrabzIt
var options = new ImageOptions();
options.Format = ImageFormat.png;
grabzIt.HTMLToImage(html, options);

// IronPDF
var pdf = renderer.RenderHtmlAsPdf(html);
var images = pdf.ToBitmap();
images[0].Save("output.png", System.Drawing.Imaging.ImageFormat.Png);
// GrabzIt
var options = new ImageOptions();
options.Format = ImageFormat.png;
grabzIt.HTMLToImage(html, options);

// IronPDF
var pdf = renderer.RenderHtmlAsPdf(html);
var images = pdf.ToBitmap();
images[0].Save("output.png", System.Drawing.Imaging.ImageFormat.Png);
' GrabzIt
Dim options As New ImageOptions()
options.Format = ImageFormat.png
grabzIt.HTMLToImage(html, options)

' IronPDF
Dim pdf = renderer.RenderHtmlAsPdf(html)
Dim images = pdf.ToBitmap()
images(0).Save("output.png", System.Drawing.Imaging.ImageFormat.Png)
$vbLabelText   $csharpLabel

移行チェックリスト

移行前

  • コードベース内のすべてのGrabzIt API呼び出しをインベントリする
  • コールバックハンドラーとWebhookエンドポイントを識別する
  • 現在のGrabzItのオプションとテンプレートを文書化する
  • IronPDFライセンスキーを取得する
  • コールバックハンドラーの廃止を計画する

コードの移行

-IronPDFNuGetパッケージをインストールします: dotnet add package IronPdf -GrabzItNuGetパッケージを削除します: dotnet remove package GrabzIt

  • GrabzItClientChromePdfRenderer に置き換えます
  • HTMLToPDF()RenderHtmlAsPdf() に変換します
  • URLToPDF()RenderUrlAsPdf() に変換します
  • Save(callback)SaveAs(path) に置き換えます
  • オプションを PDFOptions から RenderingOptions に更新します

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

  • コールバック ハンドラー ファイルを削除します (.ashx など)
  • 設定からGrabzIt APIキーを削除する
  • Webhook URL 設定を削除する
  • IronPDFライセンスキーを設定に追加
  • ポーリング/ステータスチェックコードを削除する

テスティング

  • HTMLからPDFへの変換テスト
  • URLからPDFへの変換テスト
  • 出力PDFでテキストが選択可能であることを確認する
  • テキスト抽出が機能するかテストする(OCRなし)
  • ファイルサイズが小さいことを確認する
  • ネットワーク遅延のないパフォーマンステスト

移行後

  • GrabzItサブスクリプションをキャンセルする
  • アーカイブコールバックハンドラコード
  • ドキュメントの更新
  • GrabzIt関連のエラーを監視する

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

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

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

アイアンサポートチーム

私たちは週5日、24時間オンラインで対応しています。
チャット
メール
電話してね