PDF Duo'dan IronPDF'e C# ile Nasıl Geçilir
PDF Duo .NET'ten IronPDF'e geçiş, .NET PDF iş akışınızı belirsiz, düzgün belgelenmemiş bir kütüphaneden kararlı, iyi belgelenmiş ve aktif bir şekilde sürdürülen bir çözüme taşır. Bu kılavuz, terk edilmiş kütüphanelerle ilişkili riskleri ortadan kaldırarak PDF Duo'nun sağlayamayacağı gelişmiş özelliklere erişim sağlamak için kapsamlı bir adım adım geçiş yolu sunar.
Neden PDF Duo'dan IronPDF'e Geçmelisiniz
PDF Duo'nun Risk Sorunu
PDF Duo .NET, .NET ekosisteminde belirsiz ve daha az bilinen bir kütüphanedir. Basitlik arayan geliştiricilere cazip gelebilirken, kütüphanenin belirsizliği, üretim uygulamaları için önemli zorluklar sunmaktadır:
-
Belirsiz Kaynak: Destekleyen bir şirketi doğrulanamayan tanınmayan geliştirici. Görünür bir GitHub deposu veya kaynak kodu yoktur, sınırlı NuGet indirme istatistikleri ve belirsiz lisans koşulları vardır.
-
Eksik Belgelendirme: Güvenilir bilgi bulmak neredeyse imkansızdır. Resmi bir API referansı yok, sınırlı topluluk örnekleri var ve resmi öğretici veya kılavuzlar yok. PDF Duo'yu kullanma girişimleri, güvenilir belgelerin kıtlığı nedeniyle engellenmektedir.
-
Terk Edilmiş veya Etkin Olmayan Durum: İhmalkarlık belirtileri, seyrek veya hiç güncelleme ile belirgindir. Destek forumları, 2019 yılından yanıt almayan gönderiler göstermektedir. Terk edilme riski, önemli projeler için uygunluğunu tehlikeye atar.
-
Sınırlı Özellikler: Yalnızca temel işlevsellik—basit HTML'den PDF'ye dönüşüm ve temel PDF birleştirme, formlar, güvenlik veya filigranlar gibi gelişmiş özellikler olmadan.
-
Bilinmeyen Render Motoru: Kaputun altında ne olduğuna dair hiçbir şeffaflık yok. CSS/JavaScript desteği bilinmiyor, render kalitesi öngörülemez ve modern web özelliği desteği belirsiz.
- Destek Riski: Bir şeyler ters gittiğinde herhangi bir çözüm bulunmuyor. Profesyonel destek yok, yardım edecek hiçbir topluluk yok ve tamamen terk edilme riski var.
PDF Duo vsIronPDFKarşılaştırması
| Bağlam | PDF Duo .NET | IronPDF |
|---|---|---|
| Bakım | Bilinmeyen/Pasif | Aktif, düzenli güncellemeler |
| Dokümantasyon | Seyrek/Eksik | Kapsamlı |
| Destek | None | Profesyonel destek ekibi |
| Topluluk | ~0 kullanıcı | 41M+ NuGet indirimi |
| Render | Bilinmeyen motor | Modern Chromium |
| Özellikler | Temel | Tam özellikli |
| Kararlılık | Bilinmiyor | Üretim onaylı |
| Lisanslama | Belirsiz | Şeffaf |
2025 ve 2026'ya kadar .NET 10 ve C# 14'ü benimsemeyi planlayan ekipler için IronPDF, aktif geliştirme ve kapsamlı belgelerle kararlı bir temel sağlar ve terk edilmiş bir kütüphaneye güvenmenin belirsizliklerini ortadan kaldırır.
Başlamadan Önce
Önkoşullar
- .NET Ortamı: .NET Framework 4.6.2+ veya .NET Core 3.1+ / .NET 5/6/7/8/9+
- NuGet Erişimi: NuGet paketlerini yükleme yeteneği
- IronPDF Lisansı: Lisans anahtarınızı ironpdf.com adresinden edinin
NuGet Paket Değişiklikleri
# RemovePDF Duo .NET(if you can find the correct package name)
dotnet remove package PDFDuo.NET
dotnet remove package PDFDuo
dotnet remove package PDF-Duo
# Install IronPDF
dotnet add package IronPdf
# RemovePDF Duo .NET(if you can find the correct package name)
dotnet remove package PDFDuo.NET
dotnet remove package PDFDuo
dotnet remove package PDF-Duo
# Install IronPDF
dotnet add package IronPdf
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"
PDF Duo Kullanımını Belirleme
# Find all PDF Duo references
grep -r "PDFDuo\|HtmlToPdfConverter\|PdfMerger" --include="*.cs" .
# Find all PDF Duo references
grep -r "PDFDuo\|HtmlToPdfConverter\|PdfMerger" --include="*.cs" .
API Referansının Tamamı
Namespace Değişiklikleri
| PDF Duo .NET | IronPDF |
|---|---|
using PDFDuo; |
using IronPdf; |
using PDFDuo.Document; |
using IronPdf; |
using PDFDuo.Rendering; |
using IronPdf.Rendering; |
using PDFDuo.Settings; |
using IronPdf; |
HTML'den PDF'ye Dönüşüm Eşlemeleri
| PDF Duo .NET | IronPDF |
|---|---|
new HtmlToPdfConverter() |
new ChromePdfRenderer() |
converter.ConvertHtmlString(html, path) |
renderer.RenderHtmlAsPdf(html).SaveAs(path) |
converter.ConvertUrl(url, path) |
renderer.RenderUrlAsPdf(url).SaveAs(path) |
converter.ConvertFile(htmlPath, pdfPath) |
renderer.RenderHtmlFileAsPdf(htmlPath).SaveAs(pdfPath) |
Sayfa Yapılandırma Eşlemeleri
| PDF Duo .NET | IronPDF |
|---|---|
settings.PageSize = PageSize.A4 |
RenderingOptions.PaperSize = PdfPaperSize.A4 |
settings.PageSize = PageSize.Letter |
RenderingOptions.PaperSize = PdfPaperSize.Letter |
settings.Orientation = Landscape |
RenderingOptions.PaperOrientation = Landscape |
new Margins(top, right, bottom, left) |
Ayrı kenar boşluğu özellikleri |
Kenarlık Eşlemeleri
| PDF Duo .NET | IronPDF |
|---|---|
new Margins(top, right, bottom, left) |
Bireysel özellikler |
margins.Top |
RenderingOptions.MarginTop |
margins.Right |
RenderingOptions.MarginRight |
margins.Bottom |
RenderingOptions.MarginBottom |
margins.Left |
RenderingOptions.MarginLeft |
Belge Operasyonları Haritaları
| PDF Duo .NET | IronPDF |
|---|---|
PDFDocument.Load(path) |
PdfDocument.FromFile(path) |
document.Save(path) |
pdf.SaveAs(path) |
document.ToBytes() |
pdf.BinaryData |
new PdfMerger() |
PdfDocument.Merge() |
merger.AddFile(path) |
PdfDocument.FromFile(path) |
merger.Merge(output) |
merged.SaveAs(output) |
PDF Duo'da Bulunmayan Yeni Özellikler
| Özellik | IronPDF |
|---|---|
| Üstbilgi/Altbilgi | RenderingOptions.HtmlHeader, HtmlFooter |
| Sayfa numaraları | {page}, {total-pages} yer tutucular |
| Filigranlar | pdf.ApplyWatermark(html) |
| Parola koruması | pdf.SecuritySettings |
| Form doldurma | pdf.Form.Fields |
| Dijital imzalar | pdf.SignWithFile() |
| Metin çıkarmak | pdf.ExtractAllText() |
| PDF'den Görüntüye | pdf.RasterizeToImageFiles() |
Kod Geçiş Örnekleri
Örnek 1: HTML'den PDF'e Dönüştürme
Önce (PDF Duo):
// NuGet: Install-Package PDFDuo.NET
using PDFDuo;
using System;
class Program
{
static void Main()
{
var converter = new HtmlToPdfConverter();
var htmlContent = "<h1>Hello World</h1><p>This is a PDF document.</p>";
converter.ConvertHtmlString(htmlContent, "output.pdf");
Console.WriteLine("PDF created successfully!");
}
}
// NuGet: Install-Package PDFDuo.NET
using PDFDuo;
using System;
class Program
{
static void Main()
{
var converter = new HtmlToPdfConverter();
var htmlContent = "<h1>Hello World</h1><p>This is a PDF document.</p>";
converter.ConvertHtmlString(htmlContent, "output.pdf");
Console.WriteLine("PDF created successfully!");
}
}
Imports PDFDuo
Imports System
Module Program
Sub Main()
Dim converter As New HtmlToPdfConverter()
Dim htmlContent As String = "<h1>Hello World</h1><p>This is a PDF document.</p>"
converter.ConvertHtmlString(htmlContent, "output.pdf")
Console.WriteLine("PDF created successfully!")
End Sub
End Module
Sonra (IronPDF):
// NuGet: Install-Package IronPdf
using IronPdf;
using System;
class Program
{
static void Main()
{
var renderer = new ChromePdfRenderer();
var htmlContent = "<h1>Hello World</h1><p>This is a PDF document.</p>";
var pdf = renderer.RenderHtmlAsPdf(htmlContent);
pdf.SaveAs("output.pdf");
Console.WriteLine("PDF created successfully!");
}
}
// NuGet: Install-Package IronPdf
using IronPdf;
using System;
class Program
{
static void Main()
{
var renderer = new ChromePdfRenderer();
var htmlContent = "<h1>Hello World</h1><p>This is a PDF document.</p>";
var pdf = renderer.RenderHtmlAsPdf(htmlContent);
pdf.SaveAs("output.pdf");
Console.WriteLine("PDF created successfully!");
}
}
Imports IronPdf
Imports System
Class Program
Shared Sub Main()
Dim renderer = New ChromePdfRenderer()
Dim htmlContent = "<h1>Hello World</h1><p>This is a PDF document.</p>"
Dim pdf = renderer.RenderHtmlAsPdf(htmlContent)
pdf.SaveAs("output.pdf")
Console.WriteLine("PDF created successfully!")
End Sub
End Class
Buradaki temel fark API desenidir. PDF Duo'nun HtmlToPdfConverter.ConvertHtmlString() tek bir cagrida hem HTML hem de cikti yolunu alir, dönüştürme ve kaydetmeyi birlikte yonetir. IronPDF'nin ChromePdfRenderer.RenderHtmlAsPdf() ilk olarak bir PdfDocument nesnesi doner, ardından SaveAs() ile kaydedersiniz.
Bu nesneye yönelik yaklaşım, önemli avantajlar sağlar: kaydetmeden önce PDF'yi (filigran ekleme, belgeleri birleştirme, güvenlik ekleme, metin çıkarma) manipüle edebilirsiniz—bunların hiçbiri PDF Duo'nun doğrudan dosyaya yaklaşımıyla mümkün değildir. 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 (PDF Duo):
// NuGet: Install-Package PDFDuo.NET
using PDFDuo;
using System;
class Program
{
static void Main()
{
var converter = new HtmlToPdfConverter();
converter.ConvertUrl("https://www.example.com", "webpage.pdf");
Console.WriteLine("Webpage converted to PDF!");
}
}
// NuGet: Install-Package PDFDuo.NET
using PDFDuo;
using System;
class Program
{
static void Main()
{
var converter = new HtmlToPdfConverter();
converter.ConvertUrl("https://www.example.com", "webpage.pdf");
Console.WriteLine("Webpage converted to PDF!");
}
}
Imports PDFDuo
Imports System
Module Program
Sub Main()
Dim converter As New HtmlToPdfConverter()
converter.ConvertUrl("https://www.example.com", "webpage.pdf")
Console.WriteLine("Webpage converted to PDF!")
End Sub
End Module
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");
Console.WriteLine("Webpage converted to 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");
Console.WriteLine("Webpage converted to 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")
Console.WriteLine("Webpage converted to PDF!")
End Sub
End Class
PDF Duo, ConvertUrl(url, outputPath) ile URL dönüştürme icin ayni HtmlToPdfConverter sinifini kullanir. IronPDF, ayrilmis RenderUrlAsPdf(url) metodu ile ChromePdfRenderer kullanir, bir PdfDocument nesnesi doner.
Ana avantaj, IronPDF'in Chromium tabanlı render motorunun modern CSS3 ve JavaScript desteği sağlamasıdır, oysa PDF Duo'nun bilinmeyen render motoru, CSS/JavaScript desteğini belirsiz ve render kalitesini öngörülemez bırakır. Daha fazla bilgi için URL'den PDF'ye dönüştürme hakkında bilgi edinin.
Örnek 3: PDF Birleştirme
Önce (PDF Duo):
// NuGet: Install-Package PDFDuo.NET
using PDFDuo;
using System;
class Program
{
static void Main()
{
var merger = new PdfMerger();
merger.AddFile("document1.pdf");
merger.AddFile("document2.pdf");
merger.Merge("merged.pdf");
Console.WriteLine("PDFs merged successfully!");
}
}
// NuGet: Install-Package PDFDuo.NET
using PDFDuo;
using System;
class Program
{
static void Main()
{
var merger = new PdfMerger();
merger.AddFile("document1.pdf");
merger.AddFile("document2.pdf");
merger.Merge("merged.pdf");
Console.WriteLine("PDFs merged successfully!");
}
}
Imports PDFDuo
Imports System
Class Program
Shared Sub Main()
Dim merger As New PdfMerger()
merger.AddFile("document1.pdf")
merger.AddFile("document2.pdf")
merger.Merge("merged.pdf")
Console.WriteLine("PDFs merged successfully!")
End Sub
End Class
Sonra (IronPDF):
// NuGet: Install-Package IronPdf
using IronPdf;
using System;
class Program
{
static void Main()
{
var pdf1 = PdfDocument.FromFile("document1.pdf");
var pdf2 = PdfDocument.FromFile("document2.pdf");
var merged = PdfDocument.Merge(pdf1, pdf2);
merged.SaveAs("merged.pdf");
Console.WriteLine("PDFs merged successfully!");
}
}
// NuGet: Install-Package IronPdf
using IronPdf;
using System;
class Program
{
static void Main()
{
var pdf1 = PdfDocument.FromFile("document1.pdf");
var pdf2 = PdfDocument.FromFile("document2.pdf");
var merged = PdfDocument.Merge(pdf1, pdf2);
merged.SaveAs("merged.pdf");
Console.WriteLine("PDFs merged successfully!");
}
}
Imports IronPdf
Imports System
Class Program
Shared Sub Main()
Dim pdf1 = PdfDocument.FromFile("document1.pdf")
Dim pdf2 = PdfDocument.FromFile("document2.pdf")
Dim merged = PdfDocument.Merge(pdf1, pdf2)
merged.SaveAs("merged.pdf")
Console.WriteLine("PDFs merged successfully!")
End Sub
End Class
Bu örnek temel bir mimari farkı göstermektedir. PDF Duo, dosyalari kuyruga almak icin bir PdfMerger sinifini ve bir AddFile() metodunu kullanir, ardından tek adimda birlestirip kaydetmek icin Merge() kullanir.
IronPDF farkli bir desen kullanir: her bir PDF'yi bir PdfDocument olarak PdfDocument.FromFile() kullanarak yukleyin, ardından birlestirmek icin statik PdfDocument.Merge() metodunu kullanin. Bu, PdfDocument nesnesi doner ve SaveAs() ile ayri olarak kaydedersiniz.
IronPDF yaklaşımı daha fazla esneklik sunar—birleştirmeden önce herhangi bir PDF'yi manipüle edebilir, birleştirilmiş sonuca filigran ekleyebilir, güvenlik ayarları uygulayabilir ve daha fazlasını yapabilirsiniz. Birçok dosyayı birleştirmek için LINQ kullanabilirsiniz:
var paths = new[] { "document1.pdf", "document2.pdf", "document3.pdf" };
var pdfs = paths.Select(PdfDocument.FromFile).ToList();
var merged = PdfDocument.Merge(pdfs);
merged.SaveAs("merged.pdf");
var paths = new[] { "document1.pdf", "document2.pdf", "document3.pdf" };
var pdfs = paths.Select(PdfDocument.FromFile).ToList();
var merged = PdfDocument.Merge(pdfs);
merged.SaveAs("merged.pdf");
Dim paths = {"document1.pdf", "document2.pdf", "document3.pdf"}
Dim pdfs = paths.Select(AddressOf PdfDocument.FromFile).ToList()
Dim merged = PdfDocument.Merge(pdfs)
merged.SaveAs("merged.pdf")
PDF'leri birleştirme ve bölme hakkında daha fazla bilgi edinin.
Geçiş Sonrası Yeni Özellikler
IronPDF'ye geçtikten sonra PDF Duo'nun sağlayamayacağı özelliklere sahip olursunuz:
Sayfa Numaralı Başlıklar ve Alt Bilgiler
using IronPdf;
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter
{
HtmlFragment = "<div style='text-align:center; font-size:10px;'>Company Report</div>",
MaxHeight = 25
};
renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter
{
HtmlFragment = "<div style='text-align:center; font-size:10px;'>Page {page} of {total-pages}</div>",
MaxHeight = 25
};
var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("report.pdf");
using IronPdf;
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter
{
HtmlFragment = "<div style='text-align:center; font-size:10px;'>Company Report</div>",
MaxHeight = 25
};
renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter
{
HtmlFragment = "<div style='text-align:center; font-size:10px;'>Page {page} of {total-pages}</div>",
MaxHeight = 25
};
var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("report.pdf");
Imports IronPdf
Dim renderer As New ChromePdfRenderer()
renderer.RenderingOptions.HtmlHeader = New HtmlHeaderFooter With {
.HtmlFragment = "<div style='text-align:center; font-size:10px;'>Company Report</div>",
.MaxHeight = 25
}
renderer.RenderingOptions.HtmlFooter = New HtmlHeaderFooter With {
.HtmlFragment = "<div style='text-align:center; font-size:10px;'>Page {page} of {total-pages}</div>",
.MaxHeight = 25
}
Dim pdf = renderer.RenderHtmlAsPdf(html)
pdf.SaveAs("report.pdf")
PDF Duo başlıkları veya altbilgileri desteklemez—eşdeğer bir işlevsellik yoktur. IronPDF, sayfa numaraları gibi dinamik içerikler için yerleşik yer tutucular ile tam HTML/CSS desteği sağlar. Başlıklar ve altbilgiler kılavuzunu görün.
Filigranlar
using IronPdf;
using IronPdf.Editing;
var pdf = PdfDocument.FromFile("document.pdf");
pdf.ApplyWatermark(
"<h1 style='color:red; opacity:0.3;'>CONFIDENTIAL</h1>",
45,
VerticalAlignment.Middle,
HorizontalAlignment.Center);
pdf.SaveAs("watermarked.pdf");
using IronPdf;
using IronPdf.Editing;
var pdf = PdfDocument.FromFile("document.pdf");
pdf.ApplyWatermark(
"<h1 style='color:red; opacity:0.3;'>CONFIDENTIAL</h1>",
45,
VerticalAlignment.Middle,
HorizontalAlignment.Center);
pdf.SaveAs("watermarked.pdf");
Imports IronPdf
Imports IronPdf.Editing
Dim pdf = PdfDocument.FromFile("document.pdf")
pdf.ApplyWatermark("<h1 style='color:red; opacity:0.3;'>CONFIDENTIAL</h1>", 45, VerticalAlignment.Middle, HorizontalAlignment.Center)
pdf.SaveAs("watermarked.pdf")
PDF Duo filigranları desteklemez. IronPDF, tam CSS biçimlendirme desteği ile HTML tabanlı filigranlar sağlar.
Şifre Koruması
var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SecuritySettings.UserPassword = "userpassword";
pdf.SecuritySettings.OwnerPassword = "ownerpassword";
pdf.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.FullPrintRights;
pdf.SaveAs("secured.pdf");
var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SecuritySettings.UserPassword = "userpassword";
pdf.SecuritySettings.OwnerPassword = "ownerpassword";
pdf.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.FullPrintRights;
pdf.SaveAs("secured.pdf");
Dim pdf = renderer.RenderHtmlAsPdf(html)
pdf.SecuritySettings.UserPassword = "userpassword"
pdf.SecuritySettings.OwnerPassword = "ownerpassword"
pdf.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.FullPrintRights
pdf.SaveAs("secured.pdf")
PDF Duo parola korumasını veya güvenlik ayarlarını desteklemez.
Metin Çıkarma
var pdf = PdfDocument.FromFile("document.pdf");
string text = pdf.ExtractAllText();
var pdf = PdfDocument.FromFile("document.pdf");
string text = pdf.ExtractAllText();
Dim pdf = PdfDocument.FromFile("document.pdf")
Dim text As String = pdf.ExtractAllText()
PDF Duo metin çıkarımını desteklemez.
Kritik Geçiş Notları
Marjinler Nesnesinden Bireysel Özelliklere
PDF Duo bir tek Margins nesnesi kullanir;IronPDFbireysel özellikler kullanır:
// PDF Duo:
new Margins(top: 20, right: 15, bottom: 20, left: 15)
// IronPDF:
renderer.RenderingOptions.MarginTop = 20;
renderer.RenderingOptions.MarginRight = 15;
renderer.RenderingOptions.MarginBottom = 20;
renderer.RenderingOptions.MarginLeft = 15;
// PDF Duo:
new Margins(top: 20, right: 15, bottom: 20, left: 15)
// IronPDF:
renderer.RenderingOptions.MarginTop = 20;
renderer.RenderingOptions.MarginRight = 15;
renderer.RenderingOptions.MarginBottom = 20;
renderer.RenderingOptions.MarginLeft = 15;
' PDF Duo:
New Margins(top:=20, right:=15, bottom:=20, left:=15)
' IronPDF:
renderer.RenderingOptions.MarginTop = 20
renderer.RenderingOptions.MarginRight = 15
renderer.RenderingOptions.MarginBottom = 20
renderer.RenderingOptions.MarginLeft = 15
Kaydetme Metodu İsimlendirme
Kaydetme için farklı metod adları:
// PDF Duo:
document.Save("output.pdf");
// IronPDF:
pdf.SaveAs("output.pdf");
// PDF Duo:
document.Save("output.pdf");
// IronPDF:
pdf.SaveAs("output.pdf");
' PDF Duo:
document.Save("output.pdf")
' IronPDF:
pdf.SaveAs("output.pdf")
PDF'leri Yükleme
Yükleme için farklı metod adları:
// PDF Duo:
PDFDocument.Load("document.pdf")
// IronPDF:
PdfDocument.FromFile("document.pdf")
// PDF Duo:
PDFDocument.Load("document.pdf")
// IronPDF:
PdfDocument.FromFile("document.pdf")
' PDF Duo:
PDFDocument.Load("document.pdf")
' IronPDF:
PdfDocument.FromFile("document.pdf")
Ayarlar Nesnesinden Özelliklere
PDF Duo, yapıcıya geçirilen ayarlar nesnelerini kullanır;IronPDFözellikler kullanır:
// PDF Duo:
var settings = new PDFSettings { PageSize = PageSize.A4 };
var converter = new HtmlToPdfConverter(settings);
// IronPDF:
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
// PDF Duo:
var settings = new PDFSettings { PageSize = PageSize.A4 };
var converter = new HtmlToPdfConverter(settings);
// IronPDF:
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
' PDF Duo:
Dim settings As New PDFSettings With {.PageSize = PageSize.A4}
Dim converter As New HtmlToPdfConverter(settings)
' IronPDF:
Dim renderer As New ChromePdfRenderer()
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4
Özellik Karşılaştırması
| Özellik | PDF Duo .NET | IronPDF |
|---|---|---|
| HTML'den PDF'ye | Temel | Tam CSS3, JavaScript |
| URL'den PDF'ye | Temel | Kimlik doğrulama desteğiyle tam |
| PDF Merging | Evet | Evet |
| Üstbilgi/Altbilgi | Hayır | Tam HTML desteği |
| Sayfa Numaraları | Hayır | Yerleşik yer tutucular |
| Filigranlar | Hayır | HTML tabanlı |
| Şifre Koruması | Hayır | Tam güvenlik seçenekleri |
| Form Doldurma | Hayır | Evet |
| Dijital İmzalar | Hayır | Evet |
| Metin Çıkarma | Hayır | Evet |
| PDF'den Görüntülere | Hayır | Evet |
| Async Destegi | Bilinmiyor | Tam async/await |
| .NET Core/5+ | Bilinmiyor | Desteklenir |
Goc Kontrol Listesi
Geçiş Öncesi
- Kod tabanındaki tüm PDF Duo referanslarını bulun
- Mevcut ayarları belgeleyin (sayfa boyutu, marjinler vb.)
- Kullanılan tüm PDF işlemlerini listeleyin
- Yeni özellikler için fırsatları belirleyin (başlıklar, filigranlar, güvenlik) -IronPDFlisans anahtarını edinin
Paket Değişiklikleri
PDFDuo.NETNuGet paketini kaldirinIronPdfNuGet paketini kurun:dotnet add package IronPdf- Ad alanı importlarini
using PDFDuo;denusing IronPdf;e güncelleyin
Kod Değişiklikleri
- Başlangıçta lisans anahtarı yapılandırması ekleyin
HtmlToPdfConverterileChromePdfRenderer'i değiştirinConvertHtmlString(html, path)ileRenderHtmlAsPdf(html).SaveAs(path)'i değiştirinConvertUrl(url, path)ileRenderUrlAsPdf(url).SaveAs(path)'i değiştirinPdfMergerdeseni ilePdfDocument.Merge()desenini değiştirinMarginsnesnesini bireysel kenar bosluklari özelliklerine dönüştürunSave()ileSaveAs()'i değiştirinLoad()ileFromFile()'i değiştirin
Geçişten Sonra
- PDF ciktilarini karsilastiran regresyon testleri yapin
- Sayfa boyutlarının ve marjinlerin eşleştiğini doğrulayın
- Karmaşık HTML/CSS ile test edin (IronPDF'nin modern motoru bunu daha iyi işlemelidir)
- Yeni özellikler ekleyin (başlıklar, altbilgiler, filigranlar, güvenlik)
- Belgeleri güncelleyin

