ComPDFKit'ten IronPDF'e C# ile Nasıl Geçilir
ComPDFKit, sağlam PDF manipülasyon özellikleri sunarken, birkaç faktör geliştirme ekiplerini daha köklü alternatifleri değerlendirmeye yönlendirir.
Pazar Olgunluğu ve Ekosistem Karşılaştırması
ComPDFKit, yeni piyasa girişimlerinin ortak sorunlarıyla karşı karşıyadır: dokümantasyon boşlukları, daha küçük bir topluluk ve sınırlı Stack Overflow kapsamı. IronPDF'in on yıllık rafinasyonu, kurumsal projelerin ihtiyaç duyduğu istikrarı ve kaynakları sağlar.
| Aspekt | ComPDFKit | IronPDF |
|---|---|---|
| HTML-PDF | Manuel HTML ayrıştırma gerektirir | Yerel Chromium işleme |
| Pazar Olgunluğu | Daha yeni oyuncu | 10+ yıl, savaş sınanmış |
| Topluluk Büyüklüğü | Küçük, sınırlı Stack Overflow | Büyük, aktif topluluk |
| Dokümantasyon | Bazı boşluklar | Kapsamlı öğreticiler ve kılavuzlar |
| İndir | Büyüyen | 10+ milyon NuGet indirmesi |
| API Stili | C++ etkilenmiş, verbose | Modern .NET akıcı API |
| Bellek Yönetimi | Manuel Release() çağrıları |
Otomatik GC yönetimi |
Özellik Eşdeğerliği
Her iki kütüphane de kapsamlı PDF işlevselliğini destekler:
| Özellik | ComPDFKit | IronPDF |
|---|---|---|
| HTML'den PDF'ye | Temel/Manuel | ✅Yerel Chromium |
| URL'yi PDF'ye çevir | Manuel uygulama | ✅Yerleşik |
| Sıfırdan PDF oluştur | ✅ | ✅ |
| PDF düzenleme | ✅ | ✅ |
| Metin çıkarma | ✅ | ✅ |
| Birleştirme/Bölme | ✅ | ✅ |
| Dijital imzalar | ✅ | ✅ |
| Form doldurma | ✅ | ✅ |
| Filigranlar | ✅ | ✅ |
| Çapraz platform | Windows, Linux, macOS | Windows, Linux, macOS |
Kilit Göç Faydaları
- Üstün HTML Render: IronPDF'in Chromium motoru, modern CSS3, JavaScript ve responsive yerleşimleri yerel olarak işler
- Olgun Ekosistem: 10+ yıl boyunca rafine edilme, geniş dokümantasyon, kanıtlanmış istikrar
- Daha Basit API: Daha az boilerplate kodu,
Release()çağrıları ile manuel bellek yönetimi yok - Daha İyi .NET Entegrasyonu: Yerel async/await, LINQ desteği, akıcı arayüzler
- Kapsamlı Kaynaklar: Binlerce Stack Overflow yanıtı ve topluluk örnekleri
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)
ComPDFKitKullanım Denetimi
TümComPDFKitreferanslarını belirlemek için çözüm dizininizde bu komutları çalıştırın:
# Find allComPDFKitusages in your codebase
grep -r "using ComPDFKit" --include="*.cs" .
grep -r "CPDFDocument\|CPDFPage\|CPDFAnnotation" --include="*.cs" .
# Find NuGet package references
grep -r "ComPDFKit" --include="*.csproj" .
# Find allComPDFKitusages in your codebase
grep -r "using ComPDFKit" --include="*.cs" .
grep -r "CPDFDocument\|CPDFPage\|CPDFAnnotation" --include="*.cs" .
# Find NuGet package references
grep -r "ComPDFKit" --include="*.csproj" .
Beklenebilecek Kırıcı Değişiklikler
| Değişim | ComPDFKit | IronPDF | Etki |
|---|---|---|---|
| Belge yükleme | CPDFDocument.InitWithFilePath() |
PdfDocument.FromFile() |
Yöntem adı değişikliği |
| Kaydetme | document.WriteToFilePath() |
pdf.SaveAs() |
Yöntem adı değişikliği |
| Bellek temizleme | document.Release() gereklidir |
Otomatik (GC) | Manuel temizlemeyi kaldır |
| Sayfa erişimi | document.PageAtIndex(i) |
pdf.Pages[i] |
Dizi tarzı erişim |
| Sayfa dizinleme | 0 tabanlı | 0 tabanlı | Değişim gerekmez |
| HTML render | Manuel uygulama | RenderHtmlAsPdf() |
Büyük basitleştirme |
| Metin çıkarımı | textPage.GetText() |
pdf.ExtractAllText() |
Basitleştirilmiş API |
Adım Adım Geçiş Süreci
1. Adım: NuGet Paketlerini Güncelleyin
ComPDFKit paketlerini kaldırın ve IronPDF'i yükleyin:
# RemoveComPDFKitpackages
dotnet remove package ComPDFKit.NetCore
dotnet remove package ComPDFKit.NetFramework
# Install IronPDF
dotnet add package IronPdf
# RemoveComPDFKitpackages
dotnet remove package ComPDFKit.NetCore
dotnet remove package ComPDFKit.NetFramework
# Install IronPDF
dotnet add package IronPdf
Adım 2: Ad Alanı Referanslarını Güncelleyin
ComPDFKit ad alanlarınıIronPDF ile değiştirin:
// Remove these
using ComPDFKit.PDFDocument;
using ComPDFKit.PDFPage;
using ComPDFKit.PDFAnnotation;
using ComPDFKit.Import;
// Add this
using IronPdf;
// Remove these
using ComPDFKit.PDFDocument;
using ComPDFKit.PDFPage;
using ComPDFKit.PDFAnnotation;
using ComPDFKit.Import;
// Add this
using IronPdf;
Imports IronPdf
Adım 3: Lisansı Yapılandırın
// Add at application startup (Program.cs or Global.asax)
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
// Add at application startup (Program.cs or Global.asax)
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
' Add at application startup (Program.vb or Global.asax)
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY"
Tam API Geçiş Referansı
Belge İşlemleri
| Görev | ComPDFKit | IronPDF |
|---|---|---|
| Boş belge oluştur | CPDFDocument.CreateDocument() |
new PdfDocument() |
| Dosyadan yükle | CPDFDocument.InitWithFilePath(path) |
PdfDocument.FromFile(path) |
| Akıştan yükle | CPDFDocument.InitWithStream(stream) |
PdfDocument.FromStream(stream) |
| Dosyaya kaydet | document.WriteToFilePath(path) |
pdf.SaveAs(path) |
| Sayfa sayısını al | document.PageCount |
pdf.PageCount |
| Serbest bırakma/İmha | document.Release() |
Gerekli değil |
HTML'den PDF'ye Dönüşüm
| Görev | ComPDFKit | IronPDF |
|---|---|---|
| HTML dizgisi PDF'ye | Manuel uygulama gerekli | renderer.RenderHtmlAsPdf(html) |
| HTML dosyasını PDF'ye | Manuel uygulama gerekli | renderer.RenderHtmlFileAsPdf(path) |
| URL'yi PDF'ye çevir | Manuel uygulama gerekli | renderer.RenderUrlAsPdf(url) |
| Sayfa boyutunu ayarla | Sayfa oluşturma parametreleri ile | renderer.RenderingOptions.PaperSize |
| Kenar boşluklarını ayarla | Düzenleyici yapılandırması ile | renderer.RenderingOptions.MarginTop vb. |
Birleştirme ve Bölme İşlemleri
| Görev | ComPDFKit | IronPDF |
|---|---|---|
| Belgeleri birleştir | doc1.ImportPagesAtIndex(doc2, range, index) |
PdfDocument.Merge(pdf1, pdf2) |
| Belgeyi ayır | Sayfaları yeni bir belgeye çıkart | pdf.CopyPages(start, end) |
Kod Göç Örnekleri
HTML'den PDF'ye Dönüşüm
ComPDFKit ile IronPDF arasındaki en önemli fark HTML işleme yeteneğidir.Com/PDFKitmanuel metin yerleştirme gerektirirken,IronPDF kendi Chromium motoru ile HTML'yi doğrudan işler.
ComPDFKit Uygulaması:
// NuGet: Install-Package ComPDFKit.NetCore
using ComPDFKit.PDFDocument;
using System;
class Program
{
static void Main()
{
// ComPDFKit's .NET SDK has no native HTML-to-PDF rendering.
// The closest equivalent is to create a blank document and lay
// out primitives manually, or call ComPDFKit's separate cloud
// Conversion API (a different SKU).
var document = CPDFDocument.CreateDocument();
document.InsertPage(0, 595, 842, string.Empty);
document.WriteToFilePath("output.pdf");
document.Release();
}
}
// NuGet: Install-Package ComPDFKit.NetCore
using ComPDFKit.PDFDocument;
using System;
class Program
{
static void Main()
{
// ComPDFKit's .NET SDK has no native HTML-to-PDF rendering.
// The closest equivalent is to create a blank document and lay
// out primitives manually, or call ComPDFKit's separate cloud
// Conversion API (a different SKU).
var document = CPDFDocument.CreateDocument();
document.InsertPage(0, 595, 842, string.Empty);
document.WriteToFilePath("output.pdf");
document.Release();
}
}
Imports ComPDFKit.PDFDocument
Imports System
Module Program
Sub Main()
' ComPDFKit's .NET SDK has no native HTML-to-PDF rendering.
' The closest equivalent is to create a blank document and lay
' out primitives manually, or call ComPDFKit's separate cloud
' Conversion API (a different SKU).
Dim document = CPDFDocument.CreateDocument()
document.InsertPage(0, 595, 842, String.Empty)
document.WriteToFilePath("output.pdf")
document.Release()
End Sub
End Module
IronPDF Uygulaması:
// NuGet: Install-Package IronPdf
using IronPdf;
using System;
class Program
{
static void Main()
{
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1><p>This is HTML content.</p>");
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("<h1>Hello World</h1><p>This is HTML content.</p>");
pdf.SaveAs("output.pdf");
}
}
Imports IronPdf
Imports System
Class Program
Shared Sub Main()
Dim renderer = New ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1><p>This is HTML content.</p>")
pdf.SaveAs("output.pdf")
End Sub
End Class
IronPDF'nin ChromePdfRenderer manuel metin konumlandırma ve editör yönetimi ihtiyacını ortadan kaldırır. Daha fazla HTML dönüşüm seçeneği için HTML'den PDF'ye belgelerine bakın.
Birden Fazla PDF'yi Birleştirme
ComPDFKit Uygulaması:
// NuGet: Install-Package ComPDFKit.NetCore
using ComPDFKit.PDFDocument;
using ComPDFKit.Import;
using System;
class Program
{
static void Main()
{
var document1 = CPDFDocument.InitWithFilePath("file1.pdf");
var document2 = CPDFDocument.InitWithFilePath("file2.pdf");
// Import pages from document2 into document1
document1.ImportPagesAtIndex(document2, "0-" + (document2.PageCount - 1), document1.PageCount);
document1.WriteToFilePath("merged.pdf");
document1.Release();
document2.Release();
}
}
// NuGet: Install-Package ComPDFKit.NetCore
using ComPDFKit.PDFDocument;
using ComPDFKit.Import;
using System;
class Program
{
static void Main()
{
var document1 = CPDFDocument.InitWithFilePath("file1.pdf");
var document2 = CPDFDocument.InitWithFilePath("file2.pdf");
// Import pages from document2 into document1
document1.ImportPagesAtIndex(document2, "0-" + (document2.PageCount - 1), document1.PageCount);
document1.WriteToFilePath("merged.pdf");
document1.Release();
document2.Release();
}
}
Imports ComPDFKit.PDFDocument
Imports ComPDFKit.Import
Imports System
Module Program
Sub Main()
Dim document1 = CPDFDocument.InitWithFilePath("file1.pdf")
Dim document2 = CPDFDocument.InitWithFilePath("file2.pdf")
' Import pages from document2 into document1
document1.ImportPagesAtIndex(document2, "0-" & (document2.PageCount - 1), document1.PageCount)
document1.WriteToFilePath("merged.pdf")
document1.Release()
document2.Release()
End Sub
End Module
IronPDF Uygulaması:
// NuGet: Install-Package IronPdf
using IronPdf;
using System;
using System.Collections.Generic;
class Program
{
static void Main()
{
var pdf1 = PdfDocument.FromFile("file1.pdf");
var pdf2 = PdfDocument.FromFile("file2.pdf");
var merged = PdfDocument.Merge(new List<PdfDocument> { pdf1, pdf2 });
merged.SaveAs("merged.pdf");
}
}
// NuGet: Install-Package IronPdf
using IronPdf;
using System;
using System.Collections.Generic;
class Program
{
static void Main()
{
var pdf1 = PdfDocument.FromFile("file1.pdf");
var pdf2 = PdfDocument.FromFile("file2.pdf");
var merged = PdfDocument.Merge(new List<PdfDocument> { pdf1, pdf2 });
merged.SaveAs("merged.pdf");
}
}
Imports IronPdf
Imports System
Imports System.Collections.Generic
Module Program
Sub Main()
Dim pdf1 = PdfDocument.FromFile("file1.pdf")
Dim pdf2 = PdfDocument.FromFile("file2.pdf")
Dim merged = PdfDocument.Merge(New List(Of PdfDocument) From {pdf1, pdf2})
merged.SaveAs("merged.pdf")
End Sub
End Module
IronPDF'nin statik Merge metodu, sayfa aralığı dizgileriyle uzun ImportPagesAtIndex desenini ortadan kaldırır. Daha fazla seçenek için PDF birleştirme belgelerine bakın.
Filigran Ekleme
Filigran, ComPDFKit'in özellik odaklı CPDFWatermark yapılandırması ile IronPDF'nin HTML tabanlı stilini arasındaki farkı gösterir.
ComPDFKit Uygulaması:
// NuGet: Install-Package ComPDFKit.NetCore
using ComPDFKit.PDFDocument;
using ComPDFKit.PDFWatermark;
using System;
class Program
{
static void Main()
{
var document = CPDFDocument.InitWithFilePath("input.pdf");
CPDFWatermark watermark = document.InitWatermark(
C_Watermark_Type.WATERMARK_TYPE_TEXT);
watermark.SetText("CONFIDENTIAL");
watermark.SetFontName("Helvetica");
watermark.SetFontSize(48);
watermark.SetTextRGBColor(255, 0, 0);
watermark.SetRotation(45);
watermark.SetOpacity(76); // 0..255
watermark.SetVertalign(C_Watermark_Vertalign.WATERMARK_VERTALIGN_CENTER);
watermark.SetHorizalign(C_Watermark_Horizalign.WATERMARK_HORIZALIGN_CENTER);
watermark.SetPages($"0-{document.PageCount - 1}");
watermark.SetFront(true);
watermark.CreateWatermark();
document.WriteToFilePath("watermarked.pdf");
document.Release();
}
}
// NuGet: Install-Package ComPDFKit.NetCore
using ComPDFKit.PDFDocument;
using ComPDFKit.PDFWatermark;
using System;
class Program
{
static void Main()
{
var document = CPDFDocument.InitWithFilePath("input.pdf");
CPDFWatermark watermark = document.InitWatermark(
C_Watermark_Type.WATERMARK_TYPE_TEXT);
watermark.SetText("CONFIDENTIAL");
watermark.SetFontName("Helvetica");
watermark.SetFontSize(48);
watermark.SetTextRGBColor(255, 0, 0);
watermark.SetRotation(45);
watermark.SetOpacity(76); // 0..255
watermark.SetVertalign(C_Watermark_Vertalign.WATERMARK_VERTALIGN_CENTER);
watermark.SetHorizalign(C_Watermark_Horizalign.WATERMARK_HORIZALIGN_CENTER);
watermark.SetPages($"0-{document.PageCount - 1}");
watermark.SetFront(true);
watermark.CreateWatermark();
document.WriteToFilePath("watermarked.pdf");
document.Release();
}
}
Imports ComPDFKit.PDFDocument
Imports ComPDFKit.PDFWatermark
Imports System
Class Program
Shared Sub Main()
Dim document = CPDFDocument.InitWithFilePath("input.pdf")
Dim watermark As CPDFWatermark = document.InitWatermark(C_Watermark_Type.WATERMARK_TYPE_TEXT)
watermark.SetText("CONFIDENTIAL")
watermark.SetFontName("Helvetica")
watermark.SetFontSize(48)
watermark.SetTextRGBColor(255, 0, 0)
watermark.SetRotation(45)
watermark.SetOpacity(76) ' 0..255
watermark.SetVertalign(C_Watermark_Vertalign.WATERMARK_VERTALIGN_CENTER)
watermark.SetHorizalign(C_Watermark_Horizalign.WATERMARK_HORIZALIGN_CENTER)
watermark.SetPages($"0-{document.PageCount - 1}")
watermark.SetFront(True)
watermark.CreateWatermark()
document.WriteToFilePath("watermarked.pdf")
document.Release()
End Sub
End Class
IronPDF Uygulaması:
// NuGet: Install-Package IronPdf
using IronPdf;
using IronPdf.Editing;
using System;
class Program
{
static void Main()
{
var pdf = PdfDocument.FromFile("input.pdf");
pdf.ApplyWatermark("<h1 style='color:rgba(255,0,0,0.3);'>CONFIDENTIAL</h1>",
rotation: 45,
verticalAlignment: VerticalAlignment.Middle,
horizontalAlignment: HorizontalAlignment.Center);
pdf.SaveAs("watermarked.pdf");
}
}
// NuGet: Install-Package IronPdf
using IronPdf;
using IronPdf.Editing;
using System;
class Program
{
static void Main()
{
var pdf = PdfDocument.FromFile("input.pdf");
pdf.ApplyWatermark("<h1 style='color:rgba(255,0,0,0.3);'>CONFIDENTIAL</h1>",
rotation: 45,
verticalAlignment: VerticalAlignment.Middle,
horizontalAlignment: HorizontalAlignment.Center);
pdf.SaveAs("watermarked.pdf");
}
}
Imports IronPdf
Imports IronPdf.Editing
Imports System
Module Program
Sub Main()
Dim pdf = PdfDocument.FromFile("input.pdf")
pdf.ApplyWatermark("<h1 style='color:rgba(255,0,0,0.3);'>CONFIDENTIAL</h1>",
rotation:=45,
verticalAlignment:=VerticalAlignment.Middle,
horizontalAlignment:=HorizontalAlignment.Center)
pdf.SaveAs("watermarked.pdf")
End Sub
End Module
IronPDF, HTML/CSS stili ile çok aşamalı CPDFWatermark yapılandırmayı tek bir yöntem çağrısına indirir. Daha fazla seçenek için, filigran belgesine bakın.
Metin Çıkarma
ComPDFKit Uygulaması:
using ComPDFKit.PDFDocument;
using System.Text;
var document = CPDFDocument.InitWithFilePath("document.pdf");
// Extract text (verbose)
var allText = new StringBuilder();
for (int i = 0; i < document.PageCount; i++)
{
var page = document.PageAtIndex(i);
var textPage = page.GetTextPage();
allText.AppendLine(textPage.GetText(0, textPage.CountChars()));
textPage.Release();
page.Release();
}
document.WriteToFilePath("output.pdf");
document.Release(); // Must remember to release!
using ComPDFKit.PDFDocument;
using System.Text;
var document = CPDFDocument.InitWithFilePath("document.pdf");
// Extract text (verbose)
var allText = new StringBuilder();
for (int i = 0; i < document.PageCount; i++)
{
var page = document.PageAtIndex(i);
var textPage = page.GetTextPage();
allText.AppendLine(textPage.GetText(0, textPage.CountChars()));
textPage.Release();
page.Release();
}
document.WriteToFilePath("output.pdf");
document.Release(); // Must remember to release!
Imports ComPDFKit.PDFDocument
Imports System.Text
Dim document = CPDFDocument.InitWithFilePath("document.pdf")
' Extract text (verbose)
Dim allText As New StringBuilder()
For i As Integer = 0 To document.PageCount - 1
Dim page = document.PageAtIndex(i)
Dim textPage = page.GetTextPage()
allText.AppendLine(textPage.GetText(0, textPage.CountChars()))
textPage.Release()
page.Release()
Next
document.WriteToFilePath("output.pdf")
document.Release() ' Must remember to release!
IronPDF Uygulaması:
using IronPdf;
var pdf = PdfDocument.FromFile("document.pdf");
// Extract text (one-liner)
string allText = pdf.ExtractAllText();
pdf.SaveAs("output.pdf");
// No Release() needed - GC handles cleanup
using IronPdf;
var pdf = PdfDocument.FromFile("document.pdf");
// Extract text (one-liner)
string allText = pdf.ExtractAllText();
pdf.SaveAs("output.pdf");
// No Release() needed - GC handles cleanup
Imports IronPdf
Dim pdf = PdfDocument.FromFile("document.pdf")
' Extract text (one-liner)
Dim allText As String = pdf.ExtractAllText()
pdf.SaveAs("output.pdf")
' No Release() needed - GC handles cleanup
IronPDF, manuel Release() çağrıları ile çok satırlı metin çıkarmayı tek bir yönteme indirir. Daha fazla çıkarma seçeneği için metin çıkarma belgelerine bakın.
Şifre Koruma
IronPDF Uygulaması:
using IronPdf;
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf("<h1>Confidential Document</h1>");
// Set security
pdf.SecuritySettings.UserPassword = "userPassword";
pdf.SecuritySettings.OwnerPassword = "ownerPassword";
pdf.SecuritySettings.AllowUserPrinting = PdfPrintSecurity.FullPrintRights;
pdf.SecuritySettings.AllowUserCopyPasteContent = false;
pdf.SaveAs("protected.pdf");
using IronPdf;
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf("<h1>Confidential Document</h1>");
// Set security
pdf.SecuritySettings.UserPassword = "userPassword";
pdf.SecuritySettings.OwnerPassword = "ownerPassword";
pdf.SecuritySettings.AllowUserPrinting = PdfPrintSecurity.FullPrintRights;
pdf.SecuritySettings.AllowUserCopyPasteContent = false;
pdf.SaveAs("protected.pdf");
Imports IronPdf
Dim renderer As New ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlAsPdf("<h1>Confidential Document</h1>")
' Set security
pdf.SecuritySettings.UserPassword = "userPassword"
pdf.SecuritySettings.OwnerPassword = "ownerPassword"
pdf.SecuritySettings.AllowUserPrinting = PdfPrintSecurity.FullPrintRights
pdf.SecuritySettings.AllowUserCopyPasteContent = False
pdf.SaveAs("protected.pdf")
Kapsamlı güvenlik seçenekleri için şifreleme belgelerine bakın.
Kritik Taşıma Notları
Tüm Release() Çağrılarını Kaldır
En etkili değişiklik, manuel bellek yönetiminin kaldırılmasıdır. ComPDFKit, belgelerde, sayfalarda ve metin sayfalarında açık Release() çağrılarını gerektirir.IronPDF bunu .NET çöp toplayıcı aracılığıyla otomatik olarak yapar:
//ComPDFKit- manual cleanup required
document.Release();
page.Release();
textPage.Release();
//IronPDF- no equivalent needed
// GC handles cleanup automatically
//ComPDFKit- manual cleanup required
document.Release();
page.Release();
textPage.Release();
//IronPDF- no equivalent needed
// GC handles cleanup automatically
'ComPDFKit- manual cleanup required
document.Release()
page.Release()
textPage.Release()
'IronPDF- no equivalent needed
' GC handles cleanup automatically
Doğal HTML İşleme
ComPDFKit, editör API'leri ile manuel metin yerleştirme gerektirir.IronPDF kendi Chromium motoru ile HTML/CSS'yi doğrudan işler, modern CSS3, JavaScript ve duyarlı düzenleri destekler.
Aynı Sayfa Dizinleme
Her iki kütüphane de 0 tabanlı indeksleme kullanır (Pages[0] birinci sayfadır)—sayfa erişim kodu için değişiklik gerekmez.
Basitleştirilmiş Metin Çıkartma
Çok satırlı GetTextPage() + GetText() + Release() modelini tek bir ExtractAllText() çağrısı ile değiştirin.
Akıcı Birleştirme API'si
ImportPagesAtIndex(doc2, "0-9", pageCount) yerine basit Merge(pdf1, pdf2) kullanın.
Taşınma Sonrası Kontrollistesi
Kod taşımasını tamamladıktan sonra, aşağıdakileri doğrulayın:
- Tüm birim testlerini çalıştırarak PDF oluşturmanın doğru çalıştığını doğrulayın
- PDF çıktı kalitesini karşılaştırın (IronPDF'nin Chromium motoru genellikle daha iyi işler)
- Karmaşık CSS ve JavaScript ile HTML işleme test edin
- Metin çıkarma doğruluğunu doğrulayın
- Form işlevselliğini test edin
- Yığın işlemlerinin performansını test edin
- Tüm hedef ortamları test edin
- CI/CD yapılarını güncelleyin -ComPDFKitlisans dosyalarını kaldırın
Ek Kaynaklar
ComPDFKit'ten IronPDF'ye geçiş, ComPDFKit'in sahip olmadığı doğal HTML'den PDF'ye dönüştürme sağlarken, manuel bellek yönetimi gereksinimini Release() çağrıları ile ortadan kaldırır. IronPDF'in olgun ekosistemine geçiş, kurumsal projelerin ihtiyaç duyduğu dokümantasyon derinliği, topluluk desteği ve kanıtlanmış kararlılığı sağlar.

