IRONSOFTWAREHOME

Iron Suite for .NET

10 .NET kütüphanesi. Tek bir tam belge suiti.

IRONPDF
IRONWORD
IRONXL
IRONPPT
IRONOCR
IRONBARCODE
IRONQR
IRONPRINT
IRONZIP
IRONWEBSCRAPER
KARŞILAŞTIRMA

EO.Pdf ve IronPDF Karşılaştırması: Teknik Kılavuz

Curtis Chau
Curtis Chau
Updated: 8 Mayıs 2026

.NET geliştiricileri PDF oluşturma kütüphanelerini incelediklerinde, EO.Pdf, Chromium tabanlı render yeteneklerine sahip ticari bir seçenek olarak öne çıkıyor. Ancak, daha büyük dağıtım ayak izi, eski Internet Explorer geçiş sorunları ve statik global yapılandırma yaklaşımı, birçok ekibi alternatifleri değerlendirmeye yönlendiriyor. IronPDF, optimize edilmiş paketleme, örneğe dayalı, iş parçacığı güvenli yapılandırma ve gerçek platformlar arası destek ile rafine edilmiş bir Chromium uygulaması sunar.

Bu karşılaştırma, her iki kütüphaneyi teknik olarak ilgili yönler üzerinden inceleyerek profesyonel geliştiriciler ve mimarların .NET PDF ihtiyaçları için bilinçli kararlar almalarına yardımcı olur.

EO.Pdf'yi Anlamak

EO.Pdf, geliştirici lisansı başına $liteLicense fiyatlandırılan ticari bir PDF kütüphanesidir ve yüksek kaliteli PDF oluşturma için Chromium tabanlı işleme özelliğine sahiptir. Kütüphane, Internet Explorer tabanlı orijinal render temelinden Chromium tabanlı bir sisteme geçiş yapılarak oluşturulmuştur.

Bu güncellemeye rağmen, kütüphanenin Chromium'a geçişi, Internet Explorer döneminin kalıntıları nedeniyle uyumluluk sorunlarını beraberinde getirdi. Kendi Chromium motorunu içerir, sonuç olarak daha büyük bir dağıtım ayak izi oluşturur bu da Docker imajlarını büyütür, CI/CD hatlarını yavaşlatır ve altyapı maliyetlerini artırır.

Ayrıca, EO.Pdf kendisini çapraz platform bir araç olarak pazarlarken, performansı ve kullanım kolaylığı öncelikli olarak Windows odaklı olup, Linux desteği genellikle ikinci planda tanımlanır. Dönüştürücü, çok kiracılı web uygulamalarında iş parçacığı güvenliği sorunları oluşturan statik HtmlToPdf.Options kullanır.

IronPDF'yi Anlamak

IronPDF, optimize edilmiş Chromium paketleme yaklaşımı ile modern .NET ortamları için tasarlanmış bir .NET PDF kütüphanesidir ve daha küçük bir dağıtım ayak izi ile sonuçlanır. Kütüphane, Windows'ı tercih etmek yerine tüm platformlar için eşit destek sağlamakta olup, çeşitli ortamlara dağıtılan uygulamalar için uygundur.

IronPDF, eşzamanlı senaryolarda iş parçacığına güvenli çalışmayı sağlamak için ChromePdfRenderer nesneleri aracılığıyla örnek tabanlı yapılandırma kullanır. Her bir işleyici örneği, yapılandırmayı diğer işlemlerden izole ederek kendi RenderingOptions'ını korur.

Mimari ve Konfigürasyon Karşılaştırması

Bu .NET PDF kütüphaneleri arasındaki temel mimari fark, yapılandırma yaklaşımlarında ve dağıtım özelliklerindedir.

AspektEO.PdfIronPDF
Paket BoyutuDaha büyük dağıtım ayak iziOptimiz edilmiş paketleme
Eski SorunlarIE geçiş kalıntısıTemiz, modern kod tabanı
Platform DesteğiWindows odaklıGerçek çapraz platform
YapılandırmaStatik/küreselNesneye dayalı, iş parçacığı güvenli
Fiyat$liteLicense/geliştiriciRekabetçi fiyatlandırma
API TasarımıKarışık (HtmlToPdf + ACM)Birleşik, tutarlı
DokümantasyonSınırlıAyrıntılı öğreticiler
Modern .NET.NET Standard.NET 6/7/8/9+ yerel
Asenkron DestekSınırlıTam async/await

Yapılandırma modeli, önemli bir farklılık teşkil eder. Kütüphanenin statik HtmlToPdf.Options tüm dönüşümleri küresel olarak etkiler ve çok iş parçacıklı uygulamalarda yarış koşulları oluşturur. IronPDF'nin nesneye dayalı yaklaşımı, her render için izole edilmiş yapılandırmayı garanti eder.

Kod Karşılaştırması: Ortak PDF İşlemleri

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

HTML içeriğini PDF'ye dönüştürmek, temel API farklılıklarını gösterir.

EO.Pdf:

// NuGet: Install-Package EO.Pdf
using EO.Pdf;
using System;

class Program
{
    static void Main()
    {
        string html = "<html><body><h1>Hello World</h1><p>This is a PDF generated from HTML.</p></body></html>";
        
        HtmlToPdf.ConvertHtml(html, "output.pdf");
        
        Console.WriteLine("PDF created successfully!");
    }
}

IronPDF:

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

class Program
{
    static void Main()
    {
        string html = "<html><body><h1>Hello World</h1><p>This is a PDF generated from HTML.</p></body></html>";
        
        var renderer = new ChromePdfRenderer();
        var pdf = renderer.RenderHtmlAsPdf(html);
        pdf.SaveAs("output.pdf");
        
        Console.WriteLine("PDF created successfully!");
    }
}

Kütüphane, doğrudan bir dosya yoluna kaydeden statik HtmlToPdf.ConvertHtml() yöntemini kullanır. IronPDF, iki aşamalı bir yaklaşım kullanır: RenderHtmlAsPdf(), PdfDocument nesnesini döndürür ve bu nesne, SaveAs() çağrılmadan önce daha fazla işlenebilir. Bu iki aşamalı model, birleştirme, filigran ekleme veya güvenlik ayarlarının uygulanması gibi son işleme işlemleri için daha fazla esneklik sağlar.

Gelişmiş HTML renderleme seçenekleri için, HTML to PDF dönüştürme kılavuzunu keşfedin.

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

Web sayfalarını PDF belgeleri olarak yakalamak, benzer API modellerini gösterir.

EO.Pdf:

// NuGet: Install-Package EO.Pdf
using EO.Pdf;
using System;

class Program
{
    static void Main()
    {
        string url = "https://www.example.com";
        
        HtmlToPdf.ConvertUrl(url, "webpage.pdf");
        
        Console.WriteLine("PDF from URL created successfully!");
    }
}

IronPDF:

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

class Program
{
    static void Main()
    {
        string url = "https://www.example.com";
        
        var renderer = new ChromePdfRenderer();
        var pdf = renderer.RenderUrlAsPdf(url);
        pdf.SaveAs("webpage.pdf");
        
        Console.WriteLine("PDF from URL created successfully!");
    }
}

Her iki kütüphane de URL-to-PDF yeteneği sağlar, EO.Pdf statik ConvertUrl() kullanırken IronPDF örnek tabanlı RenderUrlAsPdf() kullanır. Aynı iş parçacığı güvenliği farkı uygulanır.

URL renderleme hakkında daha fazla bilgi için URL'den PDF'e belgelendirmeye göz atın.

PDF Birleştirme Operasyonları

Birden fazla PDF belgesi birleştirmek, farklı obje modeli yaklaşımlarını gösterir.

EO.Pdf:

// NuGet: Install-Package EO.Pdf
using EO.Pdf;
using System;

class Program
{
    static void Main()
    {
        PdfDocument doc1 = new PdfDocument("file1.pdf");
        PdfDocument doc2 = new PdfDocument("file2.pdf");
        
        PdfDocument mergedDoc = new PdfDocument();
        mergedDoc.Append(doc1);
        mergedDoc.Append(doc2);
        
        mergedDoc.Save("merged.pdf");
        
        Console.WriteLine("PDFs merged successfully!");
    }
}

IronPDF:

// 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");
        
        Console.WriteLine("PDFs merged successfully!");
    }
}

Bu çözüm, yapıcılar (new PdfDocument(path)) aracılığıyla belgeleri yükler ve belgeleri boş bir konteynere eklemek için Append() kullanır. IronPDF, statik fabrika yöntemleri (PdfDocument.FromFile()) ve bir koleksiyonu kabul eden ve birleştirilmiş sonucu döndüren statik PdfDocument.Merge() yöntemi kullanır.

PDF birleştirme dokümantasyonunda ek birleşme operasyonlarını keşfedin.

Özel Sayfa Ayarları

Sayfa boyutu ve kenar boşluklarını yapılandırmak, yapılandırma modelindeki farkları gösterir.

EO.Pdf:

// NuGet: Install-Package EO.Pdf
using EO.Pdf;
using System;

class Program
{
    static void Main()
    {
        HtmlToPdfOptions options = new HtmlToPdfOptions();
        options.PageSize = PdfPageSizes.A4;
        options.OutputArea = new RectangleF(0.5f, 0.5f, 7.5f, 10.5f);
        
        HtmlToPdf.ConvertUrl("file:///C:/input.html", "output.pdf", options);
        Console.WriteLine("PDF with custom settings created.");
    }
}

IronPDF:

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

class Program
{
    static void Main()
    {
        var renderer = new ChromePdfRenderer();
        renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
        renderer.RenderingOptions.MarginTop = 20;
        renderer.RenderingOptions.MarginBottom = 20;
        renderer.RenderingOptions.MarginLeft = 20;
        renderer.RenderingOptions.MarginRight = 20;
        
        var pdf = renderer.RenderHtmlFileAsPdf("C:/input.html");
        pdf.SaveAs("output.pdf");
        Console.WriteLine("PDF with custom settings created.");
    }
}

Dönüştürücü, inç olarak RectangleF belirtilmiş HtmlToPdfOptions kullanır. IronPDF, RenderingOptions nesnesinde milimetre cinsinden bireysel marj özellikleri (MarginTop, MarginBottom, MarginLeft, MarginRight) kullanır. Birim farkı dönüşüm gerektirir: inches × 25.4 = millimeters.

Yöntem Eşleme Referansı

EO.Pdf geçişini değerlendiren veya yetenekleri karşılaştıran geliştiriciler için bu eşleştirme, eşdeğer işlemleri gösterir:

Temel İşlemler

EO.PdfIronPDF
HtmlToPdf.ConvertHtml(html, path)renderer.RenderHtmlAsPdf(html) ardından SaveAs()
HtmlToPdf.ConvertUrl(url, path)renderer.RenderUrlAsPdf(url) ardından SaveAs()
HtmlToPdf.Options.PageSizerenderer.RenderingOptions.PaperSize
HtmlToPdf.Options.OutputAreaMarginTop/Bottom/Left/Right
new PdfDocument(path)PdfDocument.FromFile(path)
doc.Append(other)PdfDocument.Merge(doc1, doc2)
doc.Save(path)pdf.SaveAs(path)

Yapılandırma Eşleştirmesi

EO.Pdf SeçeneğiIronPDF RenderingOptions
Options.PageSize = PdfPageSizes.A4PaperSize = PdfPaperSize.A4
Options.PageSize = PdfPageSizes.LetterPaperSize = PdfPaperSize.Letter
Options.OutputArea (RectangleF)MarginTop, MarginBottom, vb.
Options.BaseUrlBaseUrl

Sınıf Eşleştirme

EO.Pdf SınıfıIronPDF Eşdeğeri
HtmlToPdfChromePdfRenderer
PdfDocumentPdfDocument
HtmlToPdfOptionsChromePdfRenderOptions
AcmRenderGerekli değil
AcmTextHTML <span>, <p>
AcmBlockHTML <div>

Özellik Karşılaştırması Özeti

ÖzellikEO.PdfIronPDF
HTML'den PDF'yeEvetEvet
URL'yi PDF'ye çevirEvetEvet
PDF birleştirmeEvetEvet
Sayfa manipülasyonuEvetEvet
Başlıklar/altbilgilerEvetEvet (HTML tabanlı)
Güvenlik/şifrelemeEvetEvet
Form alanlarıEvetEvet
FiligranlarEvetEvet
ACM renderEvetHTML/CSS (ACM yok)
İş parçacığı güvenli yapılandırmaEvet (iş parçacığı başına izole edilmiş)Evet (örnek)
Çapraz platformSınırlıDesteklenen

İş Parçacığı Güvenliği Sorunu

EO.Pdf'nin statik yapılandırması, çok iş parçacıklı uygulamalarda temel bir sorun yaratır:

// EO.Pdf - DANGER: Static options affect ALL threads!
HtmlToPdf.Options.PageSize = PdfPageSizes.A4;
HtmlToPdf.Options.OutputArea = new RectangleF(0.5f, 0.5f, 7.5f, 10.5f);
HtmlToPdf.ConvertHtml(html, "output.pdf");

Birçok eş zamanlı isteği işleyen bir web uygulamasında, bir isteğin yapılandırması diğer tüm istekleri etkiler. Bu, yarış koşulları yaratarak PDF'lerin beklenmedik ayarlarla üretilmesine neden olur.

IronPDF'nin nesne tabanlı yaklaşımı bu sorunu ortadan kaldırır:

//IronPDF- Thread-safe, isolated options per renderer instance
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
renderer.RenderingOptions.MarginTop = 12.7;
var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("output.pdf");

Her ChromePdfRenderer örneği kendi yapılandırmasını korur, eşzamanlı senaryolarda izolasyonu garanti eder.

Takımlar EO.Pdf'den IronPDF'e Geçmeyi Düşündüğünde

Geliştirme ekipleri, birkaç nedenden dolayı EO.Pdf'den IronPDF'e geçiş yapmayı değerlendirmektedir:

Paket Boyutu Optimizasyonu: EO.Pdf'nin daha büyük dağıtım ayak izi, Docker imajlarını büyütür, CI/CD hatlarını yavaşlatır ve altyapı maliyetlerini artırır. IronPDF'nin optimize edilmiş paketlemesi, dağıtım verimliliği iyileştirmeleri sağlar.

İş Parçacığı Güvenlik Gereksinimleri: Çok kiracılı web uygulamaları, istek başına izole edilmiş yapılandırma gerektirir. Kütüphanenin statik HtmlToPdf.Options, IronPDF'in örnek tabanlı yaklaşımının ortadan kaldırdığı yarış koşulları oluşturur.

Çapraz Platform Dağıtım: Linux veya macOS ortamlarını hedefleyen uygulamalar, EO.Pdf'in Windows merkezli tasarımı ile sınırlamalarla karşılaşır. IronPDF, tutarlı davranış ile gerçek çapraz platform desteği sağlar.

Eski Yükten Kaçınma: Internet Explorer'dan Chromium'a geçiş, uyumluluk sorunları yarattı. IronPDF, temiz, modern kod tabanı ile bu teknik borçtan kaçınır.

Modern .NET Desteği: .NET 6/7/8/9+ hedefleyen uygulamalar, EO.Pdf'nin.NET Standardhedeflemesine karşı IronPDF'nin yerel desteğinden yararlanır.

ACM Geçişi: EO.Pdf'in Gelişmiş İçerik Modelini (AcmRender, AcmText, AcmBlock) kullanan ekipler, IronPDF'in HTML/CSS yaklaşımını daha basit ve daha sürdürülebilir bulurlar.

Güçlü Yönler ve Dikkat Edilmesi Gerekenler

EO.Pdf'nin Güçlü Yönleri

  • Chromium Render: Yüksek kaliteli W3C uyumlu çıktı
  • Yerleşik Kütüphane: Üretim ortamlarında kanıtlanmış
  • Tek Adımlı Dönüşüm: ConvertHtml() üzerinden doğrudan dosya çıktısı

EO.Pdf Dikkate Alınması Gerekenler

  • Masif Paket Boyutu: 126MB dağıtım ayak izi
  • Eski IE Kalıntısı: Geçişten kaynaklanan uyumluluk sorunları
  • Statik Yapılandırma: Çok kiracılı uygulamalarda iş parçacığı güvenliği sorunları
  • Windows Merkezli: Sınırlı Linux/macOS desteği
  • Fiyat Noktası: Geliştirici lisansı başına $liteLicense
  • Sınırlı Dokümantasyon: Daha az öğretici ve örnek

###IronPDF Güçlü Yönleri

  • Optimizasyonlu Ayak İzi: ~50MB paket boyutu (yüzde 50 daha küçük)
  • Gerçek Çapraz Platform: Windows, Linux, macOS, Docker
  • Thread-Güvenli Konfigürasyon: Örnek tabanlı render seçenekleri
  • Modern API: Tutarlı, sezgisel metot isimleri
  • Aktif Geliştirme: Düzenli güncellemeler ve güvenlik yamaları
  • Kapsamlı Kaynaklar: Kapsamlı öğreticiler ve dokümantasyon

###IronPDF Dikkate Alınacaklar

  • İki Adımlı Kaydetme: İşleme PdfDocument döndürür, ardından SaveAs() çağrılır
  • Birim Farklılıkları: Kenar boşlukları için milimetre kullanır (EO.Pdf inçine karşın)

Sonuç

EO.Pdf ve IronPDF, her ikisi de .NET geliştiricileri için Chromium tabanlı PDF oluşturma sağlar, ancak farklı mimari yaklaşımları temsil ederler. EO.Pdf yerleşik işlevsellik sunar ancak 126MB paket boyutu, eski İnternet Explorer geçiş zorlukları ve thread-güvensiz statik konfigürasyon barındırır.

IronPDF, optimize edilmiş paketleme, gerçek çapraz platform desteği ve örnek tabanlı thread-güvenli konfigürasyon ile modern bir alternatif sunar. Dağıtım verimliliği, eşzamanlı çalışma güvenliği veya çapraz platform hedefleme gerektiren ekipler için IronPDF, bu özel gereksinimleri ele alır.

.NET 10, C# 14 ve 2026'ya kadar uygulama geliştirmeyi planlayan organizasyonlar, seçimlerini belirli önceliklere dayandırır. Tek iplikli Windows ortamlarında mevcut EO.Pdf uygulamaları olan ekipler burada değer bulmaya devam edebilir. Modern çoklu kiracılı uygulamalar, container konuşlandırmalar veya çapraz platform gereksinimleri için IronPDF daha uygun bir yaklaşım sağlar.

ücretsiz deneme sürümü ile IronPDF değerlendirmeye başlayın ve özel gereksinimlerinizle uygunluğunu değerlendirmek için kapsamlı belgeleri keşfedin.

Key in blue circle

Ücretsiz 30 günlük Deneme Anahtarınızı anında edinin.

Your trial license will be sent to your email address

Herhangi bir sınırlama yoktur. %100 erişim. Kredi kartı gerekmez.

bullet_checkedKredi kartı veya hesap oluşturma gerektirmezHerhangi bir sınırlama yoktur. %100 erişim. Kredi kartı gerekmez.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Bağımsız Danışmanlık Alın
Aşağıdaki formu doldurun veya sales@ironsoftware.com adresine e-posta gönderin
Bilgileriniz daima gizli kalacaktır.
Dünya Çapında Milyonlarca Mühendisin Güvendiği
Iron Software müşteri logoları
Ücretsiz 30 Günlük Deneme Anahtarınızı anında alın.
Kredi kartı veya hesap oluşturma gerektirmez