KARşıLAşTıRMA

C#'ta Ücretsiz PDF Kütüphanelerinin Gizli Maliyetleri

"ücretsiz PDF kütüphanesi C#" arayan geliştiriciler, sorunlarını sıfır maliyetle çözecek gibi görünen düzinelerce NuGet paketi bulacaklar. Uygulamada, .NET PDF alanındaki her "ücretsiz" seçenek, geliştirme başladıktan sonra ortaya çıkan sınırlamalar taşır — AGPL kaynak kodu açıklaması, eksik HTML desteği, yamalanmamış CVE'lerle terk edilmiş bağımlılıklar veya lisans gerekliliğini tetikleyen gelir eşikleri. Bu makale, taahhüt etmeden önce gerçek maliyeti değerlendirmenizi sağlayacak belirli kanıtlarla bu sınırlamaları belgeliyor.

"Ücretsiz" Gerçekte .NET PDF Ekosisteminde Ne Anlama Geliyor

"Ücretsiz" sözcüğü bu alan içindeki beş farklı lisans modeline denk gelir ve bunları karıştırmak gerçek hukuki ve teknik maruz kalma yaratır:

MIT/Apache (gerçekten izin verici): PdfSharp MIT lisansı kullanır. Gelir kısıtlamaları yok, copyleft yok, açıklama gereklilikleri yok. Ticari yazılımda herhangi bir koşul olmaksızın sunabilirsiniz. Takas yetenek değil, lisanslama.

AGPL (ağır açık kaynak):iText(iText Core) AGPL kullanır. Uygulamanız bir ağ üzerinde erişilebilir hale gelirse — bu, her web uygulaması, API ve SaaS ürününü içerir — uygulamanızın tümünün kaynak kodunu AGPL altında yayımlamanız gerekir. Sadece PDF üretim kodu değil. Özel iş mantığınız, kimlik doğrulama sisteminiz, her şey.

Gelir kısıtlı topluluk lisansı: QuestPDF'nin Topluluk Lisansı, yıllık $1M brüt gelirin altındaki işletmeleri kapsar. Bu eşiği aştığınızda, ticari bir lisans zorunlu hale gelir, ne kadarQuestPDFkullandığınızdan bağımsız olarak.

Terk edilmiş ve bakımsız: Wkhtmltopdf ve onun .NET çevreleyicileri (DinkToPdf, NReco.PdfGenerator) aktif geliştirme yok. GitHub organizasyonu Temmuz 2024'te arşivlendi. Bilinen CVE'ler asla yamanmayacak.

Ücretsiz ama operasyonel olarak pahalı: Puppeteer Sharp ve Playwright, MIT lisanslıdır, ancak dış tarayıcı süreçlerini yönetmeyi gerektirir — indirmeler, işlem havuzlama, bellek kaçağı izleme, çöküş kurtarma. Altyapı maliyeti bir ticari lisansı aşabilir.

iTextve AGPL Tuzağı

iText, yaklaşık 30 milyon indirme ile NuGet'teki en çok indirilen PDF paketlerinden biridir. Birçok geliştici, ticari olarak ücretsiz olduğunu varsayarak yükler. Değildir.

Lisansa Gerçeklik

2009'da iText, LGPL'den AGPL'e geçiş yaptı. AGPL altında, iText'i herhangi bir ağla erişilebilir uygulamada dağıtmanız, tüm uygulamanızın kaynak kodunu AGPL şartlarına uygun olarak yayınlamanızı gerektirir. IText'in kendi belgeleri şöyle der: "AGPL lisansı altında kendi uygulamalarınızın tüm kaynak kodunu açıklamadan bir ağa dağıtamayabilirsiniz."

Bu teorik değil. Web uygulamanıza, ağ üzerinden erişilebilen dahili araçlarınıza, SaaS ürününüze ve müşteri projelerinize uygulanır.

Aktif Uygulama

iText ve ana şirketi Apryse lisans uyumluluğunu agresif bir şekilde takip ediyor. Beeman & Muchmore'un Eylül 2025 analizinden şirketin uygulama modelini belgeleyerek, şirketin "Şubat 2023 rebranding dönemi etrafında lisans uyum yapılarında işe alma çılgınlığına gittiğini" belirtti. Hukuk firması bu uygulamaları patent trollüğüne benzetti — "patent portföylerini ele geçirip rastgele savunma masrafları/zararlık anlaşmaları için" kullanan şirketler.

iText kendisi bu durumu kabul etti, yasal eylemin nadiren gerekli olduğunu belirtti çünkü "ilgili kişiler dava edilmenin kendi çıkarlarına olmadığını anladı."

Eski Sürüm Boşluğu Çalışmıyor

Bazı geliştiriciler LGPL altında yayınlananiText4.1.6'yı dener. iText'in SSS'si bunu açıkça belirtir: bu sürümler artık desteklenmiyor, güvenlik yamaları yok ve API modern PDF gereksinimlerinden önceki bir dönemden kalma.

Ticari Lisanslama Maliyetleri

AGPL'ye uyamayacak şirketler içiniTextticari lisanslar sunar. 2024 itibarıyla, iText abonelik tabanlı lisanslamaya geçti, süresiz modellerden uzaklaştı. Fiyatlar yayımlanmıyor — teklif için satışla iletişime geçiyorsunuz. Vendr'den üçüncü taraf verileri maliyetlerin kullanım hacmine bağlı olarak yıllık 15.000 $ ila 210.000 $ arasında değiştiğini gösteriyor.

Bu durumu IronPDF'ın websitesinde yayınlanan fiyatlandırmaları ile başlayan ve devam eden kullanım için yıllık abonelik gerektirmeyen süresiz lisansı ile karşılaştırın.

iText'in HTML İşleme Ne Üretiyor

pdfHTML eklentisi bir tarayıcı motoru kullanmıyor. İşte modern CSS denediğinizde olanlar:

using iText.Html2pdf;
using iText.Kernel.Pdf;

// This HTML uses CSS Flexbox — a standard layout technique since 2015
string html = @"
<html><head><style>
    .container { display: flex; gap: 20px; justify-content: space-between; }
    .card { flex: 1; padding: 15px; border: 1px solid #ccc; border-radius: 8px; }
</style></head>
<body>
    <div class='container'>
        <div class='card'>Revenue: $1.2M</div>
        <div class='card'>Expenses: $890K</div>
        <div class='card'>Profit: $310K</div>
    </div>
</body></html>";

using var writer = new PdfWriter("itext-output.pdf");
using var pdf = new PdfDocument(writer);
// Result: three cards stacked vertically, no flex layout applied
// The gap, border-radius, and justify-content are ignored
HtmlConverter.ConvertToPdf(html, pdf, new ConverterProperties());
using iText.Html2pdf;
using iText.Kernel.Pdf;

// This HTML uses CSS Flexbox — a standard layout technique since 2015
string html = @"
<html><head><style>
    .container { display: flex; gap: 20px; justify-content: space-between; }
    .card { flex: 1; padding: 15px; border: 1px solid #ccc; border-radius: 8px; }
</style></head>
<body>
    <div class='container'>
        <div class='card'>Revenue: $1.2M</div>
        <div class='card'>Expenses: $890K</div>
        <div class='card'>Profit: $310K</div>
    </div>
</body></html>";

using var writer = new PdfWriter("itext-output.pdf");
using var pdf = new PdfDocument(writer);
// Result: three cards stacked vertically, no flex layout applied
// The gap, border-radius, and justify-content are ignored
HtmlConverter.ConvertToPdf(html, pdf, new ConverterProperties());
Imports iText.Html2pdf
Imports iText.Kernel.Pdf

' This HTML uses CSS Flexbox — a standard layout technique since 2015
Dim html As String = "
<html><head><style>
    .container { display: flex; gap: 20px; justify-content: space-between; }
    .card { flex: 1; padding: 15px; border: 1px solid #ccc; border-radius: 8px; }
</style></head>
<body>
    <div class='container'>
        <div class='card'>Revenue: $1.2M</div>
        <div class='card'>Expenses: $890K</div>
        <div class='card'>Profit: $310K</div>
    </div>
</body></html>"

Using writer As New PdfWriter("itext-output.pdf")
    Using pdf As New PdfDocument(writer)
        ' Result: three cards stacked vertically, no flex layout applied
        ' The gap, border-radius, and justify-content are ignored
        HtmlConverter.ConvertToPdf(html, pdf, New ConverterProperties())
    End Using
End Using
$vbLabelText   $csharpLabel

Çıktı, kartları esnek bir yerleşim olmadan dikey olarak serer. gap, border-radius, ve justify-content özellikleri göz ardı edilir. Bu, iText'in HTML işleme durumu — CSS 2.1'i yaklaşık olarak takip eder ancak Flexbox, Grid veya JavaScript çalıştırmaz.

IronPDF, Chrome ile aynı motor olan gömülü Chromium kullandığı için bunu doğru bir şekilde işler. Çıktı, tarayıcıda gördüğünüzle eşleşir:

using IronPdf;

var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(html); // Same HTML as above
pdf.SaveAs("ironpdf-output.pdf");
// Result: three cards in a horizontal row with proper spacing and rounded corners
using IronPdf;

var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(html); // Same HTML as above
pdf.SaveAs("ironpdf-output.pdf");
// Result: three cards in a horizontal row with proper spacing and rounded corners
Imports IronPdf

Dim renderer As New ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlAsPdf(html) ' Same HTML as above
pdf.SaveAs("ironpdf-output.pdf")
' Result: three cards in a horizontal row with proper spacing and rounded corners
$vbLabelText   $csharpLabel

PDFSharp: Gerçekten Ücretsiz, Gerçekten Sınırlı

PdfSharp sınırsız bir şekilde MIT lisanslıdır. 34.9 milyonun üzerinde NuGet indirmesi var. Ticari kullanım için koşulsuz ücretsizdir. Değiş tokuş yapılabilen şey yapabileceği şeydir.

HTML İşleme – Asla

PdfSharp bir çizim API'si sağlar. Belirtilen koordinatlarla DrawString(), DrawRectangle() ve DrawImage() çağırırsınız. HTML ayrıştırıcı, CSS motoru, şablon sistemi yoktur. Uygulamanız HTML şablonlarından PDF oluşturuyorsa — Razor görünümlerinden faturalar, gösterge panosu HTML'inden raporlar, e-posta-PDF arşivleme — PdfSharp bunu yapamaz.

Yaygın olarak önerilen çözüm, HtmlRenderer.PdfSharp yalnızca HTML 4.01 ve CSS Seviye 2'yi destekler. Flexbox yok. Grid yok. JavaScript yok. Web fontları yok. HTML'niz son on yıldan kalma herhangi bir CSS özelliği kullanıyorsa, işlenmez.

PDFSharp'ın Çalıştığı Yerler

PdfSharp, veri üzerinden yapılandırılmış belgeler üretmek için iyi çalışır — programatik düzenlerle faturalar, basit raporlar, PDF birleştirme ve ayırma, filigranlar ve açıklamalar. HTML işleme ihtiyacınız yoksa ve hedefiniz Windows ise, geçerli bir seçenek olmaya devam eder.

QuestPDF: Şirketiniz Büyüyene Kadar Ücretsiz

QuestPDF belgeleri programatik olarak oluşturmak için zarif bir akıcı C# API sunar. API tasarımı gerçekten iyi. Lisanslama modeli bir uçurum yaratıyor.

Gelir Eşiği

QuestPDF'nin Community License'ı bireyleri, yıllık brüt geliri 1 milyon $'ın altında olan işletmeleri, kâr amacı gütmeyen kuruluşları ve açık kaynak projelerini kapsar. Şirketiniz 1 milyon $ geliri aştığında, QuestPDF'yi ne kadar kapsamlı kullandığınızdan bağımsız olarak ticari bir lisansa geçmek zorundasınız.

İşte bu, büyüme senaryosu olarak nasıl görülüyor: Yıllık 900K $ gelir elde eden bir startup QuestPDF'yi ücretsiz kullanır. 1.000.001 $'da, ticari bir lisans gerektirirler. Eğer bütçelerine bunu koymadılarsa, lisans için ödeme yapmak veya başka bir kütüphaneye geçmek arasında seçim yapıyorlar. Hiçbir seçenek ücretsiz değil.

Eşiğe yaklaşan şirketler bunu planlamalarına eklemeli. Lisans şartlarını okursanız sürpriz olmayabilir, ancak birçok ekip kütüphane yazılımlarının kod tabanına gömüldükten sonra bunu keşfeder.

HTML Desteği Yok — Tasarım Gereği

QuestPDF HTML'yi işleme almaz. Bu, eksik bir özellik değil, kasıtlı bir tasarım seçimidir. Kütüphanenin konumlandırması "HTML-PDF dönüşümü ile savaşmayı bırakın" — HTML yaklaşımlarını programlanabilir C# koduyla değiştirir.

Bu net konumlandırmaya rağmen, "C# PDF kütüphanesi" arama sonuçlarında sık sık QuestPDF'nin HTML işleme aldığı varsayılıyor çünkü HTML yetenekli kütüphanelerle birlikte çıkıyor. 2022'den 2024'e kadar GitHub tartışmaları geliştiricilerin bunu uygulamaya başladıktan sonra bu sınırlamanın farkına vardığını gösterir. Yönetici ekibi sürekli olarak HTML desteğinin planlanmadığını doğrular.

wkhtmltopdfSarıcılar: Unpatched CVE'ler ile Terk Edildi

wkhtmltopdf, HTML-PDF için popüler bir komut satırı aracıdır. Birkaç C# sarmalayıcı vardır: DinkToPdf, NReco.PdfGenerator, WkHtmlToXSharp. Hepsi aynı terk edilmiş binary'i sarmalar.

Durum

GitHub organizasyonu 10 Temmuz 2024'te arşivlenmiştir. wkhtmltopdf durum sayfası projeyi destek dışı olarak işaretler. Homebrew 16 Aralık 2024'te cask'ı devre dışı bıraktı. Altta yatan QtWebKit motoru Qt tarafından 2015'te destek dışı bırakıldı ve 2016'da kaldırıldı.

Kritik Açıklar — Sonsuza Kadar Yamalanmamış

CVE-2022-35583 (CVSS 9.8 Kritik): Sunucu Tarafı İstek Sahteciliği. Bir saldırganwkhtmltopdftarafından işlenen HTML içeriğine bir iframe etiketi ekler. Iframe hedefleri http://169.254.169.254/latest/meta-data/ — AWS EC2 metadata endpoint'i. İşlenmiş PDF, IAM kimlik bilgilerini içeren yanıtı içerir.


<iframe src="http://169.254.169.254/latest/meta-data/iam/security-credentials/"
        style="width:100%;height:500px;"></iframe>

<iframe src="http://169.254.169.254/latest/meta-data/iam/security-credentials/"
        style="width:100%;height:500px;"></iframe>
HTML

CVE-2020-21365 (CVSS 7.5 Yüksek): Özel hazırlanmış HTML aracılığıyla uzak saldırganların yerel dosyaları okuyabilmesini sağlayan dizin geçişi.

Bu açıklar belgelenmiş, kamuya açık şekilde istismar edilebilir ve asla yamalanmayacak. wkhtmltopdf'yi özellikle kullanıcı sunumlu HTML işleyen üretimde çalıştırmak, somut, sömürülebilir bir saldırı yüzeyi oluşturur.

İşleme Kalitesi

Güvenliğin ötesinde, wkhtmltopdf'nin QtWebKit motoru, Safari 2011 yeteneklerinde donmuş durumda. CSS Flexbox yok, CSS Grid yok, sınırlı CSS3 desteği, güvenilmez JavaScript yürütme. Herhangi bir modern tarayıcıda doğru bir şekilde görüntülenen içerik,wkhtmltopdfaracılığıyla yanlış şekilde işlenecektir.

"Ücretsiz"'in Gerçek Maliyeti

Geliştirici Zamanı En Büyük Maliyet

PdfSharp HTML desteği eksikliği etrafında çalışan bir ekip — her öğeyi koordinat tabanlı çizim komutlarıyla manual olarak konumlandırmak zorunda kalıyor ve bu da geliştirici zamanını önemli ölçüde tüketiyor.

Muhafazakar bir tahmin: iş öncelikleri ve elle yerleştirmeler üzerinde aylık 2 geliştirici-gün, saatte 150 $'dan yıllık 28.800 $ maliyet yaratıyor. IronPDF'nin kurumsal lisansı bundan daha ucuz. "Ücretsiz" kütüphane, geliştirici üretkenliğinde, ticari alternatifin lisanslama maliyetlerinden daha fazlasına neden olur.

Bu PdfSharp için benzersiz değildir. Puppeteer Sharp'ın tarayıcı süreçlerini yöneten ekipler — havuzlama mantığı yazmak, hafıza sızıntılarını izlemek, çökme kurtarmasıyla ilgilenmek — lisanslama sırasında kaydettikleri değeri mühendislik zamanında ödüyorlar.

Teknik Borç Bileşik Hâle Gelir

Quandary Peak Research'in Aralık 2025 analizinde doğrudan söylenmiştir: "Açık kaynağın 'ücretsiz' etiketi bir yanlış isimdir, önemli gizli maliyetler ve potansiyel sorumluluklar saklanır."

Eksik bir özellik için her geçici çözüm, gereksinimler değiştiğinde korunması, test edilmesi ve taşınması gereken kod ekler. 2022 CISQ raporu, ABD'deki biriken yazılım teknik borcunun 1.52 trilyon dolara ulaştığını buldu. PDF kütüphanesi geçici çözüm önerileri, bir ekip HTML şablonları yerine koordinat tabanlı yerleşim kodu yazdığında bu sayıya katkıda bulunur.

Güvenlik Açığı Dolar Maliyeti Vardır

Sektör verileri gösterir ki, açık kaynak bileşenlerinin %82'si güncel değil, kod tabanlarının %75'i açık içeriyor ve %49'u yüksek riskli açık içeriyor. Özellikle kullanıcı sağladığı içerikleri işleyen ve sunucu yetkileriyle çalışan PDF kütüphaneleri yüksek risk taşır.

Equifax ihlali — 147 milyon kayıt açığa çıktı — bir açık kaynak bileşenindeki yamalanmamış bir açık nedeniyle meydana geldi. Mali etki 1,4 milyar doların üzerindeydi. Saldırı vektörü, wkhtmltopdf'nin CVE'lerinin temsil ettiği sabit olmayan bir kitaplık aracılığıyla güvensiz giriş işlemlerine aynı sınıf açığa sahipti.

Geçiş, Başlangıçta Doğru Yapmaktan Daha Pahalı

Sınırlı bir ücretsiz kütüphane ile başlamak ve daha sonra geçiş yapmak, ilk başta uygun bir kütüphane seçmekten daha pahalıdır. Geçiş, yeni API'lerin öğrenilmesini, PDF üretim kodunun yeniden yazılmasını, farklı formatlarda şablonların yeniden oluşturulmasını, her belge türünde regresyon testlerini ve indirme sistemleri boyunca çıktının doğrulanmasını içerir. İlk yıl için PDF araçlaması için 0 $ bütçelendirilen ekipler, ikinci yılda geçiş için genellikle 50.000 $+ harcıyor.

IronPDF Bu Sınırlamaları Nasıl Ele Alır

IronPDF'nin mimarisini tasarlarken, Chromium'u gömme kararı en son teknolojiye sahip olmakla değil, geliştiricilere tarayıcılarında gördükleriyle eşleşen sonuçlar vermekle alakalıydı. CSS Flexbox çalışır. CSS Grid çalışır. JavaScript çalışır. Web yazı tipleri render'lanır. HTML ve CSS yazıyorsunuz ve PDF çıktısı Chrome ile eşleşiyor.

using IronPdf;

var renderer = new ChromePdfRenderer();

var pdf = renderer.RenderHtmlAsPdf(@"
    <html>
    <head>
        <style>
            .dashboard { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
            .metric { padding: 20px; background: #f8f9fa; border-radius: 8px; text-align: center; }
            .metric h3 { margin: 0; color: #6c757d; font-size: 0.85rem; }
            .metric .value { font-size: 2rem; font-weight: bold; color: #212529; }
        </style>
    </head>
    <body>
        <div class='dashboard'>
            <div class='metric'><h3>Revenue</h3><div class='value'>$1.2M</div></div>
            <div class='metric'><h3>Users</h3><div class='value'>45,230</div></div>
            <div class='metric'><h3>Uptime</h3><div class='value'>99.97%</div></div>
        </div>
    </body>
    </html>");

pdf.SaveAs("dashboard.pdf");
using IronPdf;

var renderer = new ChromePdfRenderer();

var pdf = renderer.RenderHtmlAsPdf(@"
    <html>
    <head>
        <style>
            .dashboard { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
            .metric { padding: 20px; background: #f8f9fa; border-radius: 8px; text-align: center; }
            .metric h3 { margin: 0; color: #6c757d; font-size: 0.85rem; }
            .metric .value { font-size: 2rem; font-weight: bold; color: #212529; }
        </style>
    </head>
    <body>
        <div class='dashboard'>
            <div class='metric'><h3>Revenue</h3><div class='value'>$1.2M</div></div>
            <div class='metric'><h3>Users</h3><div class='value'>45,230</div></div>
            <div class='metric'><h3>Uptime</h3><div class='value'>99.97%</div></div>
        </div>
    </body>
    </html>");

pdf.SaveAs("dashboard.pdf");
Imports IronPdf

Dim renderer As New ChromePdfRenderer()

Dim pdf = renderer.RenderHtmlAsPdf("
    <html>
    <head>
        <style>
            .dashboard { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
            .metric { padding: 20px; background: #f8f9fa; border-radius: 8px; text-align: center; }
            .metric h3 { margin: 0; color: #6c757d; font-size: 0.85rem; }
            .metric .value { font-size: 2rem; font-weight: bold; color: #212529; }
        </style>
    </head>
    <body>
        <div class='dashboard'>
            <div class='metric'><h3>Revenue</h3><div class='value'>$1.2M</div></div>
            <div class='metric'><h3>Users</h3><div class='value'>45,230</div></div>
            <div class='metric'><h3>Uptime</h3><div class='value'>99.97%</div></div>
        </div>
    </body>
    </html>")

pdf.SaveAs("dashboard.pdf")
$vbLabelText   $csharpLabel

Bu CSS Grid, border-radius, özel yazı tipi boyutlandırma ve semantik HTML kullanır. PdfSharp bunu ayrıştıramaz.QuestPDFbunu ayrıştıramaz. iText'in pdfHTML'si bunu dikey bir yığın olarak işler.wkhtmltopdftamamen grid'i görmezden gelir. IronPDF, tarayıcıyla eşleşen üç sütunlu bir gösterge tabloları üretir.

Sürpriz Olmayan Lisanslama

IronPDF süresiz lisanslama kullanıyor — bir satın alım, süresiz kullanım. AGPL kaynak kodu ifşa yok. Gelir eşikleri yok. Zorunlu abonelik yok. Fiyatlar $2,998'dan başlayarak tek bir geliştirici için ve 'satışla iletişim kurun' duvarının arkasında olmadan websitesinde yayınlanır.

Çözüm Yolları Olmadan Çapraz Platform

IronPDF, Windows, Linux, macOS ve Docker konteynerlarında libgdiplus bağımlılıkları, System.Drawing.Common sorunları veya yerel ikili dosya kurulumu olmadan çalışır. Docker dağıtımı, ek yapılandırmalar bulunmayan standart bir .NET taban görüntüsüdür.

Karar Verme

Gereklilik PdfSharp QuestPDF iText wkhtmltopdf IronPDF
Gerçekten ücretsiz (MIT/hoşgörülü) Evet 1 milyon $'ın altında gelir Hayır (AGPL) Terkedilmiş Hayır
HTML'den PDF'ye Hayır Hayır Sınırlı Kullanım dışı Evet
Modern CSS (Flexbox/Grid) Hayır Hayır Hayır Hayır Evet
JavaScript yürütme Hayır Hayır Hayır Sınırlı Evet
Aktif güvenlik bakımı Evet Evet Evet Hayır Evet
Yayınlanmış fiyatlandırma Yok Evet Hayır Yok Evet
Gelir eşiği yok Evet Hayır Yok Evet Evet

Sadece verilerden programatik PDF oluşturulmasını gerektiren uygulamalar için — HTML şablonları veya web içerikleri olmadan — PdfSharp veya QuestPDF, şirketin büyüklüğüne bağlı olarak yeterli olabilir.

Modern CSS ile HTML'yi PDF'ye dönüştüren uygulamalar için seçenekler iText'in ticari lisansına (yıllık 15K$–210K$), Puppeteer tarayıcı altyapısını yönetmeye veya görev için tasarlanmış bir ticari kütüphaneyi kullanmaya indirgenir. IronPDF'ın $2,998'daki süresiz lisansı, üretim kalitesinde HTML işleme için en düşük maliyetli yoludur.

"ücretsiz PDF kütüphanesi C#" ifadesi, geliştiricileri aşağıda daha büyük maliyetler yaratan çözümlere çeker. Sahip olmanın toplam maliyeti bazında değerlendirin — lisanslama, geliştirici zamanı, güvenlik bakımı ve geçiş riski — başlangıç fiyat etiketi değil.

Lütfen dikkate alınApryse, DinkToPdf, NReco, PDFSharp, Playwright, PuppeteerSharp, QuestPDF,iTextvewkhtmltopdfkendi sahiplerinin tescilli markalarıdır. Bu site, Apryse, CodeFlint, DinkToPdf, Microsoft, NReco, PDFTron, PuppeteerSharp, empira Software GmbH,iTextGroup veyawkhtmltopdfile ilişkili değildir, onaylanmamış veya desteklenmemiştir. Tüm ürün adları, logolar ve markalar kendi sahiplerine aittir. 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.