SpirePDF C# HTML to PDF Eğitimi ve Kütüphane Karşılaştırması
PDF oluşturma için .NET'te .NET ve ActivePDF nasıl karşılaştırılır?
.NET, Chrome tabanlı render ve sezgisel API tasarımı ile hepsi bir arada bir PDF çözümü sunarken, ActivePDF ayrı lisans gerektiren modüler kurumsal bileşenler sağlar. .NET, modern web standartları desteğinde, platformlar arası dağıtımda ve çoğu .NET geliştirme senaryosu için maliyet etkinliğinde üstün.
Geliştiriciler, PDF oluşturma yeteneklerine ihtiyaç duyduğunda, .NET uygulamalarında sıklıkla iki öne çıkan çözüm ortaya çıkar: .NET ve ActivePDF. Her iki kütüphane de oluşturma, dönüştürme ve PDF belgelerini manipüle etme için etkili özellikler sunar, ancak yaklaşım, fiyatlandırma ve uygulama karmaşıklığı açısından önemli ölçüde farklılık gösterir.
IronPDF, sezgisel API tasarımı ve Chrome işleme motoru kullanarak tam HTML'den PDF'e dönüşüm ile öne çıkarken, ActivePDF birden fazla özel bileşen üzerinden kurumsal odaklı çözümler sağlar, örneğin HTML dönüşümleri için WebGrabber ve belge dönüşümleri için DocConverter gibi. Bu makale, geliştiricilerin PDF işleme ihtiyaçları için bilinçli bir karar vermelerine yardımcı olmak üzere derinlemesine bir karşılaştırma sağlar.
| Kategori | Özellik/Aspect | IronPDF | ActivePDF | Ana Avantaj |
|---|---|---|---|---|
| Çekirdek Mimari | Tasarım Felsefesi | Geliştirici dostu, hepsi bir arada kütüphane | Modüler bileşenler, kurumsal odaklı | IronPDF: Daha basit entegrasyon |
| API Karmaşıklığı | Intuitive methods like `product__comprehensive`-comparison-table() |
Bileşene özel API'ler | IronPDF: Daha az kod satırı | |
| Öğrenme Eğrisi | 1-2 gün tipik | 1-2 hafta tipik | IronPDF: Daha hızlı benimseme | |
| Platform Desteği | Çapraz Platform | Windows, Linux, macOS, Docker | Öncelikli olarak Windows Server | IronPDF: Gerçek çapraz platform |
| .NET Sürümleri | .NET 10, 9, 8, 7, 6, 5, Core, Framework 4.6.2+ | .NET Framework 4.5+, Core 1.0, Standard 1.0 | .NET: Modern .NET desteği | |
| Bulut Platformları | Azure, AWS, Google Cloud optimizasyonu | Sınırlı bulut desteği | IronPDF: Bulut yerel hazır | |
| HTML'den PDF'e | Renderleme Motoru | Chrome V8 motoru | Yerli ve IE motorları | IronPDF: Modern renderlama |
| CSS3/HTML5 Desteği | Tam destek | Kısmi destek | IronPDF: Modern web standartları | |
| JavaScript Yürütme | Tam JavaScript desteği | Sınırlı JavaScript desteği | IronPDF: Dinamik içerik | |
| Web Yazı Tipleri | Google Yazı Tipleri, sistem yazı tipleri | Sadece sistem yazı tipleri | IronPDF: Tipografi esnekliği | |
| Belge Dönüşümü | Desteklenen Formatlar | HTML, DOCX, Görüntüler, RTF, MD | 300+ format (`DocConverter`) | ActivePDF: Daha fazla format |
| DOCX'ten PDF'ye | Yerleşik table-number |
Yerel Office dönüşümü | ActivePDF: Daha iyi sadakat | |
| Toplu İşleme | Programatik yaklaşım | İzlenen klasörler desteği | ActivePDF: Kurumsal otomasyon | |
| Performans | HTML İşleme Hızı | Hızlı ve içerik türleri arasında tutarlı | Motora göre değişken | IronPDF: Tutarlı performans |
| Bellek Kullanımı | 10MB altında tipik | Hizmete dayalı genel gider | IronPDF: Daha düşük ayak izi | |
| İş parçacığı desteği | Yerel async/await optimizasyonu | Çok iş parçacıklı hizmet | .NET: Daha iyi .NET entegrasyonu | |
| PDF Özellikleri | Form İşleme | Formlar oluşturma, doldurma, düzleştirme | Gelişmiş form özellikleri (Araç Kiti) | ActivePDF: Karmaşık formlar |
| PDF/A Uyum | PDF/A-3B desteği | Birden çok PDF/A seviyesi | ActivePDF: Daha fazla uyumluluk seçeneği | |
| OCR Yetenekleri | Via IronOCR entegrasyonu | Özel OCR bileşeni | Her ikisi de: Mevcut çözümler | |
| Dijital İmzalar | Entegre, görsel imzalar | Gelişmiş imza seçenekleri | ActivePDF: Kurumsal imzalar | |
| Geliştirici Deneyimi | Dokümantasyon | Tam öğreticiler, örnekler | Geleneksel API dökümanları | IronPDF: Daha iyi öğrenme kaynakları |
| Kod Örnekleri | 100+ çalışmaya hazır örnek | GitHub'da basit örnekler | IronPDF: Kapsamlı kaynaklar | |
| Hata Mesajları | Açıklayıcı, eyleme geçirilebilir | Hizmet düzeyi mesajları | IronPDF: Daha iyi hata ayıklama | |
| Licensing & Pricing | Giriş Seviyesi | Lite: $999 (1 geliştirici, 1 proje) | `WebGrabber`: Fiyatlandırma için ActivePDF/Apryse ile iletişime geçin | IronPDF: Şeffaf, daha düşük giriş fiyatlandırması |
| Team License | Professional: $2,999 (10 geliştirici) | Birden fazla bileşen gerekiyor | IronPDF: Her şey dahil | |
| Süit Seçeneği | Iron Suite: $2,998 (10 products) | Süit seçeneği yok | IronPDF: Olağanüstü değer | |
| Destek | Destek Dahil | Evet, 24/5 mühendislik desteği | Destek portalı erişimi | IronPDF: Doğrudan mühendislik desteği |
| Yanıt Süresi | 24-48 saat tipik | Soruna göre değişir | IronPDF: Öngörülebilir SLA | |
| En İyi Kullanım Alanı | Kullanım Durumları | Modern web uygulamaları, hızlı geliştirme | Kurumsal otomasyon, eski sistemler | Bağlama bağlı |
| Proje Türleri | SaaS, web uygulamaları, mikro hizmetler | Doküman yönetimi, toplu işleme | Gereksinimlere bağlı olarak |
Genel Bakış
IronPDF C# Kütüphanesi Nedir?
Iron Software, IronPDF ile kapsamlı PDF manipülasyonu sunan, pazar lideri bir bileşen sağlayıcısıdır. IronPDF, çeşitli formatlardan PDF dosyaları oluşturmak için ve belge özellikleri üzerinde tam programlama kontrolü sağlamak için her şey dahil bir çözüm sunar. Geliştiriciler, tutarlı, güvenilir çıktısı ve minimal kod gerektiren sezgisel API'si nedeniyle, özellikle günümüz web standartları ve JavaScript çerçeveleri ile çalışırken IronPDF'yi tercih ederler.
.NET, C#, VB.NET, ASP.NET, MVC, .NET Core, .NET 9 ve .NET 10'u destekler. Sorunsuz bir şekilde Windows, Linux, macOS, Docker, Azure, AWS ve diğer bulut platformları üzerinde çalışır.
ActivePDF Bileşenleri Nelerdir?
ActivePDF (şimdi Apryse'nin bir parçası), çoklu özel bileşenler aracılığıyla kurumsal odaklı PDF çözümleri sunar. IronPDF'nin birleşik yaklaşımının aksine, ActivePDF farklı PDF görevleri için ayrı ürünler sunar ve lisanslama seçenekleri ve kurumsal dağıtım stratejileri için dikkatli bir değerlendirme gerektirir.
ActivePDF WebGrabber HTML'den PDF'e Dönüşüm İçin Nedir?
ActivePDF WebGrabber, HTML kaynaklarını (URL'ler, HTML dosyaları veya HTML dizeleri) PDF formatına dönüştürmek için özel olarak tasarlanmıştır. Sayfa özellikleri için başlıklar, altbilgiler, kenar boşlukları, filigranlar ve yer imleri dahil yapılandırma seçenekleri sunar. WebGrabber hem Yerel hem de Internet Explorer işleme motorlarını destekler.
ActivePDF DocConverter Belge Dönüşümü İçin Nedir?
ActivePDF DocConverter, Microsoft Office belgeleri, görüntüler, CAD dosyaları ve daha fazlası dahil olmak üzere 300'den fazla dosya formatının PDF'e dönüştürülmesini sağlar. Göz ile otomasyon, toplu işleme yetenekleri ve kurumsal seviyede belge yönetimi özelliklerine sahiptir.
Modern CSS Çerçeveleri Bootstrap Gibi PDF'de Nasıl İşlenir?
Günümüz web uygulamaları, tutarlı ve duyarlı UI geliştirme için giderek daha fazla CSS çerçevelerine (Bootstrap, Foundation ve Tailwind CSS gibi) bağlıdır. PDF oluşturma kütüphaneleri bu çerçeveleri doğru işleyerek profesyonel belge kalitesi ve tasarım doğruluğunu sürdürmelidir. Her kütüphanenin duyarlı CSS ve modern web yazı tiplerini nasıl ele aldığını anlamak doğru çözümü seçmek için önemlidir.
IronPDF, Bootstrap ve Modern Çerçeveler için Destek Sağlıyor mu?
IronPDF'nin Chromium işleme motoru, tüm modern CSS çerçevelerine ve özeliklere tam destek sağlar, piksel mükemmelliğinde işleme sağlar.
- Bootstrap 5: Duyarlı yardımcı programlarla Flexbox ve CSS Grid işleme
- Bootstrap 4: Tam kart sistemleri, gezinme bileşenleri ve form yerleşimleri
- Tailwind CSS: Tüm yardımcı odaklı sınıflar ve duyarlı varyantlar doğru bir şekilde işlenir
- Foundation: Tam grid ve bileşen sistemi desteği
- Modern CSS3: Flexbox, CSS Grid, özel özellikler, animasyonlar, geçişler ve dönüşümler
- JavaScript Uygulaması: Dinamik içerik ve çerçeve etkileşimlerine tam destek
Üretim örnekleri ile doğrulandı: Bootstrap anasayfası ve resmi şablonlar, IronPDF'nin işleme seçeneklerini kullanarak tarayıcı-yansımaya uygun bir şekilde dönüştürüyor.
Kod Örneği: Bootstrap ile Hizmet Fiyatlandırma Tablosu
using IronPdf;
var renderer = new ChromePdfRenderer();
string bootstrapPricing = @"
<!DOCTYPE html>
<html>
<head>
<link href='___PROTECTED_URL_198___ rel='stylesheet'>
</head>
<body>
<div class='container my-5'>
<h1 class='text-center mb-5'>Service Plans</h1>
<div class='row g-4'>
<div class='col-md-4'>
<div class='card h-100 shadow-sm'>
<div class='card-header bg-light text-center py-3'>
<h3>Starter</h3>
</div>
<div class='card-body d-flex flex-column'>
<div class='text-center mb-4'>
<span class='h2'>$29</span>
<span class='text-muted'>/month</span>
</div>
<ul class='list-unstyled flex-grow-1'>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> 100 PDF conversions/month</li>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> Basic templates</li>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> Email support</li>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> 5 GB storage</li>
<li class='mb-2 text-muted'><i class='bi bi-x-circle'></i> Priority processing</li>
</ul>
<button class='btn btn-outline-primary w-100 mt-auto'>Get Started</button>
</div>
</div>
</div>
<div class='col-md-4'>
<div class='card h-100 shadow border-primary'>
<div class='position-absolute top-0 start-50 translate-middle'>
<span class='badge bg-primary'>Most Popular</span>
</div>
<div class='card-header bg-primary text-white text-center py-3'>
<h3>Professional</h3>
</div>
<div class='card-body d-flex flex-column'>
<div class='text-center mb-4'>
<span class='h2'>$99</span>
<span class='text-muted'>/month</span>
</div>
<ul class='list-unstyled flex-grow-1'>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> 1,000 PDF conversions/month</li>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> Premium templates</li>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> Priority support</li>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> 50 GB storage</li>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> Priority processing</li>
</ul>
<button class='btn btn-primary w-100 mt-auto'>Get Started</button>
</div>
</div>
</div>
<div class='col-md-4'>
<div class='card h-100 shadow-sm'>
<div class='card-header bg-dark text-white text-center py-3'>
<h3>Enterprise</h3>
</div>
<div class='card-body d-flex flex-column'>
<div class='text-center mb-4'>
<span class='h2'>$299</span>
<span class='text-muted'>/month</span>
</div>
<ul class='list-unstyled flex-grow-1'>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> Unlimited conversions</li>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> Custom templates</li>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> Dedicated support</li>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> Unlimited storage</li>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> SLA guarantee</li>
</ul>
<button class='btn btn-dark w-100 mt-auto'>Contact Sales</button>
</div>
</div>
</div>
</div>
</div>
</body>
</html>";
var pdf = renderer.RenderHtmlAsPdf(bootstrapPricing);
pdf.SaveAs("pricing-table.pdf");
using IronPdf;
var renderer = new ChromePdfRenderer();
string bootstrapPricing = @"
<!DOCTYPE html>
<html>
<head>
<link href='___PROTECTED_URL_198___ rel='stylesheet'>
</head>
<body>
<div class='container my-5'>
<h1 class='text-center mb-5'>Service Plans</h1>
<div class='row g-4'>
<div class='col-md-4'>
<div class='card h-100 shadow-sm'>
<div class='card-header bg-light text-center py-3'>
<h3>Starter</h3>
</div>
<div class='card-body d-flex flex-column'>
<div class='text-center mb-4'>
<span class='h2'>$29</span>
<span class='text-muted'>/month</span>
</div>
<ul class='list-unstyled flex-grow-1'>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> 100 PDF conversions/month</li>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> Basic templates</li>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> Email support</li>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> 5 GB storage</li>
<li class='mb-2 text-muted'><i class='bi bi-x-circle'></i> Priority processing</li>
</ul>
<button class='btn btn-outline-primary w-100 mt-auto'>Get Started</button>
</div>
</div>
</div>
<div class='col-md-4'>
<div class='card h-100 shadow border-primary'>
<div class='position-absolute top-0 start-50 translate-middle'>
<span class='badge bg-primary'>Most Popular</span>
</div>
<div class='card-header bg-primary text-white text-center py-3'>
<h3>Professional</h3>
</div>
<div class='card-body d-flex flex-column'>
<div class='text-center mb-4'>
<span class='h2'>$99</span>
<span class='text-muted'>/month</span>
</div>
<ul class='list-unstyled flex-grow-1'>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> 1,000 PDF conversions/month</li>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> Premium templates</li>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> Priority support</li>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> 50 GB storage</li>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> Priority processing</li>
</ul>
<button class='btn btn-primary w-100 mt-auto'>Get Started</button>
</div>
</div>
</div>
<div class='col-md-4'>
<div class='card h-100 shadow-sm'>
<div class='card-header bg-dark text-white text-center py-3'>
<h3>Enterprise</h3>
</div>
<div class='card-body d-flex flex-column'>
<div class='text-center mb-4'>
<span class='h2'>$299</span>
<span class='text-muted'>/month</span>
</div>
<ul class='list-unstyled flex-grow-1'>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> Unlimited conversions</li>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> Custom templates</li>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> Dedicated support</li>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> Unlimited storage</li>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> SLA guarantee</li>
</ul>
<button class='btn btn-dark w-100 mt-auto'>Contact Sales</button>
</div>
</div>
</div>
</div>
</div>
</body>
</html>";
var pdf = renderer.RenderHtmlAsPdf(bootstrapPricing);
pdf.SaveAs("pricing-table.pdf");
Imports IronPdf
Dim renderer As New ChromePdfRenderer()
Dim bootstrapPricing As String = "
<!DOCTYPE html>
<html>
<head>
<link href='___PROTECTED_URL_198___ rel='stylesheet'>
</head>
<body>
<div class='container my-5'>
<h1 class='text-center mb-5'>Service Plans</h1>
<div class='row g-4'>
<div class='col-md-4'>
<div class='card h-100 shadow-sm'>
<div class='card-header bg-light text-center py-3'>
<h3>Starter</h3>
</div>
<div class='card-body d-flex flex-column'>
<div class='text-center mb-4'>
<span class='h2'>$29</span>
<span class='text-muted'>/month</span>
</div>
<ul class='list-unstyled flex-grow-1'>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> 100 PDF conversions/month</li>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> Basic templates</li>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> Email support</li>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> 5 GB storage</li>
<li class='mb-2 text-muted'><i class='bi bi-x-circle'></i> Priority processing</li>
</ul>
<button class='btn btn-outline-primary w-100 mt-auto'>Get Started</button>
</div>
</div>
</div>
<div class='col-md-4'>
<div class='card h-100 shadow border-primary'>
<div class='position-absolute top-0 start-50 translate-middle'>
<span class='badge bg-primary'>Most Popular</span>
</div>
<div class='card-header bg-primary text-white text-center py-3'>
<h3>Professional</h3>
</div>
<div class='card-body d-flex flex-column'>
<div class='text-center mb-4'>
<span class='h2'>$99</span>
<span class='text-muted'>/month</span>
</div>
<ul class='list-unstyled flex-grow-1'>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> 1,000 PDF conversions/month</li>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> Premium templates</li>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> Priority support</li>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> 50 GB storage</li>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> Priority processing</li>
</ul>
<button class='btn btn-primary w-100 mt-auto'>Get Started</button>
</div>
</div>
</div>
<div class='col-md-4'>
<div class='card h-100 shadow-sm'>
<div class='card-header bg-dark text-white text-center py-3'>
<h3>Enterprise</h3>
</div>
<div class='card-body d-flex flex-column'>
<div class='text-center mb-4'>
<span class='h2'>$299</span>
<span class='text-muted'>/month</span>
</div>
<ul class='list-unstyled flex-grow-1'>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> Unlimited conversions</li>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> Custom templates</li>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> Dedicated support</li>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> Unlimited storage</li>
<li class='mb-2'><i class='bi bi-check-circle text-success'></i> SLA guarantee</li>
</ul>
<button class='btn btn-dark w-100 mt-auto'>Contact Sales</button>
</div>
</div>
</div>
</div>
</div>
</body>
</html>"
Dim pdf = renderer.RenderHtmlAsPdf(bootstrapPricing)
pdf.SaveAs("pricing-table.pdf")
Çıktı: PDF'de doğru bir şekilde korunan Bootstrap'ın kart gridi, flexbox düzenleri, rozet konumlandırma ve duyarlı yardımcı programları ile profesyonel bir fiyatlandırma tablosu.
ActivePDF WebGrabber'ın Modern Çerçeve Desteği ile Sınırlılıkları Nelerdir?
ActivePDF WebGrabber HTML'den PDF'e dönüşüm sağlar ancak modern CSS çerçeveleri için önemli sınırlamalarla eski işleme motorları kullanır:
- Yerel Motor: Sınırlı CSS3 desteği ile özel işleme
- Internet Explorer Motoru: Eski IE işleme, modern CSS özellikleri yok
- Bootstrap 4/5 Desteği Yok: Flexbox ve CSS Grid özellikleri desteklenmiyor
- Bootstrap 3 Sınırlamaları: Yalnızca tablo tabanlı düzenler güvenilir şekilde çalışır
- JavaScript Sınırlamaları: Modern tarayıcılara kıyasla sınırlı JavaScript uygulaması
- Yöntem Gerekli: Karmaşık Bootstrap bileşenleri önemli CSS değişiklikleri gerektirir
Geliştiriciler tarafından bildirilen yaygın sorunlar:
- düzen problemleri ile Bootstrap navigasyon çubukları
- Flexbox ile kart bileşenleri doğru görüntülenmiyor
- PDF çıktısında Duyarlı grid sistemleri bozuluyor
- Uyumluluk için Bootstrap bileşenlerini basitleştirmek veya yeniden yazmak gerekiyor
Geliştirme etkisi: Modern Bootstrap sürümleri (4+) ile oluşturulmuş uygulamalar, ActivePDF WebGrabber ile önemli ek çalışma gerektirir. Takımlar ya şunları yapmalıdır:
- PDF oluşturma için paralel basitleştirilmiş CSS sürdürmek (çift bakım yükü)
- Web UI'ini Bootstrap 3 veya daha eskiye sınırlamak (modern duyarlı özellikleri feda eder)
- Her Bootstrap bileşenini manuel olarak test etmek ve düzeltmek (zaman alıcı ve hata eğilimli)
Bootstrap veya modern CSS çerçevelerine yoğun yatırım yapılan projelerde, ActivePDF WebGrabber'ın işleme sınırlamaları, geliştirme maliyetlerini önemli ölçüde arttırabilir ve tasarım esnekliğini azaltabilir. IronPDF'nin Chrome işleyicisi'ni hassas Bootstrap işleme için kullanmayı düşünün.
Tam Bootstrap çerçeve uyumluluğu klavuzu için, Bootstrap & Flexbox CSS Klavuzu'na bakın.
Geliştiriciler neden IronPDF'yi ActivePDF'ye tercih eder?
IronPDF'nin işleme hızı farklı içerik türlerinde tutarlı HTML'den PDF'e dönüşüm performansı sunar. Kütüphanenin bellek kullanımı, başlıklar ve altbilgiler oluştururken verimlilik için optimize edilmiştir.
Geliştiriciler, IronPDF'nin API tasarımı ile üç satır kodla geliştirilmiş PDF üretimi sağlar, ActivePDF'nin daha karmaşık çok adımlı işlemine kıyasla. Tam belgeler, 100'den fazla kod örnekleri ve ayrıntılı öğreticiler içermektedir, asenkron PDF oluşturma ve toplu işleme gibi özelliklerle takımların hızlı bir şekilde başlamasını kolaylaştırır.
Ne zaman ActivePDF daha iyi bir seçenek olabilir?
ActivePDF, kurumsal ortamlarda fark yaratır:
- Göz izleme klasörleriyle otomatik toplu işleme
- 300'den fazla dosya formatının dönüştürülmesi desteği (via
DocConverter) - Windows Server üzerinde eski sistem entegrasyonu
- Gelişmiş form alanı manipülasyonu ve XFA form desteği
- Arşiv gereksinimleri için birden fazla PDF/A uyumluluk seviyesi
Mevcut ActivePDF altyapısına veya belirli kurumsal iş akışı gereksinimlerine sahip olan kuruluşlar, IronPDF'nin özelliklerine kıyasla daha yüksek maliyet ve karmaşıklığa rağmen, ActivePDF'nin modüler yaklaşımını faydalı bulabilirler.
Karşılaştırma
ActivePDF ile IronPDF Özellikleri Nasıl Karşılaştırılır?
Hangi kütüphane daha iyi HTML'den PDF'e dönüştürme yetenekleri sunar?
IronPDF, yüksek doğruluğa sahip tarayıcı işleme sağlayan tam Chrome V8 işleme motoru kullanır ve tam HTML5, CSS3, JavaScript, ve web yazı tipleri desteği sunar. ActivePDF WebGrabber hem Yerel hem de Internet Explorer motorları sunar, ancak sınırlı JavaScript yürütme ve CSS3 desteği ile. Yerel Motor, CSS stil sayfalarını dikkate almaz ve IE Motor, modern web standartları eksik olan, artık geliştirilmeyen Internet Explorer 11'e dayanır (CSS Grid ve flexbox düzenleri gibi).
Belge formatı desteği açısından kütüphaneler nasıl karşılaştırılıyor?
IronPDF yaygın formatlara odaklanırken (HTML, DOCX, Görseller, RTF, Markdown), ActivePDF DocConverter CAD dosyaları, eski belge formatları ve özel kurumsal formatlar dahil 300'den fazla dosya formatını destekler. Bu, çeşitli belge türleri ile uğraşan kuruluşlar için ActivePDF'yi daha uygun hale getirir; ancak, IronPDF'nin dönüştürme özellikleri modern uygulamalarda en yaygın kullanılan formatları kapsamaktadır.
PDF manipülasyon özellikleri ne olacak?
Her iki kütüphane, tam PDF manipülasyon özellikleri sunar:
IronPDF:
- HTML/CSS stilizasyonuyla yerleşik filigranlama
- Önceden tanımlanmış birleştirme alanları ile başlıklar/altbilgiler için basit API
- yaygın görevler için tek satırlık yöntemler
- Entegre form oluşturma ve doldurma
- Görsel temsil ile dijital imzalar
ActivePDF:
- Gelişmiş form alanı manipülasyonu (Kitaplık aracılığıyla)
- PDF iç kısımları üzerinde daha ayrıntılı kontrol
- Kurumsal seviyede redaksiyon yetenekleri
- Birden fazla PDF/A uyumluluk seviyesi
- Belirli görevler için özel bileşenler
Adım 1: Kurulum
IronPDF Nasıl Kurulur?
IronPDF'nin hangi kurulum yöntemini kullanmalıyım?
Geliştiriciler, IronPDF'yi birden fazla yöntemle kurabilir, NuGet Paket Yöneticisi en uygun olanıdır:
NuGet Paket Yöneticisi
Visual Studio'da NuGet Paket Yöneticisini açın ve IronPDF'yi arayın:
:InstallCmd
:InstallCmd
IronPDF.dll dosyasını manuel olarak indir
Alternatif olarak, IronPDF.dll dosyasını indir ve projeye manuel kurulum yöntemlerini kullanarak ekleyin.
Kurulumdan sonra erişimi doğrulamak için şu adımı gerçekleştirin:
using IronPdf;
using IronPdf;
Imports IronPdf
.NET, .NET 9 ve 10, Core, Standard, ve Framework 4.6.2+ dahil olmak üzere tüm modern .NET sürümlerine destek verir. Belirli platform kurulumları için Linux, macOS, Docker, Azure, ve AWS kılavuzlarına bakın.
ActivePDF Bileşenlerini Nasıl Kurarım?
ActivePDF WebGrabber Nasıl Yüklenir?
ActivePDF WebGrabber daha karmaşık bir kurulum süreci gerektirir:
- ActivePDF web sitesinden kurulum dosyasını indirin
- ActivePDF satış ekibinden bir lisans anahtarı talep edin (değerlendirme anahtarları mevcut)
- Yükleyiciyi yönetici ayrıcalıklarıyla çalıştırın
- Kurulum sırasında
WebGrabberhizmetini yapılandırma - Windows Server 2012+ için hizmet için özel bir kullanıcı hesabı oluşturun
Kurulumdan sonra, WebGrabber referansını şuradan ekleyin:
C:\Program Files\ActivePDF\WebGrabber\bin\APWebGrabber.Net45.dll
ActivePDF DocConverter Nasıl Yüklenir?
DocConverter benzer bir kurulum modeli izler:
DocConverterkurulum programını indir- Yönetici haklarıyla kurulum yapın
- Sürükle ve bırak dönüştürme kullanılıyorsa izlenen klasörleri yapılandırın
- Toplu işleme için Yapılandırma Yöneticisini ayarlayın
Not: ActivePDF bileşenleri çapraz platform dağıtımı gibi IronPDF'yi desteklemez ve sadece Windows Server gerektirir. Modern dağıtım senaryoları için, IronPDF'nin konteynerleştirilmiş seçeneklerini ve bulut doğuştan desteğini göz önünde bulundurun.
Nasıl Yapılır Eğitimleri
HTML Dizesini PDF Dosyasına Nasıl Dönüştürürüm?
Her iki kütüphanenin de yaygın bir görevi nasıl ele aldığını karşılaştıralım: bir HTML dizesini bir PDF dosyasına dönüştürme.
IronPDF HTML Dizesini PDF'ye Nasıl Dönüştürür?
/**
* HTML String to PDF
* anchor-html-string-with-ironpdf
**/
using IronPdf;
static void Main(string[] args)
{
// Create rendering converter
var renderer = new ChromePdfRenderer();
// HTML Source
string html = "<h1>Hello World!</h1> <h2>Welcome to IronPDF</h2> ";
// Convert HTML string to PDF file
var pdf = renderer.RenderHtmlAsPdf(html);
// Save the file
pdf.SaveAs("E:/sample.pdf");
}
/**
* HTML String to PDF
* anchor-html-string-with-ironpdf
**/
using IronPdf;
static void Main(string[] args)
{
// Create rendering converter
var renderer = new ChromePdfRenderer();
// HTML Source
string html = "<h1>Hello World!</h1> <h2>Welcome to IronPDF</h2> ";
// Convert HTML string to PDF file
var pdf = renderer.RenderHtmlAsPdf(html);
// Save the file
pdf.SaveAs("E:/sample.pdf");
}
'''
''' * HTML String to PDF
''' * anchor-html-string-with-ironpdf
''' *
Imports IronPdf
Shared Sub Main(ByVal args() As String)
' Create rendering converter
Dim renderer = New ChromePdfRenderer()
' HTML Source
Dim html As String = "<h1>Hello World!</h1> <h2>Welcome to IronPDF</h2> "
' Convert HTML string to PDF file
Dim pdf = renderer.RenderHtmlAsPdf(html)
' Save the file
pdf.SaveAs("E:/sample.pdf")
End Sub
IronPDF'nin yaklaşımının temel avantajları:
- Dönüşüm için yalnızca 3 satır kod
- kodlama ve işleme otomatik olarak ele alınır
- Yerleşik Chrome motoru, doğru işleme sağlar
- Ayrı dosya yolu ve adı yapılandırmasına gerek yok
ActivePDF WebGrabber HTML dizgilerini PDF'e nasıl dönüştürür?
using APWebGrabber;
static void Main(string[] args)
{
// Instantiate Object
WebGrabber wg = new WebGrabber();
// HTML Source
string html = "<h1>Hello World!</h1> <h2>Welcome to ActivePDF WebGrabber</h2>";
// Assign source HTML to WebGrabber
wg.CreateFromHTMLText = html;
// Specify file directory
wg.OutputDirectory = "E:/";
// File name
wg.NewDocumentName = "sample.pdf";
// Convert source HTML to PDF file
wg.ConvertToPDF();
}
using APWebGrabber;
static void Main(string[] args)
{
// Instantiate Object
WebGrabber wg = new WebGrabber();
// HTML Source
string html = "<h1>Hello World!</h1> <h2>Welcome to ActivePDF WebGrabber</h2>";
// Assign source HTML to WebGrabber
wg.CreateFromHTMLText = html;
// Specify file directory
wg.OutputDirectory = "E:/";
// File name
wg.NewDocumentName = "sample.pdf";
// Convert source HTML to PDF file
wg.ConvertToPDF();
}
Imports APWebGrabber
Shared Sub Main(ByVal args() As String)
' Instantiate Object
Dim wg As New WebGrabber()
' HTML Source
Dim html As String = "<h1>Hello World!</h1> <h2>Welcome to ActivePDF WebGrabber</h2>"
' Assign source HTML to WebGrabber
wg.CreateFromHTMLText = html
' Specify file directory
wg.OutputDirectory = "E:/"
' File name
wg.NewDocumentName = "sample.pdf"
' Convert source HTML to PDF file
wg.ConvertToPDF()
End Sub
Her iki kütüphane, CSS stilizasyonu ile ileri düzey HTML'yi nasıl ele alır?
Örnek, her iki kütüphanenin CSS stilizasyonu ile daha karmaşık HTML'yi nasıl ele aldığını gösterir:
IronPDF İleri Düzey Örnek:
using IronPdf;
var renderer = new ChromePdfRenderer();
// Configure rendering options
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Print;
renderer.RenderingOptions.PrintHtmlBackgrounds = true;
renderer.RenderingOptions.CreatePdfFormsFromHtml = true;
string advancedHtml = @"
<html>
<head>
<style>
body { font-family: Arial, sans-serif; }
.invoice { border: 1px solid #ccc; padding: 20px; }
.header { background-color: #f0f0f0; padding: 10px; }
</style>
</head>
<body>
<div class='invoice'>
<div class='header'>
<h1>Invoice #12345</h1>
</div>
<form>
<input type='text' name='customer' placeholder='Customer Name'>
</form>
</div>
</body>
</html>";
var pdf = renderer.RenderHtmlAsPdf(advancedHtml);
pdf.SaveAs("advanced-invoice.pdf");
using IronPdf;
var renderer = new ChromePdfRenderer();
// Configure rendering options
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Print;
renderer.RenderingOptions.PrintHtmlBackgrounds = true;
renderer.RenderingOptions.CreatePdfFormsFromHtml = true;
string advancedHtml = @"
<html>
<head>
<style>
body { font-family: Arial, sans-serif; }
.invoice { border: 1px solid #ccc; padding: 20px; }
.header { background-color: #f0f0f0; padding: 10px; }
</style>
</head>
<body>
<div class='invoice'>
<div class='header'>
<h1>Invoice #12345</h1>
</div>
<form>
<input type='text' name='customer' placeholder='Customer Name'>
</form>
</div>
</body>
</html>";
var pdf = renderer.RenderHtmlAsPdf(advancedHtml);
pdf.SaveAs("advanced-invoice.pdf");
Imports IronPdf
Private renderer = New ChromePdfRenderer()
' Configure rendering options
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Print
renderer.RenderingOptions.PrintHtmlBackgrounds = True
renderer.RenderingOptions.CreatePdfFormsFromHtml = True
Dim advancedHtml As String = "
<html>
<head>
<style>
body { font-family: Arial, sans-serif; }
.invoice { border: 1px solid #ccc; padding: 20px; }
.header { background-color: #f0f0f0; padding: 10px; }
</style>
</head>
<body>
<div class='invoice'>
<div class='header'>
<h1>Invoice #12345</h1>
</div>
<form>
<input type='text' name='customer' placeholder='Customer Name'>
</form>
</div>
</body>
</html>"
Dim pdf = renderer.RenderHtmlAsPdf(advancedHtml)
pdf.SaveAs("advanced-invoice.pdf")
ChromePdfRenderer sınıfı, işleme süreci üzerinde kapsamlı kontrol sağlar, CSS medya türü seçimi, arka plan işleme ve HTML giriş elemanlarından otomatik form alanı oluşturma gibi.
HTML Dosyasını PDF Dosyasına Nasıl Dönüştürürüm?
IronPDF HTML dosyalarını PDF'ye nasıl dönüştürür?
/**
* HTML File to PDF
* anchor-html-file-with-ironpdf
**/
using IronPdf;
static void Main(string[] args)
{
// Create rendering converter
var renderer = new ChromePdfRenderer();
// Render HTML file to PDF
var pdf = renderer.RenderHtmlFileAsPdf("E:/myHtmlFile.html");
// Save to target location
pdf.SaveAs("E:/Sample.pdf");
}
/**
* HTML File to PDF
* anchor-html-file-with-ironpdf
**/
using IronPdf;
static void Main(string[] args)
{
// Create rendering converter
var renderer = new ChromePdfRenderer();
// Render HTML file to PDF
var pdf = renderer.RenderHtmlFileAsPdf("E:/myHtmlFile.html");
// Save to target location
pdf.SaveAs("E:/Sample.pdf");
}
'''
''' * HTML File to PDF
''' * anchor-html-file-with-ironpdf
''' *
Imports IronPdf
Shared Sub Main(ByVal args() As String)
' Create rendering converter
Dim renderer = New ChromePdfRenderer()
' Render HTML file to PDF
Dim pdf = renderer.RenderHtmlFileAsPdf("E:/myHtmlFile.html")
' Save to target location
pdf.SaveAs("E:/Sample.pdf")
End Sub
IronPDF otomatik olarak şunları ele alır:
ActivePDF WebGrabber HTML dosyalarını PDF'e nasıl dönüştürür?
using APWebGrabber;
static void Main(string[] args)
{
// Instantiate Object
WebGrabber wg = new WebGrabber();
// Specify file path to be converted
wg.URL = "E:/myHtmlFile.html";
// Specify the directory for newly generated file
wg.OutputDirectory = "E:/";
// Newly generated file name
wg.NewDocumentName = "Sample.pdf";
// Convert HTML file to PDF
wg.ConvertToPDF();
}
using APWebGrabber;
static void Main(string[] args)
{
// Instantiate Object
WebGrabber wg = new WebGrabber();
// Specify file path to be converted
wg.URL = "E:/myHtmlFile.html";
// Specify the directory for newly generated file
wg.OutputDirectory = "E:/";
// Newly generated file name
wg.NewDocumentName = "Sample.pdf";
// Convert HTML file to PDF
wg.ConvertToPDF();
}
Imports APWebGrabber
Shared Sub Main(ByVal args() As String)
' Instantiate Object
Dim wg As New WebGrabber()
' Specify file path to be converted
wg.URL = "E:/myHtmlFile.html"
' Specify the directory for newly generated file
wg.OutputDirectory = "E:/"
' Newly generated file name
wg.NewDocumentName = "Sample.pdf"
' Convert HTML file to PDF
wg.ConvertToPDF()
End Sub
Not: ActivePDF WebGrabber, yerel dosyalar için URL özelliğini kullanır ve bu, dosya-özel bir yöntem bekleyen geliştiriciler için kafa karıştırıcı olabilir. Daha sezgisel dosya işlemleri için IronPDF'nin HTML dosya dönüştürme kılavuzuna bakın.
URL'yi PDF Dosyasına Nasıl Dönüştürürüm?
IronPDF URL'leri PDF'ye nasıl dönüştürür?
/**
* URL to PDF
* anchor-url-with-ironpdf
**/
using IronPdf;
static void Main(string[] args)
{
// Create rendering converter
var renderer = new ChromePdfRenderer();
// Specify URL
var pdf = renderer.RenderUrlAsPdf("___PROTECTED_URL_199___");
// Save the file
pdf.SaveAs("E:/Sample.pdf");
}
/**
* URL to PDF
* anchor-url-with-ironpdf
**/
using IronPdf;
static void Main(string[] args)
{
// Create rendering converter
var renderer = new ChromePdfRenderer();
// Specify URL
var pdf = renderer.RenderUrlAsPdf("___PROTECTED_URL_199___");
// Save the file
pdf.SaveAs("E:/Sample.pdf");
}
Imports IronPdf
Module Program
Sub Main(args As String())
' Create rendering converter
Dim renderer As New ChromePdfRenderer()
' Specify URL
Dim pdf = renderer.RenderUrlAsPdf("___PROTECTED_URL_199___")
' Save the file
pdf.SaveAs("E:/Sample.pdf")
End Sub
End Module
IronPDF ile asenkron URL dönüşümünü nasıl ele alırım?
IronPDF, daha iyi performans için mükemmel asenkron destek sağlar:
using IronPdf;
using System.Threading.Tasks;
static async Task Main(string[] args)
{
var renderer = new ChromePdfRenderer();
// Configure for complex pages
renderer.RenderingOptions.WaitFor.RenderDelay(2000); // Wait 2 seconds
renderer.RenderingOptions.WaitFor.JavaScript(1500); // Wait for JS
// Async conversion
var pdf = await renderer.RenderUrlAsPdfAsync("___PROTECTED_URL_200___");
await pdf.SaveAsAsync("E:/async-sample.pdf");
}
using IronPdf;
using System.Threading.Tasks;
static async Task Main(string[] args)
{
var renderer = new ChromePdfRenderer();
// Configure for complex pages
renderer.RenderingOptions.WaitFor.RenderDelay(2000); // Wait 2 seconds
renderer.RenderingOptions.WaitFor.JavaScript(1500); // Wait for JS
// Async conversion
var pdf = await renderer.RenderUrlAsPdfAsync("___PROTECTED_URL_200___");
await pdf.SaveAsAsync("E:/async-sample.pdf");
}
Imports IronPdf
Imports System.Threading.Tasks
Module Program
Async Function Main(args As String()) As Task
Dim renderer = New ChromePdfRenderer()
' Configure for complex pages
renderer.RenderingOptions.WaitFor.RenderDelay(2000) ' Wait 2 seconds
renderer.RenderingOptions.WaitFor.JavaScript(1500) ' Wait for JS
' Async conversion
Dim pdf = Await renderer.RenderUrlAsPdfAsync("___PROTECTED_URL_200___")
Await pdf.SaveAsAsync("E:/async-sample.pdf")
End Function
End Module
WaitFor sınıfı, JavaScript-ağır uygulamalar için gerekli olan, işleme zamanlaması üzerinde hassas kontrol sağlar. Geliştiriciler, belirli öğeleri bekleyebilir, ağ boşta durma durumları veya JavaScript mesaj dinleyicileri kullanarak özel JavaScript olayları bekleyebilir.
ActivePDF WebGrabber URL'leri PDF'e nasıl dönüştürür?
using APWebGrabber;
static void Main(string[] args)
{
// Instantiate Object
WebGrabber wg = new WebGrabber();
// Specify URL
wg.URL = "___PROTECTED_URL_201___";
// Specify the directory for newly generated file
wg.OutputDirectory = "E:/";
// Specify file name
wg.NewDocumentName = "Sample.pdf";
// Set timeout for conversion
wg.TimeoutSpan = new TimeSpan(0, 0, 30);
// Convert specified URL webpage to PDF
wg.ConvertToPDF();
}
using APWebGrabber;
static void Main(string[] args)
{
// Instantiate Object
WebGrabber wg = new WebGrabber();
// Specify URL
wg.URL = "___PROTECTED_URL_201___";
// Specify the directory for newly generated file
wg.OutputDirectory = "E:/";
// Specify file name
wg.NewDocumentName = "Sample.pdf";
// Set timeout for conversion
wg.TimeoutSpan = new TimeSpan(0, 0, 30);
// Convert specified URL webpage to PDF
wg.ConvertToPDF();
}
Imports APWebGrabber
Module Program
Sub Main(args As String())
' Instantiate Object
Dim wg As New WebGrabber()
' Specify URL
wg.URL = "___PROTECTED_URL_201___"
' Specify the directory for newly generated file
wg.OutputDirectory = "E:/"
' Specify file name
wg.NewDocumentName = "Sample.pdf"
' Set timeout for conversion
wg.TimeoutSpan = New TimeSpan(0, 0, 30)
' Convert specified URL webpage to PDF
wg.ConvertToPDF()
End Sub
End Module
IronPDF'nin URL'yi PDF'ye dönüştürme kılavuzuna bakın.
PDF'ye Nasıl Filigran Eklerim?
IronPDF filigran eklemeyi nasıl ele alır?
IronPDF, HTML/CSS aracılığıyla esnek filigran ekleme sağlar:
/**
* Watermark PDF
* anchor-watermark-with-ironpdf
**/
using IronPdf;
static void Main(string[] args)
{
var renderer = new ChromePdfRenderer();
// Source HTML string
string html = "<h1 style='text-align:center'>WaterMark Example</h1>";
// Create PDF
var pdf = renderer.RenderHtmlAsPdf(html);
// Apply watermark with HTML/CSS
pdf.ApplyWatermark("<h2 style='color:red; opacity:0.5'>CONFIDENTIAL</h2>",
rotation: 30,
opacity: 50);
// Save the document
pdf.SaveAs("E:/Sample.pdf");
}
/**
* Watermark PDF
* anchor-watermark-with-ironpdf
**/
using IronPdf;
static void Main(string[] args)
{
var renderer = new ChromePdfRenderer();
// Source HTML string
string html = "<h1 style='text-align:center'>WaterMark Example</h1>";
// Create PDF
var pdf = renderer.RenderHtmlAsPdf(html);
// Apply watermark with HTML/CSS
pdf.ApplyWatermark("<h2 style='color:red; opacity:0.5'>CONFIDENTIAL</h2>",
rotation: 30,
opacity: 50);
// Save the document
pdf.SaveAs("E:/Sample.pdf");
}
'''
''' * Watermark PDF
''' * anchor-watermark-with-ironpdf
''' *
Imports IronPdf
Shared Sub Main(ByVal args() As String)
Dim renderer = New ChromePdfRenderer()
' Source HTML string
Dim html As String = "<h1 style='text-align:center'>WaterMark Example</h1>"
' Create PDF
Dim pdf = renderer.RenderHtmlAsPdf(html)
' Apply watermark with HTML/CSS
pdf.ApplyWatermark("<h2 style='color:red; opacity:0.5'>CONFIDENTIAL</h2>", rotation:= 30, opacity:= 50)
' Save the document
pdf.SaveAs("E:/Sample.pdf")
End Sub
IronPDF ile ileri düzey filigran ekleme:
// Image watermark
pdf.ApplyWatermark($@"<img src='logo.png' style='width:200px'>",
rotation: 0,
opacity: 30,
verticalAlignment: VerticalAlignment.Middle);
// Complex HTML watermark with positioning
string complexWatermark = @"
<div style='text-align:center; font-family:Arial'>
<h1 style='color:#ff0000'>DRAFT</h1>
<p>Generated: " + DateTime.Now.ToString() + @"</p>
</div>";
pdf.ApplyWatermark(complexWatermark, rotation: 45, opacity: 25);
// Image watermark
pdf.ApplyWatermark($@"<img src='logo.png' style='width:200px'>",
rotation: 0,
opacity: 30,
verticalAlignment: VerticalAlignment.Middle);
// Complex HTML watermark with positioning
string complexWatermark = @"
<div style='text-align:center; font-family:Arial'>
<h1 style='color:#ff0000'>DRAFT</h1>
<p>Generated: " + DateTime.Now.ToString() + @"</p>
</div>";
pdf.ApplyWatermark(complexWatermark, rotation: 45, opacity: 25);
' Image watermark
pdf.ApplyWatermark($"<img src='logo.png' style='width:200px'>", rotation:= 0, opacity:= 30, verticalAlignment:= VerticalAlignment.Middle)
' Complex HTML watermark with positioning
Dim complexWatermark As String = "
<div style='text-align:center; font-family:Arial'>
<h1 style='color:#ff0000'>DRAFT</h1>
<p>Generated: " & DateTime.Now.ToString() & "</p>
</div>"
pdf.ApplyWatermark(complexWatermark, rotation:= 45, opacity:= 25)
ActivePDF nasıl filigran oluşturur?
ActivePDF, bir çözüm olarak metin mühürlerini kullanmayı gerektirir:
using APWebGrabber;
static void Main(string[] args)
{
WebGrabber wg = new WebGrabber();
string html = "<h1 style='text-align:center'>WaterMark Example</h1>";
wg.CreateFromHTMLText = html;
// Add text stamp as watermark
wg.AddStampText(270.0f, 350.0f, "WaterMark");
// Configure stamp appearance
wg.StampFontSize = 20;
wg.StampFont = "Times New Roman";
wg.StampFontTransparency = 1f;
wg.StampRotation = 45.0f;
wg.StampColorNET = new ADK.PDF.Color()
{
Red = 255,
Green = 0,
Blue = 0,
Gray = 0
};
wg.OutputDirectory = "E:/";
wg.NewDocumentName = "Sample.pdf";
wg.ConvertToPDF();
}
using APWebGrabber;
static void Main(string[] args)
{
WebGrabber wg = new WebGrabber();
string html = "<h1 style='text-align:center'>WaterMark Example</h1>";
wg.CreateFromHTMLText = html;
// Add text stamp as watermark
wg.AddStampText(270.0f, 350.0f, "WaterMark");
// Configure stamp appearance
wg.StampFontSize = 20;
wg.StampFont = "Times New Roman";
wg.StampFontTransparency = 1f;
wg.StampRotation = 45.0f;
wg.StampColorNET = new ADK.PDF.Color()
{
Red = 255,
Green = 0,
Blue = 0,
Gray = 0
};
wg.OutputDirectory = "E:/";
wg.NewDocumentName = "Sample.pdf";
wg.ConvertToPDF();
}
Imports APWebGrabber
Shared Sub Main(ByVal args() As String)
Dim wg As New WebGrabber()
Dim html As String = "<h1 style='text-align:center'>WaterMark Example</h1>"
wg.CreateFromHTMLText = html
' Add text stamp as watermark
wg.AddStampText(270.0F, 350.0F, "WaterMark")
' Configure stamp appearance
wg.StampFontSize = 20
wg.StampFont = "Times New Roman"
wg.StampFontTransparency = 1F
wg.StampRotation = 45.0F
wg.StampColorNET = New ADK.PDF.Color() With {
.Red = 255,
.Green = 0,
.Blue = 0,
.Gray = 0
}
wg.OutputDirectory = "E:/"
wg.NewDocumentName = "Sample.pdf"
wg.ConvertToPDF()
End Sub
ActivePDF yaklaşımı yalnızca metin tabanlı filigranlarla sınırlıdır ve manuel konum hesaplamaları gerektirir. IronPDF'nin filigran örneklerine bakın.
PDF'ler için Başlıklar ve Altbilgileri Nasıl Belirlerim?
IronPDF başlıkları ve altbilgileri nasıl ekler?
IronPDF hem basit metin hem de karmaşık HTML başlıklar/altbilgiler sunar:
/**
* Set Header Footers
* anchor-headers-and-footers-with-ironpdf
**/
using IronPdf;
static void Main(string[] args)
{
var renderer = new ChromePdfRenderer();
// Configure text header/footer
renderer.RenderingOptions.TextHeader = new TextHeaderFooter()
{
LeftText = "Company Name",
CenterText = "{page} of {total-pages}",
RightText = "{date} {time}",
DrawDividerLine = true,
FontSize = 12,
FontFamily = "Arial"
};
renderer.RenderingOptions.TextFooter = new TextHeaderFooter()
{
CenterText = "Copyright © 2025",
RightText = "Page {page}",
FontSize = 10
};
// HTML content
string html = "<h1>Document Content</h1><p>Lorem ipsum...</p>";
var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("E:/document.pdf");
}
/**
* Set Header Footers
* anchor-headers-and-footers-with-ironpdf
**/
using IronPdf;
static void Main(string[] args)
{
var renderer = new ChromePdfRenderer();
// Configure text header/footer
renderer.RenderingOptions.TextHeader = new TextHeaderFooter()
{
LeftText = "Company Name",
CenterText = "{page} of {total-pages}",
RightText = "{date} {time}",
DrawDividerLine = true,
FontSize = 12,
FontFamily = "Arial"
};
renderer.RenderingOptions.TextFooter = new TextHeaderFooter()
{
CenterText = "Copyright © 2025",
RightText = "Page {page}",
FontSize = 10
};
// HTML content
string html = "<h1>Document Content</h1><p>Lorem ipsum...</p>";
var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("E:/document.pdf");
}
'''
''' * Set Header Footers
''' * anchor-headers-and-footers-with-ironpdf
''' *
Imports IronPdf
Shared Sub Main(ByVal args() As String)
Dim renderer = New ChromePdfRenderer()
' Configure text header/footer
renderer.RenderingOptions.TextHeader = New TextHeaderFooter() With {
.LeftText = "Company Name",
.CenterText = "{page} of {total-pages}",
.RightText = "{date} {time}",
.DrawDividerLine = True,
.FontSize = 12,
.FontFamily = "Arial"
}
renderer.RenderingOptions.TextFooter = New TextHeaderFooter() With {
.CenterText = "Copyright © 2025",
.RightText = "Page {page}",
.FontSize = 10
}
' HTML content
Dim html As String = "<h1>Document Content</h1><p>Lorem ipsum...</p>"
Dim pdf = renderer.RenderHtmlAsPdf(html)
pdf.SaveAs("E:/document.pdf")
End Sub
HTML kullanarak daha karmaşık başlıklar/altbilgiler için:
// HTML headers with dynamic content
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
{
HtmlFragment = @"
<div style='display: flex; justify-content: space-between; padding: 10px;'>
<img src='logo.png' style='height: 30px;'>
<div>{page} / {total-pages}</div>
</div>",
Height = 50
};
// HTML headers with dynamic content
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
{
HtmlFragment = @"
<div style='display: flex; justify-content: space-between; padding: 10px;'>
<img src='logo.png' style='height: 30px;'>
<div>{page} / {total-pages}</div>
</div>",
Height = 50
};
' HTML headers with dynamic content
renderer.RenderingOptions.HtmlHeader = New HtmlHeaderFooter() With {
.HtmlFragment = "
<div style='display: flex; justify-content: space-between; padding: 10px;'>
<img src='logo.png' style='height: 30px;'>
<div>{page} / {total-pages}</div>
</div>",
.Height = 50
}
IronPDF'de kullanılabilir olan önceden tanımlanmış birleştirme alanları şunlardır:
{page}- Geçerli sayfa numarası{total-pages}- Toplam sayfa sayısı{url}- Kaynak URL (uygulanabilir ise){date}- Geçerli tarih{time}- Geçerli saat{html-title}- HTML belgesinden başlık{pdf-title}- PDF meta verileri başlığı
ActivePDF WebGrabber başlık ve altbilgi nasıl ayarlanır?
using APWebGrabber;
static void Main(string[] args)
{
WebGrabber wg = new WebGrabber();
string html = @"<h1 style='text-align:center;'>Page Content</h1>";
wg.CreateFromHTMLText = html;
// Configure header
wg.HeaderHeight = 0.5f;
wg.HeaderHTML = "<div style='float: left;'>Header Text</div>";
wg.HeaderHTML += $"<div style='float: right;'>{DateTime.Now.ToShortDateString()}</div>";
// Configure footer
wg.FooterHeight = 0.5f;
wg.FooterHTML = "<div style='text-align: right;'>%cp% of %tp%</div>";
wg.OutputDirectory = "E:/";
wg.NewDocumentName = "Sample.pdf";
wg.ConvertToPDF();
}
using APWebGrabber;
static void Main(string[] args)
{
WebGrabber wg = new WebGrabber();
string html = @"<h1 style='text-align:center;'>Page Content</h1>";
wg.CreateFromHTMLText = html;
// Configure header
wg.HeaderHeight = 0.5f;
wg.HeaderHTML = "<div style='float: left;'>Header Text</div>";
wg.HeaderHTML += $"<div style='float: right;'>{DateTime.Now.ToShortDateString()}</div>";
// Configure footer
wg.FooterHeight = 0.5f;
wg.FooterHTML = "<div style='text-align: right;'>%cp% of %tp%</div>";
wg.OutputDirectory = "E:/";
wg.NewDocumentName = "Sample.pdf";
wg.ConvertToPDF();
}
Imports APWebGrabber
Shared Sub Main(ByVal args() As String)
Dim wg As New WebGrabber()
Dim html As String = "<h1 style='text-align:center;'>Page Content</h1>"
wg.CreateFromHTMLText = html
' Configure header
wg.HeaderHeight = 0.5F
wg.HeaderHTML = "<div style='float: left;'>Header Text</div>"
wg.HeaderHTML += $"<div style='float: right;'>{DateTime.Now.ToShortDateString()}</div>"
' Configure footer
wg.FooterHeight = 0.5F
wg.FooterHTML = "<div style='text-align: right;'>%cp% of %tp%</div>"
wg.OutputDirectory = "E:/"
wg.NewDocumentName = "Sample.pdf"
wg.ConvertToPDF()
End Sub
Not: ActivePDF, mevcut sayfa için %cp%, toplam sayfalar için %tp% gibi tescilli yer tutucular kullanır ve manuel HTML oluşturulması gerektirir. IronPDF'nin başlık ve altbilgi kılavuzuna bakın.
Gelişmiş PDF Özellikleri Nasıl Karşılaştırılır?
PDF formları nasıl oluşturulur ve manipüle edilir?
IronPDF form oluşturmayı nasıl ele alır?
using IronPdf;
// Create a PDF with form fields
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.CreatePdfFormsFromHtml = true;
string formHtml = @"
<form>
<label>Name: <input type='text' name='fullname'></label><br>
<label>Email: <input type='email' name='email'></label><br>
<label>Subscribe: <input type='checkbox' name='subscribe'></label><br>
<label>
Plan:
<select name='plan'>
<option>Basic</option>
<option>Premium</option>
</select>
</label>
</form>";
var pdf = renderer.RenderHtmlAsPdf(formHtml);
// Fill form fields programmatically
pdf.Form.FindFormField("fullname").Value = "John Doe";
pdf.Form.FindFormField("email").Value = "john@example.com";
pdf.Form.FindFormField("subscribe").Value = "Yes";
pdf.SaveAs("filled-form.pdf");
using IronPdf;
// Create a PDF with form fields
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.CreatePdfFormsFromHtml = true;
string formHtml = @"
<form>
<label>Name: <input type='text' name='fullname'></label><br>
<label>Email: <input type='email' name='email'></label><br>
<label>Subscribe: <input type='checkbox' name='subscribe'></label><br>
<label>
Plan:
<select name='plan'>
<option>Basic</option>
<option>Premium</option>
</select>
</label>
</form>";
var pdf = renderer.RenderHtmlAsPdf(formHtml);
// Fill form fields programmatically
pdf.Form.FindFormField("fullname").Value = "John Doe";
pdf.Form.FindFormField("email").Value = "john@example.com";
pdf.Form.FindFormField("subscribe").Value = "Yes";
pdf.SaveAs("filled-form.pdf");
Imports IronPdf
' Create a PDF with form fields
Private renderer = New ChromePdfRenderer()
renderer.RenderingOptions.CreatePdfFormsFromHtml = True
Dim formHtml As String = "
<form>
<label>Name: <input type='text' name='fullname'></label><br>
<label>Email: <input type='email' name='email'></label><br>
<label>Subscribe: <input type='checkbox' name='subscribe'></label><br>
<label>
Plan:
<select name='plan'>
<option>Basic</option>
<option>Premium</option>
</select>
</label>
</form>"
Dim pdf = renderer.RenderHtmlAsPdf(formHtml)
' Fill form fields programmatically
pdf.Form.FindFormField("fullname").Value = "John Doe"
pdf.Form.FindFormField("email").Value = "john@example.com"
pdf.Form.FindFormField("subscribe").Value = "Yes"
pdf.SaveAs("filled-form.pdf")
IronPDF ile PDF formları oluşturma ve form verilerini düzenleme hakkında daha fazla bilgi edinin.
ActivePDF Toolkit formları nasıl ele alır?
// ActivePDF requires separate Toolkit component for forms
APToolkitNET.Toolkit toolkit = new APToolkitNET.Toolkit();
// Open existing PDF
toolkit.OpenInputFile("form-template.pdf");
// Set form field values
toolkit.SetFormFieldData("fullname", "John Doe", -997);
toolkit.SetFormFieldData("email", "john@example.com", -997);
// Save filled form
toolkit.CopyForm(0, 0);
toolkit.SaveAs("filled-form.pdf");
// ActivePDF requires separate Toolkit component for forms
APToolkitNET.Toolkit toolkit = new APToolkitNET.Toolkit();
// Open existing PDF
toolkit.OpenInputFile("form-template.pdf");
// Set form field values
toolkit.SetFormFieldData("fullname", "John Doe", -997);
toolkit.SetFormFieldData("email", "john@example.com", -997);
// Save filled form
toolkit.CopyForm(0, 0);
toolkit.SaveAs("filled-form.pdf");
' ActivePDF requires separate Toolkit component for forms
Dim toolkit As New APToolkitNET.Toolkit()
' Open existing PDF
toolkit.OpenInputFile("form-template.pdf")
' Set form field values
toolkit.SetFormFieldData("fullname", "John Doe", -997)
toolkit.SetFormFieldData("email", "john@example.com", -997)
' Save filled form
toolkit.CopyForm(0, 0)
toolkit.SaveAs("filled-form.pdf")
PDF/A uyumluluğunu nasıl sağlarım?
Her iki kütüphane de PDF/A'yı destekliyor, ancak farklı yaklaşımlarla:
IronPDF ile PDF/A nasıl oluşturulur?
using IronPdf;
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf("<h1>Archival Document</h1>");
// Convert to PDF/A-3B
pdf.SaveAsPdfA("archive.pdf", PdfAVersions.PdfA3B);
using IronPdf;
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf("<h1>Archival Document</h1>");
// Convert to PDF/A-3B
pdf.SaveAsPdfA("archive.pdf", PdfAVersions.PdfA3B);
Imports IronPdf
Private renderer = New ChromePdfRenderer()
Private pdf = renderer.RenderHtmlAsPdf("<h1>Archival Document</h1>")
' Convert to PDF/A-3B
pdf.SaveAsPdfA("archive.pdf", PdfAVersions.PdfA3B)
IronPDF ayrıca elektronik faturalandırma için ZUGFeRD ile PDF/A-3 destekler. Daha fazla ayrıntı için PDF/A kilometre taşı güncellemesini görün.
ActivePDF DocConverter ile PDF/A nasıl oluşturulur?
// Requires DocConverter component
DocConverter dc = new DocConverter();
dc.SetPDFACompliance(PDFACompliance.PDFA2B);
dc.ConvertToPDF("input.html", "output.pdf");
// Requires DocConverter component
DocConverter dc = new DocConverter();
dc.SetPDFACompliance(PDFACompliance.PDFA2B);
dc.ConvertToPDF("input.html", "output.pdf");
' Requires DocConverter component
Dim dc As New DocConverter()
dc.SetPDFACompliance(PDFACompliance.PDFA2B)
dc.ConvertToPDF("input.html", "output.pdf")
PDF'lere dijital imzalar nasıl eklenir?
IronPDF dijital imzaları nasıl ele alır?
using IronPdf;
using IronPdf.Signing;
// Load or create PDF
var pdf = PdfDocument.FromFile("document.pdf");
// Create signature with certificate
var signature = new PdfSignature("certificate.pfx", "password");
// Configure signature appearance
signature.SignatureImage = new PdfSignatureImage("signature.png");
signature.SigningContact = "john@company.com";
signature.SigningReason = "Document Approval";
// Apply signature
pdf.Sign(signature);
pdf.SaveAs("signed.pdf");
using IronPdf;
using IronPdf.Signing;
// Load or create PDF
var pdf = PdfDocument.FromFile("document.pdf");
// Create signature with certificate
var signature = new PdfSignature("certificate.pfx", "password");
// Configure signature appearance
signature.SignatureImage = new PdfSignatureImage("signature.png");
signature.SigningContact = "john@company.com";
signature.SigningReason = "Document Approval";
// Apply signature
pdf.Sign(signature);
pdf.SaveAs("signed.pdf");
Imports IronPdf
Imports IronPdf.Signing
' Load or create PDF
Private pdf = PdfDocument.FromFile("document.pdf")
' Create signature with certificate
Private signature = New PdfSignature("certificate.pfx", "password")
' Configure signature appearance
signature.SignatureImage = New PdfSignatureImage("signature.png")
signature.SigningContact = "john@company.com"
signature.SigningReason = "Document Approval"
' Apply signature
pdf.Sign(signature)
pdf.SaveAs("signed.pdf")
Gelişmiş imzalama senaryoları için IronPDF'nin imzalama rehberine ve HSM ile imzalamaya bakın.
Toplu işlem nasıl ele alınır?
IronPDF toplu dönüşümleri nasıl ele alır?
using IronPdf;
using System.Threading.Tasks;
using System.IO;
static async Task BatchConvertAsync()
{
var renderer = new ChromePdfRenderer();
var tasks = new List<Task>();
foreach (var file in Directory.GetFiles("input", "*.html"))
{
tasks.Add(Task.Run(async () =>
{
var pdf = await renderer.RenderHtmlFileAsPdfAsync(file);
var outputPath = Path.Combine("output",
Path.GetFileNameWithoutExtension(file) + ".pdf");
await pdf.SaveAsAsync(outputPath);
}));
}
await Task.WhenAll(tasks);
}
using IronPdf;
using System.Threading.Tasks;
using System.IO;
static async Task BatchConvertAsync()
{
var renderer = new ChromePdfRenderer();
var tasks = new List<Task>();
foreach (var file in Directory.GetFiles("input", "*.html"))
{
tasks.Add(Task.Run(async () =>
{
var pdf = await renderer.RenderHtmlFileAsPdfAsync(file);
var outputPath = Path.Combine("output",
Path.GetFileNameWithoutExtension(file) + ".pdf");
await pdf.SaveAsAsync(outputPath);
}));
}
await Task.WhenAll(tasks);
}
Imports IronPdf
Imports System.Threading.Tasks
Imports System.IO
Shared Async Function BatchConvertAsync() As Task
Dim renderer = New ChromePdfRenderer()
Dim tasks = New List(Of Task)()
For Each file In Directory.GetFiles("input", "*.html")
tasks.Add(Task.Run(Async Function()
Dim pdf = Await renderer.RenderHtmlFileAsPdfAsync(file)
Dim outputPath = Path.Combine("output", Path.GetFileNameWithoutExtension(file) & ".pdf")
Await pdf.SaveAsAsync(outputPath)
End Function))
Next file
Await Task.WhenAll(tasks)
End Function
Daha fazla toplu işleme tekniği için IronPDF'nin async rehberine ve paralel işlem örneklerine bakın.
ActivePDF DocConverter toplu işlemleri nasıl ele alır?
// DocConverter supports watched folders for automatic conversion
DocConverter dc = new DocConverter();
// Configure watched folder
dc.AddWatchedFolder(@"C:\Input", @"C:\Output", "*.html");
dc.StartWatching();
// Files dropped in the input folder are automatically converted
// DocConverter supports watched folders for automatic conversion
DocConverter dc = new DocConverter();
// Configure watched folder
dc.AddWatchedFolder(@"C:\Input", @"C:\Output", "*.html");
dc.StartWatching();
// Files dropped in the input folder are automatically converted
' DocConverter supports watched folders for automatic conversion
Dim dc As New DocConverter()
' Configure watched folder
dc.AddWatchedFolder("C:\Input", "C:\Output", "*.html")
dc.StartWatching()
' Files dropped in the input folder are automatically converted
Performans ve Kaynaklar Nasıl Karşılaştırılır?
Kütüphaneler performans açısından nasıl karşılaştırılır?
Benchmark testlerine ve gerçek dünya kullanımına göre:
IronPDF'nin performans özellikleri nelerdir?
- HTML işleme: Basit ve karmaşık içerikler arasında hızlı ve tutarlı
- Bellek kullanımı: Tipik işleme senaryolarında düşük ayak izi için optimize edilmiştir
- Başlangıç: Chrome motoru başlatılması bir defaya mahsus başlangıç maliyeti ekler
- Sonraki işlemler motor ısınmasından faydalanır
Detaylı performans optimizasyon ipuçları için IronPDF'nin performans rehberine bakın.
ActivePDF'nin performans özellikleri nelerdir?
- Seçilen render motoruna göre değişken
- Yerel motor: Basit HTML için daha hızlı
- IE motoru: Daha yavaş ancak eski içerikle daha iyi uyumluluk
- Servis tabanlı mimari yük ekliyor
- Toplu işleme senaryolarına daha uygun
Bellek yönetimi için en iyi uygulamalar nelerdir?
IronPDF ile bellek nasıl optimize edilir?
// Dispose of resources properly
using (var renderer = new ChromePdfRenderer())
{
using (var pdf = renderer.RenderHtmlAsPdf(html))
{
pdf.SaveAs("output.pdf");
}
}
// For large documents, use streaming
await pdf.Stream.CopyToAsync(fileStream);
// Dispose of resources properly
using (var renderer = new ChromePdfRenderer())
{
using (var pdf = renderer.RenderHtmlAsPdf(html))
{
pdf.SaveAs("output.pdf");
}
}
// For large documents, use streaming
await pdf.Stream.CopyToAsync(fileStream);
' Dispose of resources properly
Using renderer = New ChromePdfRenderer()
Using pdf = renderer.RenderHtmlAsPdf(html)
pdf.SaveAs("output.pdf")
End Using
End Using
' For large documents, use streaming
Await pdf.Stream.CopyToAsync(fileStream)
Daha fazla bellek optimizasyon stratejisi için IronPDF'nin bellek yönetimi rehberine ve PDF bellek akışı örneklerine bakın.
ActivePDF bellek düşünceleri nelerdir?
- Servis tabanlı mimari bellek kullanımını izole eder
- Dönüşümler arasında otomatik temizlik
- Windows'ta servis bellek sınırlarını yapılandırın
Mevcut Olan ActivePDF Bileşenleri Nelerdir?
Mevcut diğer ActivePDF bileşenleri nelerdir?
| Bileşen | Amaç ve Özellikler |
|---|---|
| ActivePDF `DocConverter` | 300'den fazla dosya türünü PDF'ye dönüştürür. İzlenen klasörler, toplu işleme ve kurumsal otomasyon özellikleri vardır. |
| ActivePDF `WebGrabber` | URL'ler, dosyalar ve HTML dizeleri için destek ile HTML'yi PDF'ye dönüştürür. Yerel ve IE render motorları içerir. |
| ActivePDF Toolkit | Formlar, açıklamalar, güvenlik ve düşük seviyeli PDF işlemleri dahil olmak üzere gelişmiş PDF manipülasyonu. |
| ActivePDF Server | Ağ ortamları için sunucu tabanlı PDF yazdırma çözümü. |
| ActivePDF Meridian | Kullanıcı başına ücret olmadan belgeyi PDF'ye yazdırmak için ağ PDF yazıcısı. |
| ActivePDF OCR | Taranmış PDF'leri aranabilir hale getirmek için Optik Karakter Tanıma. |
| ActivePDF Xtractor | Metin ve görüntüleri PDF dosyalarından alır ve veri işleme için kullanır. |
| ActivePDF Redactor | PDF belgelerinden hassas bilgileri kalıcı olarak çıkarır. |
Lisanslama ve Fiyatlandırma Nasıl Karşılaştırılır?
IronPDF ve ActivePDF arasındaki lisans maliyetleri nasıl karşılaştırılır?
IronPDF'nin lisanslama seçenekleri ve fiyatlandırması nelerdir (Nisan 2026 itibarıyla)?
- Lite Lisans: $999 (1 geliştirici, 1 konum, 1 proje)
- Plus Lisans: $1,499 (3 geliştirici, 3 konum, 3 proje)
- Profesyonel Lisans: $2,999 (10 geliştirici, 10 konum, 10 proje)
- Unlimited Lisans: Özel fiyatlandırma (sınırsız geliştirici/proje)
- Iron Suite: $2,998 (tüm 10 Iron Software ürünü)
Tüm lisanslar 24/5 mühendislik desteği, ömür boyu geçerlilik, ve uzantılar ve güncellemeler için seçenekler içerir.
- WebGrabber: Fiyatlandırma için ActivePDF/Apryse satışları ile doğrudan iletişime geçilmesi gerekmektedir
- DocConverter: Fiyatlandırma için ActivePDF/Apryse satışları ile doğrudan iletişime geçilmesi gerekmektedir
- Toolkit: Fiyatlandırma için ActivePDF/Apryse satışları ile doğrudan iletişime geçilmesi gerekmektedir
- Destek: Premium destek için ek maliyet
- Birden Fazla Bileşen: Birden fazla bileşen gerekli olduğunda maliyetler hızla artar
Toplam maliyet karşılaştırması nedir?
Küçük Geliştirme Ekibi (3 geliştirici) - Maliyet Karşılaştırması?
- IronPDF Plus Lisansı: $1,499 (tüm özellikler dahil)
- ActivePDF
WebGrabber+DocConverter: Fiyatlandırma için ActivePDF/Apryse satışları ile iletişime geçilmelidir - IronPDF genellikle çoklu bileşenli ActivePDF dağıtımlarına göre önemli tasarruf sağlar
Kurumsal Ekip (10 geliştirici) - Maliyet Karşılaştırması?
- IronPDF Profesyonel: $2,999 (tüm özellikler)
- ActivePDF Suite (birden fazla bileşen): Fiyatlandırma için ActivePDF/Apryse satışları ile iletişime geçilmelidir
- IronPDF'nin kapsamlı fiyatlandırması, birden fazla ayrı bileşen lisansının maliyet birikiminden kaçınır
Diğer rakiplerle detaylı fiyat karşılaştırmaları için IronPDF vs Aspose, IronPDF vs iText, ve IronPDF vs Syncfusion'a bakın.
Hangi Kütüphane Daha İyi Geliştirici Desteği Sunuyor?
Hangi kütüphane daha iyi geliştirici desteği sunuyor?
IronPDF ne tür destek sunuyor?
- 24/5 mühendislik desteği tüm lisanslarla birlikte geliyor
- Geliştirme ekibine doğrudan erişim
- 100'den fazla örnek ile kapsamlı dokümantasyon
- Aktif topluluk ve forumlar
- Düzenli güncellemeler ve iyileştirmeler
- Yanıt süresi: Tipik olarak 24-48 saat
Destek için en iyi uygulamalar için mühendislik destek talebi yapma ve en iyi desteği alma hakkında bilgi edinin.
ActivePDF ne tür destek sağlıyor?
- Destek portal erişimi
- Bilgi tabanı makaleleri
- Topluluk forumları
- Ek maliyetle premium destek mevcut
- Eski sürümler için eski belgeler
Sonuç: Hangi PDF kütüphanesini seçmelisiniz?
IronPDF'yi Ne Zaman Seçmelisiniz:
- Modern .NET Geliştirme: .NET 9/10 ve çapraz platform dağıtımı için tam destek
- Hızlı Geliştirme: Sezgisel API, minimum kod gerektirir
- Web Uygulamaları: Chrome motoruyla üstün HTML/CSS/JavaScript render etme
- Bulut Dağıtımı: Azure, AWS ve konteynerleştirilmiş ortamlara optimize edilmiş
- Bütçe Dostu: Tüm özellikler dahil düşük giriş maliyeti
- Öğrenme Eğrisi: Hızlı benimseme için geniş dokümantasyon ve örnekler
ActivePDF'yi Ne Zaman Seçmelisiniz:
- Eski Sistemler: Mevcut ActivePDF altyapısı veya Windows Server ortamları
- Çeşitli Dosya Biçimleri: 300'den fazla dosya türünü PDF'ye dönüştürme ihtiyacı
- Kurumsal İş Akışları: İzlenen klasörler ve otomatik toplu işleme
- Gelişmiş Formlar: Karmaşık XFA formları veya özel form gereksinimleri
- Uyum Gereksinimleri: Belirli endüstriler için birden fazla PDF/A seviyeleri
Son Öneri
Çoğu modern .NET geliştirme senaryosu için, .NET özellikler, performans ve değer açısından en iyi kombinasyonu sunar. Tümleştirici API'si, kapsamlı dokümantasyonu ve şeffaf fiyatlandırması, hızlı ve verimli bir şekilde PDF işlevselliğini uygulamak için ideal hale getirir.
ActivePDF, dosya formatı desteği, eski sistem entegrasyonu veya mevcut ActivePDF altyapısı etrafında belirli gereksinimleri olan işletmeler için geçerli bir seçenek olmaya devam etmektedir. Ancak, modüler fiyatlandırma modeli ve karmaşık kurulum süreci küçük ekipler veya yeni projeler için zorluklar çıkarabilir.
Başlamaya Hazır mısınız?
Bugün IronPDF ile projenizde ücretsiz bir deneme ile başlayın.
Sıkça Sorulan Sorular
.NET'te PDF oluşturma için IronPDF ve ActivePDF nasıl karşılaştırılır?
IronPDF, modern .NET sürümleri dahil .NET 9 ve 10'un desteğiyle Chrome tabanlı bir işleme motoru ve sezgisel API'ler ile PDF oluşturma konusunda kolay bir yaklaşım sunar. ActivePDF, kurumsal senaryolar için WebGrabber ve DocConverter gibi modüler bileşenler sağlar ancak daha fazla yapılandırma gerektirir.
C# kullanarak HTML'yi PDF'e nasıl dönüştürebilirim?
IronPDF'nin RenderHtmlAsPdf yöntemi ile HTML dizelerini hızlıca PDF'e dönüştürebilirsiniz. Dosya bazlı dönüştürme için RenderHtmlFileAsPdf yöntemi mevcuttur, her ikisi de CSS3 ve JavaScript desteği ile yüksek sadakat sunar.
IronPDF için performans karşılaştırmaları nelerdir?
IronPDF, yaklaşık 125-835ms zaman diliminde ve 10MB altında bellek kullanımı ile hızlı HTML'den PDF'e işleme gösterir. Ayrıca başlık ve altbilgi işlemlerinde önemli bellek ve işlem iyileştirmeleri sunar.
IronPDF ile toplu PDF işlemeyi otomatik hale getirebilir miyim?
Evet, IronPDF, async/await kalıpları aracılığıyla toplu işlemeyi destekler ve RenderHtmlFileAsPdfAsync gibi yöntemlerle aynı anda birden fazla PDF dönüştürmesi yapmanıza olanak tanır.
IronPDF dijital imzaları PDF'lerde nasıl ele alır?
IronPDF, PDF belgelerine dijital imza eklemek için bir PdfSignature sınıfı sağlar. Sertifika tabanlı imzalama desteklenir ve imzanın görünümü ve meta verileri özelleştirilebilir.
IronPDF'i .NET geliştirmede kullanmanın maliyet değerlendirmesi nedir?
IronPDF lisansları, tüm özellikler dahil olmak üzere tek geliştiriciler için 749$'dan başlar. Karşılaştırıldığında, ActivePDF bileşenleri ayrı ayrı fiyatlandırılır, bu da benzer işlevsellikler için daha yüksek toplam maliyetlere yol açar.
IronPDF platformlar arası uyumu nasıl sağlar?
IronPDF, Windows, Linux, macOS ve Docker ortamları dahil olmak üzere platformlar arası dağıtımı destekler, bu da çeşitli geliştirme ihtiyaçları ve bulut tabanlı uygulamalar için uygun hale getirir.
IronPDF kullanarak PDF'lere başlık ve altbilgi nasıl eklerim?
IronPDF, basit metin ve karmaşık HTML/CSS düzenleriyle başlık ve altbilgi eklemenize olanak tanıyan TextHeaderFooter ve HtmlHeaderFooter sınıflarını sağlar.
IronPDF modern .NET sürümleriyle nasıl bütünleşir?
IronPDF, .NET Core, .NET Standard ve .NET Framework 4.6.2+ dahil olmak üzere, modern .NET sürümleri ile tam uyumludur. Bu, geniş bir uyumluluk ve geleceğe yönelik geliştirmenin sağlanması anlamına gelir.
PDF dönüştürme sırasında JavaScript çalıştırma desteği var mı?
Evet, IronPDF, PDF'leri işlenmeden önce JavaScript'i tam olarak çalıştırır, WaitFor.JavaScript() ve RenderDelay() kullanarak zamanlamayı kontrol etme seçenekleri sunar, bu da tam ve doğru dönüştürmelerin sağlanmasına olanak tanır.



