Altbilgi içeriğine atla
GEçIş KıLAVUZLARı

GrabzIt'ten IronPDF'e C# ile Nasıl Geçilir

GrabzIt'ten IronPDF'ye geçiş yapmak, .NET PDF iş akışınızı, geri arama karmaşıklığına sahip bulut tabanlı bir ekran görüntüsü yakalama hizmetinden, seçilebilir, aranabilir metin içeren gerçek vektör PDF'leri oluşturan bir süreç içi kütüphaneye dönüştürür. Bu kılavuz, harici sunucu bağımlılıklarını, geri arama işleyicilerini ve görüntüleme başına fiyatlandırmayı ortadan kaldıran kapsamlı ve adım adım bir geçiş yolu sunar.

Neden GrabzIt'ten IronPDF'ye Geçiş Yapmalısınız

GrabzItMimari Sorunu

GrabzIt, bulut tabanlı ekran görüntüsü ve PDF yakalama hizmetidir. Hızlı entegrasyonlar için uygun olsa da, temel mimari sınırlamaları vardır:

  1. Görüntü Tabanlı PDF'ler: GrabzIt, metnin seçilemez olduğu yapı ekran görüntüsü tabanlı PDF'ler oluşturur—esasen PDF formatında paketlenmiş görüntülerdir. Metin manipülasyonu veya erişilebilirlik gerektiren herhangi bir kullanım durumu için bu temel bir sınırlamadır.

  2. Harici İşleme: Tüm içerik işlenmek üzere GrabzIt'in sunucularına gönderilir—gizlilik ve hassas veri uyumu ile ilgili endişeler doğar. HTML içeriğiniz altyapınızı terk eder.

  3. Geri Arama Karmaşıklığı: GrabzIt, geri çağrı ve webhook işleme altyapısı gerektiren asenkron geri arama modelini kullanır. Sonuçları almak için uç noktalar kurmanız gerekir, bu da mimari karmaşıklık ekler.

  4. Yakalama Başına Fiyatlandırma: Kullanım başına ödemeli model, ölçeklendikçe pahalı olabilir. Her PDF oluşturma bir maliyet getirir.

  5. Metin Araması Yok: PDF'ler görüntü tabanlı olduğunda, metin arama ve çıkarma işlemeye gerek duyar—ek bir adım ve maliyettir.

  6. Daha Büyük Dosya Boyutları: Görüntü tabanlı PDF'ler, vektör tabanlı PDF'lerden önemli ölçüde daha büyüktür, genellikle 5-10 katı büyüklüktedir.

  7. Ağ Bağımlılığı: İnternet bağlantısı olmadan PDF'ler oluşturmak mümkün değildir, bu da çevrimdışı senaryoları imkânsız hale getirir.

  8. Gecikme: Her PDF oluşturma, harici sunuculara ağ turu gerektirir, 500ms-5s gecikme ekler.

GrabzIt vsIronPDFKarşılaştırması

Bağlam GrabzIt IronPDF
PDF Türü Görüntü tabanlı (ekran görüntüsü) Gerçek vektör PDF
Metin Seçimi Mümkün değil Tam metin seçimi
Metin Arama OCR gerektirir Yerel olarak aranabilir
İşleme Konumu Harici sunucular Yerel/işlem-içi
Gizlilik Veri dışarıya gönderilir Veri yerel kalır
Gecikme Ağ turu (500ms-5s) Yerel işleme (~100ms)
Fiyatlandırma Modeli Çekim başına Geliştirici başına lisans
Çevrimdışı Yeteneği Hayır Evet
Dosya Boyutu Büyük (görüntü verisi) Küçük (vektör verisi)
Geri Arama Gerekli Evet (asenkron) Hayır (eşzamanlı/asenkron)
CSS/JS Desteği Sınırlı Tam Chromium motoru

2025 ve 2026 yılları boyunca .NET 10 ve C# 14 uyarlaması planlayan ekipler için,IronPDFyerel işleme ile modern .NET desenleriyle doğal olarak entegre olan geleceğe dayalı bir temel sağlar.


Göç Karmaşıklık Değerlendirmesi

Özelliklere Göre Tahmini Çaba

Özellik Göç Karmaşıklığı
HTML'den PDF'ye Çok Düşük
URL'den PDF'ye Çok Düşük
HTML'den Görüntüye Low
Sayfa Boyutu/Kenar Boşlukları Low
Geri Arama İşleyicileri Low
Filigranlar Low
Üstbilgi/Altbilgi Medium
Kimlik Doğrulama Anahtarları Çok Düşük

Paradigma Değişikliği

BuGrabzItgeçişindeki temel değişiklik, asenkron geri çağrı tabanlı bulut işlemden eşzamanlı süreç içi üretime geçiştir:

GrabzIt:   HTML gönder → Geri çağrı bekle → Sunucudan sonuç al
IronPDF:   HTML'yi İşle → PDF'yi hemen al

Başlamadan Önce

Önkoşullar

  1. .NET Sürümü: IronPDF, .NET Framework 4.6.2+ ve .NET Core 3.1+ / .NET 5/6/7/8/9+ destekler
  2. Lisans Anahtarı:IronPDFlisans anahtarınızı ironpdf.com'dan alın
  3. Altyapı Kaldırma Planı: Geri çağrı işleyicilerini ve servis uç noktalarını devreden çıkarmak için dökümantasyon yapın

TümGrabzItKullanımını Belirleyin

# 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 Paket Değişiklikleri

# 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

Hızlı Başlangıç Göçü

Adım 1: Lisans Yapılandırmasını Güncelleyin

Önce (GrabzIt):

GrabzIt, her istemci başlangıcı için uygulama anahtarı ve sır gerektirir:

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

Sonra (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

Adım 2: Ad Alanı Dışarı Aktarımlarını Güncelleyin

// 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 Referansının Tamamı

GrabzItClient'tan IronPDF'ye Eşleme

GrabzItYöntemi IronPDF Eşdeğeri
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) N/A
GetStatus(id) N/A

PDFOptions ve RenderingOptions Eşlemesi

GrabzIt PDFOptions IronPDF Özelliği
PageSize (A4, Letter) RenderingOptions.PaperSize
CustomId N/A
MarginTop RenderingOptions.MarginTop
MarginBottom RenderingOptions.MarginBottom

ImageOptions veIronPDFEşlemesi

GrabzIt ImageOptions IronPDF Eşdeğeri
Format (png, jpg) bitmap.Save(path, ImageFormat.Png)
Width RenderingOptions.ViewPortWidth
Height RenderingOptions.ViewPortHeight

Kod Geçiş Örnekleri

Örnek 1: HTML'den PDF'e Dönüştürme

Önce (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

Sonra (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

Fark önemlidir:GrabzItAPI kimlik bilgileri gerektirir (YOUR_APPLICATION_KEY, YOUR_APPLICATION_SECRET), özel bir kimlikle PDFOptions nesnesi oluşturur ve sonuç, harici sunucular üzerinden gönderilen bir görüntü tabanlı PDF'dir. IronPDF'nin ChromePdfRenderer yerel olarak seçilebilir metinle gerçek bir vektör PDF oluşturur—kimlik bilgileri, ağ çağrıları veya geri aramalar yoktur. Daha fazla işleme seçeneği için HTML'den PDF'ye dokümantasyonuna bakın.

Örnek 2: URL'den PDF'e Dönüştürme

Önce (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

Sonra (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, seçenekler nesnesi üzerinden PageSize.A4 yapılandırmayı ve harici sunucularla kimlik doğrulamayı gerektirir. IronPDF'nin RenderUrlAsPdf() metodu URL'yi doğrudan kabul eder ve tamamıyla CSS ve JavaScript desteğiyle full Chromium motorunu kullanarak yerel olarak işler. URL'den PDF'ye dönüşüm hakkında daha fazla bilgi edinin.

Örnek 3: HTML'den Görüntüye Dönüşüm

Önce (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

Sonra (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, format, genişlik ve yükseklik yapılandırması için ImageOptions ile özel bir HTMLToImage() yöntemi sunar.IronPDFaynı sonucu elde etmek için önce HTML'yi RenderHtmlAsPdf() kullanarak PDF'ye işler, ardından ToBitmap() ile bitmap'e dönüştürür. Bu yaklaşım, tek bir görüntüleme işlemiyle hem PDF hem de görüntü çıktısı elde etmenizi sağlar.


Kritik Geçiş Notları

Geri Çağrımlar Gerekmiyor

En önemli mimari değişiklik, geri çağrım işleyicilerini tamamen ortadan kaldırmaktır:

// 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!Hayırcallback 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!Hayırcallback needed.
Imports System.Web

' 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

TümGrabzItgeri arama işlemcilerini silin (göç sonrası .ashx dosyaları, işlemci uç noktaları, webhook yapılandırması).

Gerçek Vektör PDF'ler

GrabzIt metin seçilemez olan görüntü tabanlı PDF'ler oluşturur.IronPDFgerçek vektör PDF'ler üretir:

// 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

Daha fazla ayrıntı için metin çıkarma belgelerini inceleyin.

Daha Küçük Dosya Boyutları

Vektör tabanlı PDF'ler tipik olarak GrabzIt'in görüntü tabanlı PDF'lerinden 5-10 kat daha küçüktür. Bu, depolama maliyetlerini, indirme sürelerini ve e-posta eki uygunluğunu iyileştirir.

API Kimlik Bilgilerini Kaldır

GrabzIt her işlem için API kimlik bilgileri gerektirir:

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

IronPDF, uygulama başlangıcında bir kerede ayarlanmış tek bir lisans anahtarı kullanır—istek başına kimlik doğrulama gerektirmez.


Ariza Giderme

Sorun 1: GrabzItClient Bulunamadı

Sorun: GrabzIt'i kaldırdıktan sonra, GrabzItClient referansları derleme hatalarına neden oluyor.

Çözüm: ChromePdfRenderer ile değiştirin:

// 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

Sorun 2: PDFOptions Bulunamadı

Sorun: PDFOptions sınıfı IronPDF'de mevcut değil.

Çözüm: RenderingOptions özelliğini kullanın:

// 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

Sorun 3: Geri Çağrım İşleyicileri Hala Referanslı

Problem: Uygulama, geri çağrım uç noktaları bekliyor.

Çözüm: Geri çağrım altyapısını tamamen silin.IronPDFsonuçları senkronize olarak döndürür—webhooklara ihtiyaç yok.

Sorun 4: ImageOptions Bulunamadı

Sorun: ImageOptions sınıfı IronPDF'de mevcut değil.

Çözüm: İlk önce PDF'ye dönüştürün, ardından:

// 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

Goc Kontrol Listesi

Geçiş Öncesi

  • Kod tabanındaki tümGrabzItAPI çağrılarını envanterleyin
  • Geri çağrım işleyicilerini ve webhook uç noktalarını belirleyin
  • MevcutGrabzItseçeneklerini ve şablonlarını belgeleyin -IronPDFlisans anahtarını edinin
  • Geri çağrım işleyici kullanımdan kaldırılmasını planlayın

Kod Göçü

  • IronPdf NuGet paketini yükleyin: dotnet add package IronPdf -GrabzItNuGet paketini kaldırın: dotnet remove package GrabzIt
  • GrabzItClient ile ChromePdfRenderer değiştirin
  • HTMLToPDF() 'yi RenderHtmlAsPdf() 'ye dönüştürün
  • URLToPDF() 'yi RenderUrlAsPdf() 'ye dönüştürün
  • Save(callback) ile SaveAs(path) değiştirin
  • Seçenekleri PDFOptions 'den RenderingOptions 'ye güncelleyin

Altyapı Geçişi

  • Geri arama işleyici dosyalarını silin (.ashx, vb.)
  • YapılandırmadanGrabzItAPI anahtarlarını kaldırın
  • Webhook URL yapılandırmasını kaldırın
  • YapılandırmayaIronPDFlisans anahtarı ekleyin
  • Anket/durum kontrolü kodunu kaldırın

Test Etme

  • HTML'den PDF'ye donusumu test edin
  • URL'den PDF'ye donusumu test edin
  • Çıktı PDF'lerinde metnin seçilebilir olduğunu doğrulayın
  • Metin çıkarmanın çalıştığını test edin (OCR olmadan)
  • Dosya boyutlarının daha küçük olduğunu doğrulayın
  • Ağ gecikmesi olmadan performans testi yapın

Geçişten Sonra

-GrabzItaboneliğini iptal edin

  • Geri çağrım işleyici kodunu arşivleyin
  • Belgeleri güncelleyin -GrabzItile ilgili hataları izleyin

Curtis Chau
Teknik Yazar

Curtis Chau, Bilgisayar Bilimleri alanında lisans derecesine sahiptir (Carleton Üniversitesi) ve Node.js, TypeScript, JavaScript ve React konularında uzmanlaşmış ön uç geliştirme üzerine uzmanlaşmıştır. Kullanıcı dostu ve estetik açıdan hoş arayüzler tasarlamaya tutkuyla bağlı olan Curtis, modern çerç...

Daha Fazlasını Oku

Iron Destek Ekibi

Haftanın 5 günü, 24 saat çevrimiçiyiz.
Sohbet
E-posta
Beni Ara