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

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

ExpertPdf, .NET içinOutside Software Inc.tarafından yayımlanan ticari bir HTML-to-PDF dönüştürücüdür. NuGet.org'daki en son sürüm v20.1.0 (Nisan 2025)'tir, bu nedenle paket hala aktif olarak yayımlanmaktadır — sürtünme ürün şeklinde, terk edilme değil. ExpertPdf, bir Trident (IE) motoru ve v12.2'de eklenen bir "WebKit2" motoru üzerinde çalışır; modern Chromium varsayılan değildir. Genel ComponentSource listeleri tarihsel olarak HtmlToPdf Converter'ın yaklaşık $550–$1,200 seviyesinde olduğunu göstermiştir (doğrudan satıcı ile teyit edin). Araç seti ayrıca ayrı NuGet paketlerine ayrılmıştır — HtmlToPdf, MergePdf, PdfSecurity, SplitPdf, PdfToImage, PdfCreator — her biri genellikle ayrı lisanslanmaktadır. Bu kılavuz, ExpertPdf'den IronPDF'ye adım adım göç yolunu sağlar, en son Chromium renderlı, sık güncellenen .NET PDF kütüphanesi ve tek bir paket ile.

Neden ExpertPdf'den IronPDF'ye Geçmeli?

ExpertPdf, geliştirme ekiplerinin modern alternatifleri değerlendirmesini gerektiren birçok zorluk sunuyor. Bu sorunları anlamak, göç stratejinizi planlamada esastır.

ExpertPdfProblemleri

  1. Seyrek belgeleme, yavaş kadans: Html-to-pdf.net üzerinde referans belgeleri mevcut, ancak eğitimler, özellik makaleleri ve değişiklik günlüğü girişleri seyrek. v20.1 (Nisan 2025) için sürüm notları "hata düzeltmeleri ve performans iyileştirmeleri" listeliyor — başlık özelliği yok.

  2. Daha eski render boru hatları: ExpertPdf, bir Trident (IE) motoru ve v12.2'de eklenen bir "WebKit2" motoru ile birlikte gelir; modern Chromium varsayılan değildir. Flexbox, Grid ve CSS değişkenlerini içeren CSS3 özellikleri, WebKit2 motorunda en iyi şekilde görüntülenir — geniş estaatlara göç etmeden önce hedef HTML'inize karşı doğrulayın.

  3. Yaşlanan yığın için premium fiyatlandırma: Genel ComponentSource listeleri tarihsel olarak HtmlToPdf Converter'ın yaklaşık $550–$1,200 seviyesinde olduğunu göstermiştir (doğrudan satıcı ile teyit edin - expertpdf.net'teki sipariş sayfasına yazım sırasında erişilemiyordu).

  4. Parçalı ürün grubu:ExpertPdfayrı paketler satıyor — ExpertPdf.HtmlToPdf.NetCore / ExpertPdfHtmlToPdf, ExpertPdf.MergePdf, ExpertPdf.PdfSecurity, ExpertPdf.SplitPdf, ExpertPdf.PdfToImage, ExpertPdf.PdfCreator — her biri genellikle ayrı lisanslanıyor.

  5. Doğal modern .NET hedefleri yok: .NetCore paketleri .NET Standard 2.0 / .NET Framework 4.6.1'i hedefliyor, bu yüzden .NET 5/6/7/8/9 üzerinde çalışıyorlar — ancak doğal çoklu hedef oluşturma, budama dostu derlemeler veya async-öncelikli API'ler elde edemiyorsunuz.

Mimari̇ Karşılaştırma

Aspekt ExpertPdf IronPDF
Satıcı Outside Software Inc. Iron Software
En son sürüm (nuget.org) v20.1.0 (Nisan 2025) Sürekli güncellenen
Dokümantasyon Yalnızca referans belgeleri, seyrek eğitimler Sürekli güncellenen
Render Motoru Trident (IE) + "WebKit2" (v12.2 eklendi) En yeni Chromium
CSS Desteği WebKit2'de CSS3 en iyi; miras üzerinde kısmi Tam CSS3 (Flexbox, Grid)
Fiyat ~$550–$1,200 (satıcı ile doğrulayın) ironpdf.com/pricing adresine bakın
Ürün Modeli Parçalanmış (6+ NuGet paketleri) Hepsi bir arada kütüphane
Modern .NET .NET Standard 2.0 (.NET 5-9 üzerinde çalışır) .NET 6/7/8/9+ çok hedefli
Asenkron Destek Sınırlı Tam async/await

Kilit Göç Faydaları

  1. Modern İşleme: En son Chromium motoru ile piksel mükemmeliyeti
  2. Hepsi bir Arada Paket: PDF oluşturma, birleştirme, güvenlik, tek bir NuGet'te çıkarma
  3. Aktif Gelişim: Yeni özellikler ve güvenlik yamaları ile aylık güncellemeler
  4. Daha İyi Dokümantasyon: Kapsamlı eğitimler ve örnekler
  5. Gerçek Çapraz Platform: Windows, Linux, macOS, Docker desteği

Migration'a Ön Hazırlık

Ön Koşullar

Ortamınızın bu gereksinimleri karşıladığından emin olun:

  • .NET Framework 4.6.2+ or .NET Core 3.1 / .NET 5-9
  • Visual Studio 2019+ veya C# eklentisi ile VS Code
  • NuGet Package Manager erişimi -IronPDF lisans anahtarı (ücretsiz deneme sürümü ironpdf.com adresinde mevcut)

ExpertPdfKullanımını Denetle

TümExpertPdfreferanslarını belirlemek için çözüm dizininizde bu komutları çalıştırın:

# Find allExpertPdfreferences
grep -r "ExpertPdf\|PdfConverter\|PDFMerge\|PdfSecurityManager" --include="*.cs" .

# Check NuGet packages
dotnet list package | grep -i "ExpertPdf"
# Find allExpertPdfreferences
grep -r "ExpertPdf\|PdfConverter\|PDFMerge\|PdfSecurityManager" --include="*.cs" .

# Check NuGet packages
dotnet list package | grep -i "ExpertPdf"
SHELL

Bakılması gereken genelExpertPdfpaketleri (nuget.org üzerinde tam adı doğrulayın — paket tutarsız büyük harf kullanıyor):

  • ExpertPdfHtmlToPdf (.NET Framework) / ExpertPdf.HtmlToPdf.NetCore (.NET Core / 5-9) — HTML to PDF
  • ExpertPdf.MergePdf — PDF birleştirme
  • ExpertPdf.PdfSecurity — şifreleme ve parolalar
  • ExpertPdf.SplitPdf — PDF ayırma
  • ExpertPdf.PdfToImage — PDF'den görüntüye dönüştürme
  • ExpertPdf.PdfCreator — tam PDF SDK'sı (çizim, formlar, imzalar)

Çekirdek Desen Değişimini Anlama

ExpertPdf, doğrudan bayt-dizisi dönen yöntemlerle PdfConverter kullanır. IronPDF, kaydetmeden önce ek manipulasyon yetenekleri sağlayan PdfDocument nesneleri döndüren ChromePdfRenderer kullanır.

Adım Adım Geçiş Süreci

1. Adım: NuGet Paketlerini Güncelleyin

TümExpertPdfpaketlerini kaldırın ve IronPDF yükleyin:

# Remove allExpertPdfpackages (use whichever variants you have installed)
dotnet remove package ExpertPdfHtmlToPdf
dotnet remove package ExpertPdf.HtmlToPdf.NetCore
dotnet remove package ExpertPdf.MergePdf
dotnet remove package ExpertPdf.PdfSecurity
dotnet remove package ExpertPdf.SplitPdf
dotnet remove package ExpertPdf.PdfToImage
dotnet remove package ExpertPdf.PdfCreator

# Install IronPDF(includes all features)
dotnet add package IronPdf
# Remove allExpertPdfpackages (use whichever variants you have installed)
dotnet remove package ExpertPdfHtmlToPdf
dotnet remove package ExpertPdf.HtmlToPdf.NetCore
dotnet remove package ExpertPdf.MergePdf
dotnet remove package ExpertPdf.PdfSecurity
dotnet remove package ExpertPdf.SplitPdf
dotnet remove package ExpertPdf.PdfToImage
dotnet remove package ExpertPdf.PdfCreator

# Install IronPDF(includes all features)
dotnet add package IronPdf
SHELL

Adım 2: Ad Alanı Referanslarını Güncelleyin

ExpertPdf ad alanlarınıIronPDF ile değiştirin:

// Remove these
using ExpertPdf.HtmlToPdf;

// Add this
using IronPdf;
// Remove these
using ExpertPdf.HtmlToPdf;

// Add this
using IronPdf;
Imports IronPdf
$vbLabelText   $csharpLabel

Adım 3: Lisansı Yapılandırın

ExpertPdf, dönüştürücü başına lisans kullanır. IronPDF, tek bir küresel lisans kullanır:

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

Tam API Geçiş Referansı

Temel Sınıf Eşlemeleri

ExpertPdfSınıfı IronPDF Eşdeğeri
PdfConverter ChromePdfRenderer
PdfDocumentOptions ChromePdfRenderOptions
PdfHeaderOptions TextHeaderFooter veya HtmlHeaderFooter
PdfFooterOptions TextHeaderFooter veya HtmlHeaderFooter
PDFMerge PdfDocument.Merge()

Metot Haritalama

ExpertPdfMetodu IronPDF Yöntemi
pdfConverter.GetPdfBytesFromHtmlString(html) renderer.RenderHtmlAsPdf(html).BinaryData
pdfConverter.GetPdfBytesFromUrl(url) renderer.RenderUrlAsPdf(url).BinaryData
pdfConverter.GetPdfBytesFromHtmlFile(path) renderer.RenderHtmlFileAsPdf(path).BinaryData
pdfConverter.SavePdfFromUrlToFile(url, path) renderer.RenderUrlAsPdf(url).SaveAs(path)

Seçenekler Eşleme

ExpertPdfSeçeneği IronPDF RenderingOptions
PdfDocumentOptions.PdfPageSize = PdfPageSize.A4 PaperSize = PdfPaperSize.A4
PdfDocumentOptions.PdfPageOrientation = Portrait PaperOrientation = PdfPaperOrientation.Portrait
PdfDocumentOptions.MarginTop MarginTop
PdfHeaderOptions.HeaderText TextHeader.CenterText
PdfFooterOptions.FooterText TextFooter.RightText

Sayfa Numaralandırma Simge Dönüşümü

ExpertPdf ve IronPDF, sayfa numaraları için farklı yer tutucu sözdizimi kullanır:

ExpertPdf IronPDF
&p; {page}
&P; {total-pages}

Kod Göç Örnekleri

HTML'den PDF'ye Dönüşüm

Temel HTML'den PDF'ye dönüştürme, ExpertPdf'ün byte dizisi deseninden IronPDF'in belge-nesne yaklaşımına geçişi gösterir.

ExpertPdf Uygulaması:

// NuGet: Install-Package ExpertPdf.HtmlToPdf
using ExpertPdf.HtmlToPdf;
using System;

class Program
{
    static void Main()
    {
        // Create the PDF converter
        PdfConverter pdfConverter = new PdfConverter();

        // Convert HTML string to PDF
        byte[] pdfBytes = pdfConverter.GetPdfBytesFromHtmlString("<h1>Hello World</h1><p>This is a PDF document.</p>");

        // Save to file
        System.IO.File.WriteAllBytes("output.pdf", pdfBytes);

        Console.WriteLine("PDF created successfully!");
    }
}
// NuGet: Install-Package ExpertPdf.HtmlToPdf
using ExpertPdf.HtmlToPdf;
using System;

class Program
{
    static void Main()
    {
        // Create the PDF converter
        PdfConverter pdfConverter = new PdfConverter();

        // Convert HTML string to PDF
        byte[] pdfBytes = pdfConverter.GetPdfBytesFromHtmlString("<h1>Hello World</h1><p>This is a PDF document.</p>");

        // Save to file
        System.IO.File.WriteAllBytes("output.pdf", pdfBytes);

        Console.WriteLine("PDF created successfully!");
    }
}
Imports ExpertPdf.HtmlToPdf
Imports System

Module Program
    Sub Main()
        ' Create the PDF converter
        Dim pdfConverter As New PdfConverter()

        ' Convert HTML string to PDF
        Dim pdfBytes As Byte() = pdfConverter.GetPdfBytesFromHtmlString("<h1>Hello World</h1><p>This is a PDF document.</p>")

        ' Save to file
        System.IO.File.WriteAllBytes("output.pdf", pdfBytes)

        Console.WriteLine("PDF created successfully!")
    End Sub
End Module
$vbLabelText   $csharpLabel

IronPDF Uygulaması:

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

class Program
{
    static void Main()
    {
        // Create a PDF from HTML string
        var renderer = new ChromePdfRenderer();
        var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1><p>This is a PDF document.</p>");

        // Save to file
        pdf.SaveAs("output.pdf");

        Console.WriteLine("PDF created successfully!");
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;
using System;

class Program
{
    static void Main()
    {
        // Create a PDF from HTML string
        var renderer = new ChromePdfRenderer();
        var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1><p>This is a PDF document.</p>");

        // Save to file
        pdf.SaveAs("output.pdf");

        Console.WriteLine("PDF created successfully!");
    }
}
Imports IronPdf
Imports System

Class Program
    Shared Sub Main()
        ' Create a PDF from HTML string
        Dim renderer = New ChromePdfRenderer()
        Dim pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1><p>This is a PDF document.</p>")

        ' Save to file
        pdf.SaveAs("output.pdf")

        Console.WriteLine("PDF created successfully!")
    End Sub
End Class
$vbLabelText   $csharpLabel

IronPDF'nin yaklaşımı, kaydetmeden önce ek manipulasyon (birleştirme, filigran ekleme, güvenlik) sağlayan bir PdfDocument nesnesi döndürür. Daha fazla seçenek için, HTML'den PDF'e dokümantasyona bakın.

Sayfa Ayarları ile URL'den PDF'e

ExpertPdf Uygulaması:

// NuGet: Install-Package ExpertPdf.HtmlToPdf
using ExpertPdf.HtmlToPdf;
using System;

class Program
{
    static void Main()
    {
        // Create the PDF converter
        PdfConverter pdfConverter = new PdfConverter();

        // Set page size and orientation
        pdfConverter.PdfDocumentOptions.PdfPageSize = PdfPageSize.A4;
        pdfConverter.PdfDocumentOptions.PdfPageOrientation = PdfPageOrientation.Portrait;

        // Convert URL to PDF
        byte[] pdfBytes = pdfConverter.GetPdfBytesFromUrl("https://www.example.com");

        // Save to file
        System.IO.File.WriteAllBytes("webpage.pdf", pdfBytes);

        Console.WriteLine("PDF from URL created successfully!");
    }
}
// NuGet: Install-Package ExpertPdf.HtmlToPdf
using ExpertPdf.HtmlToPdf;
using System;

class Program
{
    static void Main()
    {
        // Create the PDF converter
        PdfConverter pdfConverter = new PdfConverter();

        // Set page size and orientation
        pdfConverter.PdfDocumentOptions.PdfPageSize = PdfPageSize.A4;
        pdfConverter.PdfDocumentOptions.PdfPageOrientation = PdfPageOrientation.Portrait;

        // Convert URL to PDF
        byte[] pdfBytes = pdfConverter.GetPdfBytesFromUrl("https://www.example.com");

        // Save to file
        System.IO.File.WriteAllBytes("webpage.pdf", pdfBytes);

        Console.WriteLine("PDF from URL created successfully!");
    }
}
Imports ExpertPdf.HtmlToPdf
Imports System

Module Program
    Sub Main()
        ' Create the PDF converter
        Dim pdfConverter As New PdfConverter()

        ' Set page size and orientation
        pdfConverter.PdfDocumentOptions.PdfPageSize = PdfPageSize.A4
        pdfConverter.PdfDocumentOptions.PdfPageOrientation = PdfPageOrientation.Portrait

        ' Convert URL to PDF
        Dim pdfBytes As Byte() = pdfConverter.GetPdfBytesFromUrl("https://www.example.com")

        ' Save to file
        System.IO.File.WriteAllBytes("webpage.pdf", pdfBytes)

        Console.WriteLine("PDF from URL created successfully!")
    End Sub
End Module
$vbLabelText   $csharpLabel

IronPDF Uygulaması:

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

class Program
{
    static void Main()
    {
        // Create a PDF renderer
        var renderer = new ChromePdfRenderer();

        // Set page size and orientation
        renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
        renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Portrait;

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

        // Save to file
        pdf.SaveAs("webpage.pdf");

        Console.WriteLine("PDF from URL created successfully!");
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;
using System;

class Program
{
    static void Main()
    {
        // Create a PDF renderer
        var renderer = new ChromePdfRenderer();

        // Set page size and orientation
        renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
        renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Portrait;

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

        // Save to file
        pdf.SaveAs("webpage.pdf");

        Console.WriteLine("PDF from URL created successfully!");
    }
}
Imports IronPdf
Imports System

Class Program
    Shared Sub Main()
        ' Create a PDF renderer
        Dim renderer = New ChromePdfRenderer()

        ' Set page size and orientation
        renderer.RenderingOptions.PaperSize = PdfPaperSize.A4
        renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Portrait

        ' Convert URL to PDF
        Dim pdf = renderer.RenderUrlAsPdf("https://www.example.com")

        ' Save to file
        pdf.SaveAs("webpage.pdf")

        Console.WriteLine("PDF from URL created successfully!")
    End Sub
End Class
$vbLabelText   $csharpLabel

IronPDF'nin RenderingOptions sayfa yapılandırması için doğrudan özellik erişimi sağlar. Daha fazla seçenek için, URL'den PDF'e dokümantas bakın.

Sayfa Numaralı Başlıklar ve Alt Bilgiler

Bu örnek, başlık/altbilgi yapılandırmasındaki kritik farkı gösteriyor —ExpertPdfayrı PdfHeaderOptions ve PdfFooterOptions sınıflarını &P; belirteçleri ile kullanırken,IronPDFTextHeaderFooter ile {total-pages} yer tutucularını kullanır.

ExpertPdf Uygulaması:

// NuGet: Install-Package ExpertPdf.HtmlToPdf
using ExpertPdf.HtmlToPdf;
using System;

class Program
{
    static void Main()
    {
        // Create the PDF converter
        PdfConverter pdfConverter = new PdfConverter();

        // Enable header
        pdfConverter.PdfHeaderOptions.ShowHeader = true;
        pdfConverter.PdfHeaderOptions.HeaderText = "Document Header";
        pdfConverter.PdfHeaderOptions.HeaderTextAlignment = HorizontalTextAlign.Center;

        // Enable footer with page numbers
        pdfConverter.PdfFooterOptions.ShowFooter = true;
        pdfConverter.PdfFooterOptions.FooterText = "Page &p; of &P;";
        pdfConverter.PdfFooterOptions.FooterTextAlignment = HorizontalTextAlign.Right;

        // Convert HTML file to PDF
        byte[] pdfBytes = pdfConverter.GetPdfBytesFromHtmlFile("input.html");

        // Save to file
        System.IO.File.WriteAllBytes("output-with-header-footer.pdf", pdfBytes);

        Console.WriteLine("PDF with headers and footers created successfully!");
    }
}
// NuGet: Install-Package ExpertPdf.HtmlToPdf
using ExpertPdf.HtmlToPdf;
using System;

class Program
{
    static void Main()
    {
        // Create the PDF converter
        PdfConverter pdfConverter = new PdfConverter();

        // Enable header
        pdfConverter.PdfHeaderOptions.ShowHeader = true;
        pdfConverter.PdfHeaderOptions.HeaderText = "Document Header";
        pdfConverter.PdfHeaderOptions.HeaderTextAlignment = HorizontalTextAlign.Center;

        // Enable footer with page numbers
        pdfConverter.PdfFooterOptions.ShowFooter = true;
        pdfConverter.PdfFooterOptions.FooterText = "Page &p; of &P;";
        pdfConverter.PdfFooterOptions.FooterTextAlignment = HorizontalTextAlign.Right;

        // Convert HTML file to PDF
        byte[] pdfBytes = pdfConverter.GetPdfBytesFromHtmlFile("input.html");

        // Save to file
        System.IO.File.WriteAllBytes("output-with-header-footer.pdf", pdfBytes);

        Console.WriteLine("PDF with headers and footers created successfully!");
    }
}
Imports ExpertPdf.HtmlToPdf
Imports System

Class Program
    Shared Sub Main()
        ' Create the PDF converter
        Dim pdfConverter As New PdfConverter()

        ' Enable header
        pdfConverter.PdfHeaderOptions.ShowHeader = True
        pdfConverter.PdfHeaderOptions.HeaderText = "Document Header"
        pdfConverter.PdfHeaderOptions.HeaderTextAlignment = HorizontalTextAlign.Center

        ' Enable footer with page numbers
        pdfConverter.PdfFooterOptions.ShowFooter = True
        pdfConverter.PdfFooterOptions.FooterText = "Page &p; of &P;"
        pdfConverter.PdfFooterOptions.FooterTextAlignment = HorizontalTextAlign.Right

        ' Convert HTML file to PDF
        Dim pdfBytes As Byte() = pdfConverter.GetPdfBytesFromHtmlFile("input.html")

        ' Save to file
        System.IO.File.WriteAllBytes("output-with-header-footer.pdf", pdfBytes)

        Console.WriteLine("PDF with headers and footers created successfully!")
    End Sub
End Class
$vbLabelText   $csharpLabel

IronPDF Uygulaması:

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

class Program
{
    static void Main()
    {
        // Create a PDF renderer
        var renderer = new ChromePdfRenderer();

        // Configure header
        renderer.RenderingOptions.TextHeader = new TextHeaderFooter()
        {
            CenterText = "Document Header",
            DrawDividerLine = true
        };

        // Configure footer with page numbers
        renderer.RenderingOptions.TextFooter = new TextHeaderFooter()
        {
            RightText = "Page {page} of {total-pages}",
            DrawDividerLine = true
        };

        // Convert HTML file to PDF
        var pdf = renderer.RenderHtmlFileAsPdf("input.html");

        // Save to file
        pdf.SaveAs("output-with-header-footer.pdf");

        Console.WriteLine("PDF with headers and footers created successfully!");
    }
}
// NuGet: Install-Package IronPdf
using IronPdf;
using System;

class Program
{
    static void Main()
    {
        // Create a PDF renderer
        var renderer = new ChromePdfRenderer();

        // Configure header
        renderer.RenderingOptions.TextHeader = new TextHeaderFooter()
        {
            CenterText = "Document Header",
            DrawDividerLine = true
        };

        // Configure footer with page numbers
        renderer.RenderingOptions.TextFooter = new TextHeaderFooter()
        {
            RightText = "Page {page} of {total-pages}",
            DrawDividerLine = true
        };

        // Convert HTML file to PDF
        var pdf = renderer.RenderHtmlFileAsPdf("input.html");

        // Save to file
        pdf.SaveAs("output-with-header-footer.pdf");

        Console.WriteLine("PDF with headers and footers created successfully!");
    }
}
Imports IronPdf
Imports System

Class Program
    Shared Sub Main()
        ' Create a PDF renderer
        Dim renderer = New ChromePdfRenderer()

        ' Configure header
        renderer.RenderingOptions.TextHeader = New TextHeaderFooter() With {
            .CenterText = "Document Header",
            .DrawDividerLine = True
        }

        ' Configure footer with page numbers
        renderer.RenderingOptions.TextFooter = New TextHeaderFooter() With {
            .RightText = "Page {page} of {total-pages}",
            .DrawDividerLine = True
        }

        ' Convert HTML file to PDF
        Dim pdf = renderer.RenderHtmlFileAsPdf("input.html")

        ' Save to file
        pdf.SaveAs("output-with-header-footer.pdf")

        Console.WriteLine("PDF with headers and footers created successfully!")
    End Sub
End Class
$vbLabelText   $csharpLabel

IronPDF'nin TextHeaderFooter isteğe bağlı ayırıcı çizgiler ile LeftText, CenterText ve RightText özelliklerini sağlar. HTML tabanlı başlıklar için HtmlHeaderFooter kullanın. Daha fazla seçenek için başlıklar ve altbilgiler belgelerine bakın.

Kritik Taşıma Notları

Lisans Anahtarı Konumu

ExpertPdf, dönüştürücü başına lisans kullanır. IronPDF, başlangıçta bir kez ayarlanan tek bir küresel lisans kullanır:

//ExpertPdf- per converter
pdfConverter.LicenseKey = "EXPERTPDF-LICENSE";

//IronPDF- global, set once
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
//ExpertPdf- per converter
pdfConverter.LicenseKey = "EXPERTPDF-LICENSE";

//IronPDF- global, set once
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
'ExpertPdf- per converter
pdfConverter.LicenseKey = "EXPERTPDF-LICENSE"

'IronPDF- global, set once
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY"
$vbLabelText   $csharpLabel

Sayfa Numaralandırma Simge Dönüşümü

ExpertPdf simgelerini IronPDF yer tutucuları ile değiştirin:

// ExpertPdf
"Page &p; of &P;"

// IronPDF
"Page {page} of {total-pages}"
// ExpertPdf
"Page &p; of &P;"

// IronPDF
"Page {page} of {total-pages}"
$vbLabelText   $csharpLabel

Parçalı Paketler Konsolide Edildi

ExpertPdf'in ayrı paketleri (PDFMerge, PDFSecurity, PDFSplit, PdfToImage) hepsi IronPDF'nin tek bir paketine dahildir:

//ExpertPdf- requires separate ExpertPdf.MergePdf package
PDFMerge merger = new PDFMerge();
merger.AppendPDFFile("file1.pdf");
merger.AppendPDFFile("file2.pdf");
merger.SaveMergedPDFToFile("merged.pdf");

//IronPDF- included in main package
var pdf1 = PdfDocument.FromFile("file1.pdf");
var pdf2 = PdfDocument.FromFile("file2.pdf");
var merged = PdfDocument.Merge(pdf1, pdf2);
merged.SaveAs("merged.pdf");
//ExpertPdf- requires separate ExpertPdf.MergePdf package
PDFMerge merger = new PDFMerge();
merger.AppendPDFFile("file1.pdf");
merger.AppendPDFFile("file2.pdf");
merger.SaveMergedPDFToFile("merged.pdf");

//IronPDF- included in main package
var pdf1 = PdfDocument.FromFile("file1.pdf");
var pdf2 = PdfDocument.FromFile("file2.pdf");
var merged = PdfDocument.Merge(pdf1, pdf2);
merged.SaveAs("merged.pdf");
' ExpertPdf- requires separate ExpertPdf.MergePdf package
Dim merger As New PDFMerge()
merger.AppendPDFFile("file1.pdf")
merger.AppendPDFFile("file2.pdf")
merger.SaveMergedPDFToFile("merged.pdf")

' IronPDF- included in main package
Dim pdf1 = PdfDocument.FromFile("file1.pdf")
Dim pdf2 = PdfDocument.FromFile("file2.pdf")
Dim merged = PdfDocument.Merge(pdf1, pdf2)
merged.SaveAs("merged.pdf")
$vbLabelText   $csharpLabel

Daha fazla birleştirme seçeneği için lütfen PDF birleştirme dokümantasyonuna bakın.

Özel Sayfa Boyutları

ExpertPdf puan kullanır.IronPDF milimetre kullanır. Dönüştür: points / 72 * 25.4 = mm

Taşınma Sonrası Kontrollistesi

Kod taşımasını tamamladıktan sonra, aşağıdakileri doğrulayın:

  • Oluşturulan PDF'lerin görsel karşılaştırması
  • Başlıklar/altbilgiler ve sayfa numaralarını doğrulayın
  • Güvenlik/şifreleme ayarlarını test edin
  • Birleştirme işlemlerini doğrulayın
  • Özel sayfa boyutlarını kontrol edin
  • Performans kıyaslaması
  • Çapraz platform testleri yapın -ExpertPdflisans dosyalarını kaldırın
  • Belgeleri güncelleyin

Ek Kaynaklar


ExpertPdf'den IronPDF'ye geçiş, seyrek belgeleme, eski render boru hatları ve parçalanmış ürün lisanslamasını aktif olarak bakımı yapılan son Chromium motorlu bir kütüphane ile değiştirir—mevcut web standartları ve modern .NET hedeflerine uyum içinde PDF üretimini tutar.

Lütfen dikkate alınExpertPDF, kendi ilgili sahibinin tescilli markasıdır (Outside Software Inc.). Bu site,Outside Software Inc.ile ilişkili, onaylanmış ya da desteklenmiş değildir. Tüm ürün isimleri, logolar ve markalar, kendi ilgili sahiplerinin mülkleridir. Karşılaştırmalar, yalnızca bilgilendirme amaçlıdır ve yazı sırasında halka açık bilgilerle alakalı olarak yansıtılmaktadır.

Curtis Chau
Teknik Yazar

Curtis Chau, Bilgisayar Bilimleri alanında Lisans Derecesine (Carleton Üniversitesi) sahip ve Node.js, TypeScript, JavaScript ve React konularında uzmanlaşmış ön uç geliştirmeyle ilgileniyor. Sezgisel ve estetik açıdan hoş kullanıcı arayüzleri oluşturma tutkunu, Curtis modern çerçevelerle çalışmayı ve iyi yapı...

Daha Fazla Oku

Iron Destek Ekibi

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