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

PDFBolt'tan IronPDF'e C# ile Nasıl Geçilir

PDFBolt'tan IronPDF'ye geçiş, .NET PDF iş akışınızı harici belge işleme ile sadece bulut tabanlı bir SaaS hizmetinden, tam veri gizliliği ve sınırsız yerel üretim sunan kendi barındırılan bir kütüphaneye taşır. Bu kılavuz, ağ bağımlılıklarını, kullanım limitlerini ve harici veri aktarımını ortadan kaldırarak, PDFBolt'un sağlayamayacağı PDF manipülasyon özelliklerine erişiminizi sağlayan kapsamlı, adım adım bir geçiş yolu sağlar.

Neden PDFBolt'tan IronPDF'ye Geçilmeli

Sadece Bulut Problem

PDFBolt, belgelerinizi harici sunucularda işleyen sadece bulut tabanlı bir SaaS platformudur. Hızlı prototipler için uygun olsa da, bu mimari üretim uygulamaları için önemli zorluklar yaratır:

  1. Sadece Bulut İşleme: Her belge harici sunuculardan geçer—kendi barındırılan bir seçenek mevcut değildir, bu da verileri ve süreçleri üzerinde daha fazla kontrol isteyen işletmeleri caydırabilir.

  2. Veri Gizliliği Riskleri: Hassas belgeler (sözleşmeler, tıbbi kayıtlar, finansal veriler) harici olarak aktarılmalıdır. Hassas bilgilerle ilgilenen şirketler meşru endişelere sahip olacaktır.

  3. Kullanım Limitleri: Ücretsiz katman ayda 100 belge ile sınırlıdır, bu da daha büyük işletmeler için yeterli olmayabilir. Belge başına fiyatlandırma üretim yükleri için hızla birikir.

  4. Ağ Bağımlılığı: İnternet kesintileri veyaPDFBoltarıza süreleri, PDF oluşturmanın tamamen durduğu anlamına gelir.

  5. Gecikme: Ağ gidiş geliş süresi, yerel işlemeye kıyasla her dönüşüme saniyeler ekler.

  6. Uyumluluk Sorunları: GDPR, HIPAA ve SOC2 denetimleri harici belge işleme tarafından karmaşık hale getirilir.

  7. API Anahtar Güvenliği: Sızan API anahtarları hesabınıza fatura edilen yetkisiz kullanıma neden olabilir.

  8. Tedarikçi Bağımlılığı:PDFBoltşartları değiştirirse veya kapandığında uygulamanız başarısız olur.

PDFBolt vsIronPDFKarşılaştırması

Kaygı PDFBolt IronPDF
Veri Konumu Harici sunucular Sadece sizin sunuculariniz
Kullanım Sınırlamaları 100 ücretsiz, sonra belge başına Sınırsız
İnternet Gerekli Evet, her zaman Hayır
Gecikme Ağ gidiş-dönüşü Milisaniye
Uyumluluk Karmaşık (harici işleme) Basit (yerel işleme)
Maliyet Modeli Belge başına Tek seferlik veya yıllık
Çevrimdışı Çalışma İmkansız Tam destek
API Anahtar Riskleri Sızan = fatura edilir Lisans anahtarı, fatura riski yok

2025 ve 2026'ya kadar .NET 10 ve C# 14 uyarlamayı planlayan ekipler için IronPDF, tam veri gizliliğini sağlayan ve harici bulut hizmetlerine bağımlılığı ortadan kaldıran kendi barındırılan bir temel sağlar.


Başlamadan Önce

Önkoşullar

  1. .NET Ortamı: .NET Framework 4.6.2+ veya .NET Core 3.1+ / .NET 5/6/7/8/9+
  2. NuGet Erişimi: NuGet paketlerini yükleme yeteneği
  3. IronPDF Lisansı: Lisans anahtarınızı ironpdf.com adresinden edinin

NuGet Paket Değişiklikleri

# Remove PDFBolt
dotnet remove package PDFBolt

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

# Install IronPDF
dotnet add package IronPdf
SHELL

Lisans Yapılandırması

// Add at application startup (Program.cs or Startup.cs)
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
// Add at application startup (Program.cs or Startup.cs)
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
' Add at application startup (Program.vb or Startup.vb)
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY"
$vbLabelText   $csharpLabel

PDFBoltKullanımını Belirleme

# Find allPDFBoltreferences
grep -r "PDFBolt\|HtmlToPdfConverter\|ConvertHtmlString\|ConvertUrl" --include="*.cs" .

# Find API key references
grep -r "PDFBOLT\|ApiKey" --include="*.cs" --include="*.json" --include="*.config" .
# Find allPDFBoltreferences
grep -r "PDFBolt\|HtmlToPdfConverter\|ConvertHtmlString\|ConvertUrl" --include="*.cs" .

# Find API key references
grep -r "PDFBOLT\|ApiKey" --include="*.cs" --include="*.json" --include="*.config" .
SHELL

API Referansının Tamamı

Temel Sınıf Eşlemeleri

PDFBolt IronPDF
new HtmlToPdfConverter() new ChromePdfRenderer()
PageSize PdfPaperSize
(byte[] döner) PdfDocument

Dönüştürme Metod Eşleştirmeleri

PDFBolt IronPDF
converter.ConvertHtmlString(html) renderer.RenderHtmlAsPdf(html)
converter.ConvertUrl(url) renderer.RenderUrlAsPdf(url)

Çıktı Metod Eşleştirmeleri

PDFBolt IronPDF
File.WriteAllBytes(path, pdf) pdf.SaveAs(path)
(pdf byte[]) pdf.BinaryData
(manuel akış) pdf.Stream

Sayfa Yapılandırma Eşlemeleri

PDFBolt IronPDF
converter.PageSize = PageSize.A4 renderer.RenderingOptions.PaperSize = PdfPaperSize.A4
converter.MarginTop = 20 renderer.RenderingOptions.MarginTop = 20
converter.MarginBottom = 20 renderer.RenderingOptions.MarginBottom = 20
converter.MarginLeft = 15 renderer.RenderingOptions.MarginLeft = 15
converter.MarginRight = 15 renderer.RenderingOptions.MarginRight = 15

Başlık/Altbilgi Yer Tutucu Eşlemeleri

PDFBolt IronPDF
{pageNumber} {page}
{totalPages} {total-pages}
{date} {date}
{title} {html-title}

Kod Geçiş Örnekleri

Örnek 1: Temel HTML'den PDF'ye

Önce (PDFBolt):

// NuGet: Install-Package PDFBolt
using PDFBolt;
using System.IO;

class Program
{
    static void Main()
    {
        var converter = new HtmlToPdfConverter();
        var html = "<html><body><h1>Hello World</h1></body></html>";
        var pdf = converter.ConvertHtmlString(html);
        File.WriteAllBytes("output.pdf", pdf);
    }
}
// NuGet: Install-Package PDFBolt
using PDFBolt;
using System.IO;

class Program
{
    static void Main()
    {
        var converter = new HtmlToPdfConverter();
        var html = "<html><body><h1>Hello World</h1></body></html>";
        var pdf = converter.ConvertHtmlString(html);
        File.WriteAllBytes("output.pdf", pdf);
    }
}
Imports PDFBolt
Imports System.IO

Class Program
    Shared Sub Main()
        Dim converter = New HtmlToPdfConverter()
        Dim html = "<html><body><h1>Hello World</h1></body></html>"
        Dim pdf = converter.ConvertHtmlString(html)
        File.WriteAllBytes("output.pdf", pdf)
    End Sub
End Class
$vbLabelText   $csharpLabel

Sonra (IronPDF):

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

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        var 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.IO;

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

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

Buradaki temel fark dönüş türü ve kaydetme desenidir. PDFBolt'un HtmlToPdfConverter.ConvertHtmlString(), diske elle yazmanız gereken bir byte[] döndürür, File.WriteAllBytes() kullanarak. Bu, System.IO'i içe aktarmayı ve dosya işlemini kendiniz yapmayı gerektirir.

IronPDF'un ChromePdfRenderer.RenderHtmlAsPdf(), yerleşik SaveAs() yöntemiyle bir PdfDocument nesnesi döndürür. Bu nesne yonelimli yöntem ek faydalar sunar: kaydetmeden once PDF'yi (filigran ekleme, belgeleri birlestirme, guvenlik ekleme) manipule edebilirsiniz. Mevcut kodla uyumluluk için ham baytlara ihtiyaçınız varsa, pdf.BinaryData kullanın. 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 (PDFBolt):

// NuGet: Install-Package PDFBolt
using PDFBolt;
using System.IO;

class Program
{
    static void Main()
    {
        var converter = new HtmlToPdfConverter();
        var pdf = converter.ConvertUrl("https://www.example.com");
        File.WriteAllBytes("webpage.pdf", pdf);
    }
}
// NuGet: Install-Package PDFBolt
using PDFBolt;
using System.IO;

class Program
{
    static void Main()
    {
        var converter = new HtmlToPdfConverter();
        var pdf = converter.ConvertUrl("https://www.example.com");
        File.WriteAllBytes("webpage.pdf", pdf);
    }
}
Imports PDFBolt
Imports System.IO

Class Program
    Shared Sub Main()
        Dim converter = New HtmlToPdfConverter()
        Dim pdf = converter.ConvertUrl("https://www.example.com")
        File.WriteAllBytes("webpage.pdf", pdf)
    End Sub
End Class
$vbLabelText   $csharpLabel

Sonra (IronPDF):

// NuGet: Install-Package IronPdf
using IronPdf;

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;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        var pdf = renderer.RenderUrlAsPdf("https://www.example.com");
        pdf.SaveAs("webpage.pdf");
    }
}
Imports IronPdf

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

URL dönüşümü içinPDFBoltdeseni, HTML dönüşümüyle aynı yaklaşımı izler: ConvertUrl(), kaydetmek için File.WriteAllBytes() gerektirerek byte[] döndürür. PDFBolt'un, bir URL'den zaten alıyor olsanız bile sunucularına gidiş dönüşü hala gerektirdiğine dikkat edin.

IronPDF'un RenderUrlAsPdf() yöntemi, yerleşik SaveAs() yöntemiyle bir PdfDocument döndürür. Buradaki ana avantaj, IronPDF'nin URL'yi çekmesi ve PDF rendere etmesini yerel olarak gerçekleştirmesi—verileriniz yapınızı terk etmez.IronPDFsürümünün bu basit durumda using System.IO;'ye dahi ihtiyaç duymadığını fark edin. Daha fazla bilgi için URL'den PDF'ye dönüştürme hakkında bilgi edinin.

Örnek 3: Özel Sayfa Ayarlarına Sahip HTML Dosyası

Önce (PDFBolt):

// NuGet: Install-Package PDFBolt
using PDFBolt;
using System.IO;

class Program
{
    static void Main()
    {
        var converter = new HtmlToPdfConverter();
        converter.PageSize = PageSize.A4;
        converter.MarginTop = 20;
        converter.MarginBottom = 20;
        var html = File.ReadAllText("input.html");
        var pdf = converter.ConvertHtmlString(html);
        File.WriteAllBytes("output.pdf", pdf);
    }
}
// NuGet: Install-Package PDFBolt
using PDFBolt;
using System.IO;

class Program
{
    static void Main()
    {
        var converter = new HtmlToPdfConverter();
        converter.PageSize = PageSize.A4;
        converter.MarginTop = 20;
        converter.MarginBottom = 20;
        var html = File.ReadAllText("input.html");
        var pdf = converter.ConvertHtmlString(html);
        File.WriteAllBytes("output.pdf", pdf);
    }
}
Imports PDFBolt
Imports System.IO

Class Program
    Shared Sub Main()
        Dim converter As New HtmlToPdfConverter()
        converter.PageSize = PageSize.A4
        converter.MarginTop = 20
        converter.MarginBottom = 20
        Dim html As String = File.ReadAllText("input.html")
        Dim pdf As Byte() = converter.ConvertHtmlString(html)
        File.WriteAllBytes("output.pdf", pdf)
    End Sub
End Class
$vbLabelText   $csharpLabel

Sonra (IronPDF):

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

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
        renderer.RenderingOptions.MarginTop = 20;
        renderer.RenderingOptions.MarginBottom = 20;
        var html = File.ReadAllText("input.html");
        var pdf = renderer.RenderHtmlAsPdf(html);
        pdf.SaveAs("output.pdf");
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;
using IronPdf.Rendering;
using System.IO;

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
        renderer.RenderingOptions.MarginTop = 20;
        renderer.RenderingOptions.MarginBottom = 20;
        var html = File.ReadAllText("input.html");
        var pdf = renderer.RenderHtmlAsPdf(html);
        pdf.SaveAs("output.pdf");
    }
}
Imports IronPdf
Imports IronPdf.Rendering
Imports System.IO

Class Program
    Shared Sub Main()
        Dim renderer = New ChromePdfRenderer()
        renderer.RenderingOptions.PaperSize = PdfPaperSize.A4
        renderer.RenderingOptions.MarginTop = 20
        renderer.RenderingOptions.MarginBottom = 20
        Dim html = File.ReadAllText("input.html")
        Dim pdf = renderer.RenderHtmlAsPdf(html)
        pdf.SaveAs("output.pdf")
    End Sub
End Class
$vbLabelText   $csharpLabel

Bu örnek, sayfa yapılandırma farklılıklarını gösterir. PDFBolt, özellikleri dönüştürücü nesnesine doğrudan ayarlar (converter.PageSize, converter.MarginTop). IronPDF, yapımcı üzerinde bir RenderingOptions nesnesi kullanır (renderer.RenderingOptions.PaperSize, renderer.RenderingOptions.MarginTop).

Anahtar eşleştirmeler:

  • PageSize.A4PdfPaperSize.A4 (farklı enum adı)
  • MarginTop = 20RenderingOptions.MarginTop = 20 (RenderingOptions aracılığıyla)

Her ikisi de marjin değerleri için milimetre kullanır, bu yüzden mevcut marjin değerleriniz doğrudan aktarılmalıdır. IronPdf.Rendering ad alanı, PdfPaperSize enum'una erişim için gereklidir. Ek sayfa yapılandırma seçenekleri için, rendering options documentation'a bakınız.


Kritik Geçiş Notları

Dondurul Typi Değişikligi

PDFBolt, doğrudan byte[] döndürür; IronPDF, PdfDocument döndürür:

//PDFBoltpattern:
byte[] pdf = converter.ConvertHtmlString(html);
File.WriteAllBytes("output.pdf", pdf);

//IronPDFpattern:
var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("output.pdf");

// Or if you need bytes:
byte[] pdfBytes = renderer.RenderHtmlAsPdf(html).BinaryData;
//PDFBoltpattern:
byte[] pdf = converter.ConvertHtmlString(html);
File.WriteAllBytes("output.pdf", pdf);

//IronPDFpattern:
var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("output.pdf");

// Or if you need bytes:
byte[] pdfBytes = renderer.RenderHtmlAsPdf(html).BinaryData;
'PDFBoltpattern:
Dim pdf As Byte() = converter.ConvertHtmlString(html)
File.WriteAllBytes("output.pdf", pdf)

'IronPDFpattern:
Dim pdf = renderer.RenderHtmlAsPdf(html)
pdf.SaveAs("output.pdf")

' Or if you need bytes:
Dim pdfBytes As Byte() = renderer.RenderHtmlAsPdf(html).BinaryData
$vbLabelText   $csharpLabel

Sınıf İsimlendirme Değişikliği

Ana sınıf adı, dönüştürücü odaklıdan çizim odaklıya değişiyor:

// PDFBolt
var converter = new HtmlToPdfConverter();

// IronPDF
var renderer = new ChromePdfRenderer();
// PDFBolt
var converter = new HtmlToPdfConverter();

// IronPDF
var renderer = new ChromePdfRenderer();
' PDFBolt
Dim converter As New HtmlToPdfConverter()

' IronPDF
Dim renderer As New ChromePdfRenderer()
$vbLabelText   $csharpLabel

Yapılandırma Deseni Değişikliği

PDFBolt doğrudan özellikleri kullanır; IronPDF, RenderingOptions kullanır:

// PDFBolt: Direct properties
converter.PageSize = PageSize.A4;
converter.MarginTop = 20;

// IronPDF: Via RenderingOptions
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
renderer.RenderingOptions.MarginTop = 20;
// PDFBolt: Direct properties
converter.PageSize = PageSize.A4;
converter.MarginTop = 20;

// IronPDF: Via RenderingOptions
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
renderer.RenderingOptions.MarginTop = 20;
' PDFBolt: Direct properties
converter.PageSize = PageSize.A4
converter.MarginTop = 20

' IronPDF: Via RenderingOptions
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4
renderer.RenderingOptions.MarginTop = 20
$vbLabelText   $csharpLabel

API Anahtarı Kaldırma

PDFBolt her istek için API anahtarı yönetimi gerektirir;IronPDFbir kerelik lisans anahtarı kullanır:

// PDFBolt: API key per client (security risk if leaked)
var apiKey = config["PDFBolt:ApiKey"];
var client = new Client(apiKey);

// IronPDF: License key once at startup
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
var renderer = new ChromePdfRenderer();
// PDFBolt: API key per client (security risk if leaked)
var apiKey = config["PDFBolt:ApiKey"];
var client = new Client(apiKey);

// IronPDF: License key once at startup
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
var renderer = new ChromePdfRenderer();
' PDFBolt: API key per client (security risk if leaked)
Dim apiKey = config("PDFBolt:ApiKey")
Dim client = New Client(apiKey)

' IronPDF: License key once at startup
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY"
Dim renderer = New ChromePdfRenderer()
$vbLabelText   $csharpLabel

Ağ Hatası İşlemeyi Kaldır

Yerel işleme, işlenecek ağ hataları olmadığı anlamına gelir:

// PDFBolt: Network error handling required
catch (HttpRequestException ex)
catch (TaskCanceledException)
catch (TimeoutException)

// IronPDF: Remove network-specific catches entirely
// PDFBolt: Network error handling required
catch (HttpRequestException ex)
catch (TaskCanceledException)
catch (TimeoutException)

// IronPDF: Remove network-specific catches entirely
$vbLabelText   $csharpLabel

Kullanılabilir Yeni Özellikler

IronPDF'e geçtikten sonra, PDFBolt'un sağlayamayacağı yetenekler kazanırsınız:

// PDF Merging (not available in PDFBolt)
var merged = PdfDocument.Merge(pdf1, pdf2);

// Watermarks (not available in PDFBolt)
pdf.ApplyWatermark("<h1 style='opacity:0.3;'>DRAFT</h1>");

// Password Protection (not available in PDFBolt)
pdf.SecuritySettings.UserPassword = "secret";

// Text Extraction (not available in PDFBolt)
string text = pdf.ExtractAllText();

// PDF to Images (not available in PDFBolt)
pdf.RasterizeToImageFiles("page_*.png");
// PDF Merging (not available in PDFBolt)
var merged = PdfDocument.Merge(pdf1, pdf2);

// Watermarks (not available in PDFBolt)
pdf.ApplyWatermark("<h1 style='opacity:0.3;'>DRAFT</h1>");

// Password Protection (not available in PDFBolt)
pdf.SecuritySettings.UserPassword = "secret";

// Text Extraction (not available in PDFBolt)
string text = pdf.ExtractAllText();

// PDF to Images (not available in PDFBolt)
pdf.RasterizeToImageFiles("page_*.png");
' PDF Merging (not available in PDFBolt)
Dim merged = PdfDocument.Merge(pdf1, pdf2)

' Watermarks (not available in PDFBolt)
pdf.ApplyWatermark("<h1 style='opacity:0.3;'>DRAFT</h1>")

' Password Protection (not available in PDFBolt)
pdf.SecuritySettings.UserPassword = "secret"

' Text Extraction (not available in PDFBolt)
Dim text As String = pdf.ExtractAllText()

' PDF to Images (not available in PDFBolt)
pdf.RasterizeToImageFiles("page_*.png")
$vbLabelText   $csharpLabel

Ariza Giderme

Problem 1: HtmlToPdfConverter Bulunamadı

Problem: HtmlToPdfConverter sınıfı IronPDF'te mevcut değil.

Çözüm: ChromePdfRenderer kullanın:

// PDFBolt
var converter = new HtmlToPdfConverter();

// IronPDF
var renderer = new ChromePdfRenderer();
// PDFBolt
var converter = new HtmlToPdfConverter();

// IronPDF
var renderer = new ChromePdfRenderer();
' PDFBolt
Dim converter As New HtmlToPdfConverter()

' IronPDF
Dim renderer As New ChromePdfRenderer()
$vbLabelText   $csharpLabel

Sorun 2: ConvertHtmlString Bulunamadı

Problem: ConvertHtmlString() yöntemi mevcut değil.

Çözüm: RenderHtmlAsPdf() kullanın:

// PDFBolt
var pdf = converter.ConvertHtmlString(html);

// IronPDF
var pdf = renderer.RenderHtmlAsPdf(html);
// PDFBolt
var pdf = converter.ConvertHtmlString(html);

// IronPDF
var pdf = renderer.RenderHtmlAsPdf(html);
' PDFBolt
Dim pdf = converter.ConvertHtmlString(html)

' IronPDF
Dim pdf = renderer.RenderHtmlAsPdf(html)
$vbLabelText   $csharpLabel

Sorun 3: ConvertUrl Bulunamadı

Problem: ConvertUrl() metodu mevcut değil.

Çözüm: RenderUrlAsPdf() kullanın:

// PDFBolt
var pdf = converter.ConvertUrl(url);

// IronPDF
var pdf = renderer.RenderUrlAsPdf(url);
// PDFBolt
var pdf = converter.ConvertUrl(url);

// IronPDF
var pdf = renderer.RenderUrlAsPdf(url);
' PDFBolt
Dim pdf = converter.ConvertUrl(url)

' IronPDF
Dim pdf = renderer.RenderUrlAsPdf(url)
$vbLabelText   $csharpLabel

Sorun 4: PageSize Enum Bulunamadı

Problem: PageSize enumu mevcut değil.

Çözüm: PdfPaperSize kullanın IronPdf.Rendering'dan:

// PDFBolt
converter.PageSize = PageSize.A4;

// IronPDF
using IronPdf.Rendering;
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
// PDFBolt
converter.PageSize = PageSize.A4;

// IronPDF
using IronPdf.Rendering;
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
' PDFBolt
converter.PageSize = PageSize.A4

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

Sorun 5: İlk PDF Oluşturma Yavaş

Sorun: İlk çizim beklenenden uzun sürüyor.

Çözüm: Chromium motoru ilk kullanımda başlatılır. Gerekirse önceden ısıtın:

// Warm up during application startup
var renderer = new ChromePdfRenderer();
renderer.RenderHtmlAsPdf("<html><body></body></html>");
// Warm up during application startup
var renderer = new ChromePdfRenderer();
renderer.RenderHtmlAsPdf("<html><body></body></html>");
' Warm up during application startup
Dim renderer As New ChromePdfRenderer()
renderer.RenderHtmlAsPdf("<html><body></body></html>")
$vbLabelText   $csharpLabel

Goc Kontrol Listesi

Geçiş Öncesi

  • Kod tabanındaki tümPDFBoltkullanımlarını envanterleyin
  • Mevcut sayfa yapılandırma ayarlarını belgeleyin (PageSize, kenar boşlukları)
  • Kaldırılacak API anahtarı yönetim kodunu belirleyin
  • Silinecek oran sınırı veya ağ hatası işleme listesini oluşturun -IronPDFlisans anahtarını edinin

Paket Değişiklikleri

  • PDFBolt NuGet paketini kaldırın
  • IronPdf NuGet paketini kurun: dotnet add package IronPdf
  • using IronPdf; ad alanını ekleyin
  • Kağıt boyutu enumları için using IronPdf.Rendering; ekleyin

Kod Değişiklikleri

  • Başlangıçta lisans anahtarı yapılandırması ekleyin
  • HtmlToPdfConverter ile ChromePdfRenderer değiştirin
  • ConvertHtmlString() ile RenderHtmlAsPdf() değiştirin
  • ConvertUrl() ile RenderUrlAsPdf() değiştirin
  • File.WriteAllBytes() ile pdf.SaveAs() değiştirin
  • PageSize'yi RenderingOptions.PaperSize'e güncelleyin
  • Kenar boşluklarını RenderingOptions.MarginTop, vb. olarak güncelleyin.
  • API anahtarı yönetim kodunu kaldırın
  • Oran sınırlama işleme kodunu kaldırın
  • Ağ hatası işlemesini kaldırın

Geçişten Sonra

  • Konfigürasyon dosyalarından API anahtarını silin
  • Gizli yöneticilerden API anahtarını kaldırın
  • PDF çıktısını karşılaştırarak tüm testleri çalıştırın
  • Sayfa boyutları ve kenar boşluklarının doğru bir şekilde çizildiğini doğrulayın
  • Yeni yetenekler eklemeyi düşünün (filigranlar, güvenlik, birleştirme)

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