Altbilgi içeriğine atla
ÜRüN KARşıLAşTıRMALARı

ActivePDF vs IronPDF: HTML to PDF Eğitimi ve Kapsamlı Karşılaştırma

IronPDF ve ActivePDF .NET'te PDF oluşturma için nasıl karşılaştırılır?

IronPDF, Chrome tabanlı render ve sezgisel API tasarımı ile hepsi bir arada bir PDF çözümü sunarken, ActivePDF ayrı lisanslar gerektiren modüler enterprise bileşenler sunar. IronPDF, modern web standartları desteği, çapraz platform dağıtımı ve çoğu .NET geliştirme senaryosu için maliyet etkinliği ile öne çıkar.

Geliştiricilerin PDF oluşturma kabiliyetlerine ihtiyaç duyduklarında, iki önemli çözüm sıklıkla öne çıkar: IronPDF ve ActivePDF. Her iki kütüphane de oluşturma, dönüştürme ve PDF belgelerini işleme için etkili özellikler sunar, ancak yaklaşımları, fiyatlandırmaları ve uygulama karmaşıklıkları açısından önemli ölçüde farklılık gösterirler.

IronPDF, sezgisel API tasarımı ve HTML'den PDF'ye dönüşümü tamamlayan bir Chrome render motoru ile öne çıkarken, ActivePDF, HTML dönüşümü için WebGrabber gibi çok sayıda özelleşmiş bileşen ve belge dönüşümü için DocConverter gibi enterprise odaklı çözümler sunar. Bu makale, geliştiricilerin PDF işleme ihtiyaçlarını için bilinçli bir karar verebilmeleri adına derinlemesine bir karşılaştırma sunar.

Ürün Karşılaştırma Genel Bakışı
IronPDF ve ActivePDF'nin .NET Geliştirme için Karşılaştırması
Kategori Özellik/Aspect IronPDF ActivePDF Ana Avantaj
Çekirdek Mimari Tasarım Felsefesi Hepsi bir arada kütüphane, geliştirici dostu Modüler bileşenler, enterprise odaklı IronPDF: Daha basit entegrasyon
API Karmaşıklığı Intuitive methods like `RenderHtmlAsPdf`() Bileşen spesifik 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 Öncelikle 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 IronPDF: Modern .NET desteği
Bulut Platformlari Azure, AWS, Google Cloud için optimize edilmiş Sınırlı bulut desteği IronPDF: Bulut yerel hazır
HTML'den PDF'ye Render Motoru Chrome V8 motoru Yerel ve IE motorları IronPDF: Modern render
CSS3/HTML5 Desteği Tam destek Kısmi destek IronPDF: Modern web standartları
JavaScript Çalıştırma Tam JavaScript desteği Sınırlı JavaScript desteği IronPDF: Dinamik içerik
Web Fontları Google Yazı Tipleri, sistem yazı tipleri Yalnızca sistem yazı tipleri IronPDF: Tipografi esnekliği
Belge Dönüşümü Desteklenen Formatlar HTML, DOCX, Görseller, RTF, MD 300+ formats (`DocConverter`) ActivePDF: Daha fazla format
DOCX'ten PDF'ye Built-in `DocxToPdfRenderer` Yerel Office dönüşümü ActivePDF: Daha iyi sadakat
Toplu İşleme Programlı yaklaşım İzlenen klasör desteği ActivePDF: Enterprise otomasyonu
Performans HTML Render Hızı 125ms tipik, 835ms karmaşık Motor tarafından değişken IronPDF: Tutarlı performans
Bellek Kullanımı 10MB altında tipik Hizmet tabanlı yük IronPDF: Daha düşük ayak izi
Eşzamanlılık Desteği Yerel async/await optimize edilmiş Çok iş parçacıklı hizmet IronPDF: Daha iyi .NET entegrasyonu
PDF Özellikleri Form Yönetimi Formlar oluştur, doldur, düzleştir Gelişmiş form özellikleri (Toolkit) ActivePDF: Karmaşık formlar
PDF/A Uyumluluğu PDF/A-3B desteği Birden fazla PDF/A seviyesi ActivePDF: Daha fazla uyum seçeneği
OCR Yetenekleri IronOCR entegrasyonu aracılığıyla Özel OCR bileşeni Her ikisi de: Mevcut çözümler
Dijital İmzalar Entegre, görsel imzalar Gelişmiş imza seçenekleri ActivePDF: Enterprise imzaları
Geliştirici Deneyimi Belgelendirme Tam öğreticiler, örnekler Geleneksel API belgeleri IronPDF: Daha iyi öğrenme kaynakları
Kod Örnekleri 100+ çalışmaya hazır örnekler GitHub'da temel örnekler IronPDF: Kapsamlı kaynaklar
Hata Mesajları Açıklayıcı, uygulanabilir Hizmet düzeyinde mesajlar IronPDF: Daha iyi hata ayıklama
Licensing & Pricing Giriş Seviyesi Lite: $799 (1 dev, 1 project) `WebGrabber`: $2,499+ per component IronPDF: %70 daha düşük giriş
Ekip Lisansı Professional: $2,399 (10 devs) Birden fazla bileşen gerekli IronPDF: Hepsi dahil
Suite Seçeneği Iron Suite: $1,498 (9 products) Suite 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 Genellikle 24-48 saat Soruna göre değişir IronPDF: Öngörülebilir SLA
En İyisi İçin Kullanım Durumları Modern web uygulamaları, hızlı geliştirme Kurumsal otomasyon, eski sistemler Bağlam bağımlı
Proje Türleri SaaS, web uygulamaları, mikro hizmetler Doküman yönetimi, toplu işlem Gereksinimlere dayanır
Not. Karşılaştırma, 2025 itibarıyla mevcut sürümlere dayanmaktadır. ActivePDF, belirli kurumsal ihtiyaçlar için modüler bileşenler sunarken, IronPDF entegre bir çözüm sunar. ActivePDF için bileşen seçimine bağlı olarak fiyatlandırma önemli ölçüde değişir.

IronPDF ve ActivePDF Bileşenlerini Karşılaştırın

  • IronPDF C# PDF Kutuphanesini Edinin
  • IronPDF ve ActivePDF Özelliklerini Karşılaştırın
  • URL'den PDF'ye kod karşılaştırması
  • HTML dizesinden PDF'ye kod karşılaştırması
  • Lisanslama, ücretsiz yazılım seçenekleri ve daha fazlasını karşılaştırın

Genel Bakış

IronPDF C# Kutuphanesi Nedir?

Iron Software, tam IronPDF sunarak PDF manipülasyonu için pazar lideri bir bileşen sağlayıcıdır. IronPDF, PDF dosyaları oluşturma için çeşitli formatlardan kapsamlı bir çözüm sunar ve doküman özellikleri üzerinde tam programatik kontrol sağlar. Geliştiriciler, modern web standartları ve JavaScript çerçevelerinde çalışırken, tutarlı ve güvenilir çıktısı ile minimum kod gerektiren sezgisel API'si nedeniyle IronPDF'i tercih eder.

IronPDF, C#, VB.NET, ASP.NET, MVC, .NET Core, .NET 9 ve .NET 10'u destekler. Windows, Linux, macOS, Docker, Azure, AWS ve diğer bulut platformlarında sorunsuz çalışır.

ActivePDF Bileşenleri Nelerdir?

ActivePDF (şimdi Apryse'nin bir parçası), birden fazla uzman bileşen aracılığıyla kurumsal odaklı PDF çözümleri sunmaktadır. IronPDF'in 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 stratejilerini dikkatli bir şekilde değerlendirmenizi gerektirir.

ActivePDF WebGrabber ile HTML'den PDF'ye Dönüşüm 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, altlıklar, kenar boşlukları, filigranlar ve yer işaretleri dahil konfigürasyon seçenekleri sunar. WebGrabber hem Yerel hem de Internet Explorer görüntüleme motorlarını destekler.

ActivePDF DocConverter ile Doküman Dönüşümü Nedir?

ActivePDF DocConverter, Microsoft Office belgeleri, resimler, CAD dosyaları ve daha fazlası dahil olmak üzere 300'den fazla dosya formatını PDF'e dönüştürür. İzlenen klasör otomasyonu, toplu işlem yetenekleri ve kurumsal düzeyde doküman yönetimi özelliklerine sahiptir.

Modern CSS Çerçeveleri (Bootstrap gibi) PDF'de Nasıl Render Edilir?

Günümüz web uygulamaları, tutarlı, duyarlı UI geliştirme için giderek artan oranda CSS çerçevelerine (Bootstrap, Foundation, ve Tailwind CSS gibi) dayanıyor. PDF oluşturma kutuphaneleri, profesyonel doküman kalitesini ve tasarım sadakatini korumak için bu çerçeveleri doğru bir şekilde render etmelidir. Her kutuphanenin duyarlı CSS ve modern web yazı tiplerini nasıl ele aldığına dair bilgi sahibi olmak doğru çözümü seçmek için çok önemlidir.

IronPDF Bootstrap ve Modern Çerçeve Desteğini Nasıl Ele Alır?

IronPDF'in Chromium görüntüleme motoru, tüm modern CSS çerçeveleri ve teknik özellikler için tam destek sunar ve piksel mükemmel render sağlar:

  • Bootstrap 5: Tam flexbox ve CSS Grid render ile duyarlı yardımcılar
  • Bootstrap 4: Tam kart sistemleri, navigasyon bileşenleri ve form düzenleri
  • Tailwind CSS: Tüm utility-first sınıfları ve duyarlı varyantlar doğru bir şekilde render edilir
  • Foundation: Tam grid ve bileşen sistem 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şim desteği

Üretim örnekleri ile doğrulandı: Bootstrap ana sayfası ve resmi şablonlar, IronPDF'in render seçeneklerini kullanarak tarayıcı doğru doğrulukla dönüştürülüyor.

Kod Örneği: Bootstrap ile Hizmet Fiyat 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")
$vbLabelText   $csharpLabel

Çıktı: Bootstrap'in kart ızgarası, flexbox düzenleri, rozet konumlandırma ve duyarlı yardımcılar ile profesyonel bir fiyat tablosu—tüm PDF'de doğru bir şekilde korunur.

ActivePDF WebGrabber'ın Modern Çerçeve Desteğiyle Sınırlamaları Nedir?

ActivePDF WebGrabber, HTML'den PDF'ye dönüşüm sağlar, ancak modern CSS çerçeveleri için önemli sınırlamaları olan eski render motorlarını kullanır:

  • Yerel Motor: sınırlı CSS3 desteği ile özel render
  • Internet Explorer Motoru: Eski IE renderi, modern CSS özellikleri yok
  • Bootstrap 4/5 Desteği Yok: Flexbox ve CSS Grid özellikleri desteklenmiyor
  • Bootstrap 3 Sınırlamaları: Sadece tablo tabanlı düzenler güvenilir çalışır
  • JavaScript Sınırlamaları: Modern tarayıcılara göre sınırlı JavaScript uygulama
  • Gelişmiş Çözümler Gereklidir: Kompleks Bootstrap bileşenlerinin önemli CSS modifikasyonlarına ihtiyaçı vardır

Geliştiriciler tarafından raporlanan yaygın sorunlar:

  • Bootstrap navigasyon çubuklarının düzen sorunları ile render edilmesi
  • Flexbox ile kart bileşenlerinin doğru görüntülenmemesi
  • Duyarlı ızgara sistemlerinin PDF çıktısında kırılması
  • Uyum için Bootstrap bileşenlerini basitleştirme veya yeniden yazma ihtiyaçı

Geliştirme etkisi: Modern Bootstrap sürümleri (4+) ile oluşturulan uygulamalar, ActivePDF WebGrabber ile önemli ek çalışma gerektirir. Ekipler şu seçeneklerden birini seçmelidir:

  1. PDF oluşturma için paralel basitleştirilmiş CSS'i koruma (çifte bakım yükü)
  2. Web UI'sini Bootstrap 3 veya daha eskiyle sınırlama (modern duyarlı özelliklerden fedakarlık)
  3. Her Bootstrap bileşenini manuel olarak test edip düzeltme (zaman alıcı ve hata eğilimli)

Bootstrap veya modern CSS çerçevelerine büyük ölçüde yatırım yapılmış projelerde, ActivePDF WebGrabber'nin render sınırlamaları, geliştirme maliyetlerini önemli ölçüde artırabilir ve tasarım esnekliğini azaltabilir. Doğru Bootstrap render için IronPDF'in Chrome render motorunu kullanmayı düşünün.

Tüm Bootstrap çerçeve uyumluluğu için Bootstrap & Flexbox CSS Rehberine bakın.

Geliştiriciler neden IronPDF'i ActivePDF yerine tercih ediyor?

IronPDF'in render hızı statik siteler için HTML'den PDF'ye dönüşümü 835 milisaniyede tamamlar, farklı içerik türlerinde tutarlı performans sunar. Kütüphanenin bellek kullanımı tipik olarak 10 MB'tan az kullanacak şekilde optimize edilmiştir ve başlıklar ve altlıklar render edilirken bellek kullanımında %75 azalma sağlanmıştır.

Geliştiriciler, IronPDF'in basit API tasarımını, ActivePDF'in daha karmaşık çok adımlı işlemine kıyasla üç satır kodla PDF oluşturmayı mümkün kılması nedeniyle takdir eder. Tam dokümantasyon, 100'den fazla kod örneği ve detaylı eğitim içerir, bu da takımların asenkron PDF oluşturma ve toplu işlem gibi özelliklerle hızlı başlamasını kolaylaştırır.

ActivePDF ne zaman daha iyi bir seçenek olabilir?

ActivePDF, şu kurumsal ortamlar için mükemmeldir:

Mevcut ActivePDF altyapısına sahip veya belirli kurumsal iş akışı gereksinimlerine sahip kuruluşlar, daha yüksek maliyete ve karmaşıklığa rağmen, ActivePDF'in modüler yaklaşımını faydalı bulabilir IronPDF'in özellikleri ile karşılaştırıldığında.


Karşılaştırma

ActivePDF ve IronPDF Özellikleri Nasıl Karşılaştırılır?

Hangi kutuphane daha iyi HTML'den PDF'ye dönüşüm yetenekleri sunuyor?

IronPDF, tam Chrome V8 render motorunu kullanır, HTML5, CSS3, JavaScript ve web yazı tipleri için %98+ tarayıcı doğruluğu sağlar. ActivePDF WebGrabber, hem Yerel hem de Internet Explorer motorları sunar, ancak sınırlı JavaScript uygulaması ve CSS3 desteği ile sınırlıdır. Yerel Motor, CSS stil sayfalarına saygı göstermez ve IE Motoru eski Internet Explorer 11'e dayanarak modern web standartlarından yoksundur, CSS Grid ve flexbox düzenleri gibi.

Kutuphanenin doküman formatı desteği nasıl karşılaştırılır?

IronPDF, yaygın formatlara odaklanırken (HTML, DOCX, Resimler, RTF, Markdown), ActivePDF DocConverter CAD dosyaları, eski doküman formatları ve uzmanlaşmış kurumsal formatlar dahil olmak üzere 300'den fazla dosya formatını destekler. Bu, ActivePDF'i çeşitli doküman türleriyle uğraşan kuruluşlar için daha uygun hale getirir, ancak IronPDF'in dönüşüm özellikleri modern uygulamalarda en yaygın kullanılan formatları kapsar.

PDF manipülasyon özellikleri ne durumda?

Her iki kutuphane de tam PDF manipülasyon yetenekleri sunar:

IronPDF sunar:

ActivePDF sunar:


Adim 1: Kurulum

IronPDF'yi Nasıl Kurarım?

IronPDF için hangi kurulum yöntemini kullanmalıyım?

Geliştiriciler, birçok yöntemle IronPDF'i kurabilir, en uygun olanı NuGet Paket Yöneticisi aracılığıyladır:

NuGet Paket Yöneticisi

Visual Studio'da NuGet Paket Yöneticisi'ni açın ve IronPDF'i arayın:

:InstallCmd
:InstallCmd
SHELL

IronPDF.dll dosyasını manuel olarak indir

Alternatif olarak, IronPDF.dll dosyasını indir ve manuel kurulum yöntemleri kullanarak projeye referans olarak ekleyin.

Kurulduktan sonra, aşağıdaki adımı ekleyerek erişimi doğrulayın:

using IronPdf;
using IronPdf;
Imports IronPdf
$vbLabelText   $csharpLabel

IronPDF, tüm modern .NET sürümleriyle birlikte .NET 9 ve 10'u destekler, bunlar arasında Core, Standard ve Framework 4.6.2+ bulunur. Özel platform kurulumları için, Linux, macOS, Docker, Azure ve AWS için rehberlere bakın.


ActivePDF Bileşenlerini Nasıl Kurarım?

ActivePDF WebGrabber'ü nasıl kurarım?

ActivePDF WebGrabber daha karmaşık bir kurulum süreci gerektirir:

  1. ActivePDF web sitesinden yükleyici indirin
  2. ActivePDF satış biriminden bir lisans anahtarı talep edin (değerlendirme anahtarları mevcuttur)
  3. Yükleyiciyi yönetici yetkileriyle çalıştırın
  4. Kurulum sırasında WebGrabber hizmetini yapılandırın
  5. Windows Server 2012+ için hizmete özel bir kullanıcı hesabı oluşturun

Kurulumdan sonra, aşağıdaki WebGrabber referansını ekleyin: C:\Program Files\ActivePDF\WebGrabber\bin\APWebGrabber.Net45.dll

ActivePDF DocConverter'ü nasıl kurarım?

DocConverter benzer bir kurulum modeli izler:

  1. DocConverter yükleyiciyi indirin
  2. Yönetici haklarıyla yükleyin
  3. Sürükle-bırak dönüşümü kullanıyorsanız izlenen klasörleri yapılandırın
  4. Toplu işleme için Yapılandırma Yöneticisini ayarlayın

Not: ActivePDF bileşenleri Windows Server gerektirir ve IronPDF gibi çapraz platform dağıtımını desteklemez. Modern dağıtım senaryoları için, IronPDF'ün kapsamlı seçeneklerini ve bulut yerel desteğini düşünün.


Nasıl Yapılır Eğitimleri

HTML Dizgisini PDF Dosyasına Nasıl Dönüştürürüm?

Her iki kütüphanenin bir HTML dizgisini bir PDF dosyasına nasıl dönüştürdüğünü karşılaştıralım: HTML dizgisini PDF dosyasına dönüştürme.

IronPDF HTML dizgilerini PDF'ye nasıl dönüştürüyor?

/**
 * 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
$vbLabelText   $csharpLabel

IronPDF'ün yaklaşımının temel avantajları:

  • Dönüşüm için sadece 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 isim yapılandırmasına gerek yok

ActivePDF WebGrabber HTML dizgilerini PDF'ye nasıl dönüştürüyor?

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
$vbLabelText   $csharpLabel

Her iki kütüphane, CSS stiline sahip karmaşık HTML'yi nasıl ele alıyor?

Örnek, her iki kütüphanenin CSS stiline sahip daha karmaşık HTML'yi nasıl işlediğini gösteriyor:

IronPDF Gelişmiş Ö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")
$vbLabelText   $csharpLabel

ChromePdfRenderer sınıfı, işleme süreci üzerinde, CSS medya türü seçimi, arka plan işleme ve HTML giriş elemanlarından otomatik form alanı oluşturma gibi geniş kontrol sağlar.


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üyor?

/**
 * 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
$vbLabelText   $csharpLabel

IronPDF otomatik olarak şunları ele alır:

ActivePDF WebGrabber HTML dosyalarını PDF'ye nasıl dönüştürüyor?

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
$vbLabelText   $csharpLabel

Unutmayın ki ActivePDF WebGrabber yerel dosyalar için URL özelliğini kullanır, bu da dosya-özel bir yöntem bekleyen geliştiriciler için kafa karıştırıcı olabilir. Daha sezgisel dosya işlemleri için, IronPDF'ün HTML dosya dönüştürme rehberine bakın.


URL'leri PDF Dosyasına Nasıl Dönüştürürüm?

IronPDF URL'leri PDF'ye nasıl dönüştürüyor?

/**
 * 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
$vbLabelText   $csharpLabel

Asenkron URL dönüşümünü IronPDF ile 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
$vbLabelText   $csharpLabel

WaitFor sınıfı, özellikle JavaScript ağırlıklı uygulamalar için gerekli olan işleme zamanlaması üzerinde hassas kontrol sağlar. Geliştiriciler, ağ boşta durumu veya özel JavaScript olayları izleyerek, belirli elemanlar için bekleyebilir ve JavaScript mesaj dinleyicileri kullanabilir.

ActivePDF WebGrabber URL'leri PDF'ye nasıl dönüştürüyor?

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
$vbLabelText   $csharpLabel

Daha gelişmiş URL dönüşüm senaryoları için, kimlik doğrulama ve özel başlıklar dahil, IronPDF'ün URL'yi PDF'ye dönüştürme rehberine bakın.


PDF'e Filigran Nasıl Eklerim?

IronPDF filigran eklemeyi nasıl yönetiyor?

IronPDF, HTML/CSS ile 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
$vbLabelText   $csharpLabel

IronPDF ile gelişmiş 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)
$vbLabelText   $csharpLabel

ActivePDF filigranları nasıl oluşturur?

ActivePDF, alternatif olarak metin damgalarını 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
$vbLabelText   $csharpLabel

ActivePDF yaklaşımı sadece metin içeren filigranlarla sınırlıdır ve manuel konum hesaplamaları gerektirir. Daha gelişmiş filigran ekleme yetenekleri için, IronPDF'ün filigran örneklerine bakın.


PDF'ler için Başlıklar ve Altbilgiler Nasıl Ayarlanır?

IronPDF nasıl başlıklar ve altbilgiler ekler?

IronPDF, basit metin ve karmaşık HTML başlıkları/altbilgileri 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
$vbLabelText   $csharpLabel

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
}
$vbLabelText   $csharpLabel

IronPDF'te mevcut önceden tanımlanmış birleştirme alanları şunları içerir:

  • {page} - Şu anki sayfa numarası
  • {total-pages} - Toplam sayfa sayısı
  • {url} - Kaynak URL'si (varsa)
  • {date} - Şu anki tarih
  • {time} - Şu anki saat
  • {html-title} - HTML belgesinden alınan başlık
  • {pdf-title} - PDF metadata başlığı

ActivePDF WebGrabber başlıkları ve altbilgileri nasıl ayarlar?

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
$vbLabelText   $csharpLabel

Not: ActivePDF, şu anki sayfa için %cp%, toplam sayfalar için %tp% gibi özel yer tutucular kullanır ve manuel HTML yapımı gerektirir. Daha esnek başlık/altbilgi seçenekleri için, IronPDF'ün başlık ve altbilgi rehberine bakın.


Gelişmiş PDF Özellikleri Nasıl Karşılaştırılır?

PDF formları nasıl oluşturur ve düzenlerim?

IronPDF form oluşturmayı nasıl yönetiyor?

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")
$vbLabelText   $csharpLabel

PDF formu oluşturma ve form verilerini düzenleme hakkında daha fazlasını öğrenin.

ActivePDF Araç Kutusu formları nasıl yönetiyor?

// 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")
$vbLabelText   $csharpLabel

PDF/A uyumluluğunu nasıl sağladım?

Her iki kütüphane de PDF/A desteği sunar, ancak farklı yaklaşımlar benimserler:

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)
$vbLabelText   $csharpLabel

IronPDF ayrıca elektronik faturalama için PDF/A-3 ve ZUGFeRD desteği sunar. Daha fazla ayrıntı için PDF/A dönüm noktası güncellemesine bakın.

ActivePDF DocConverter ile PDF/A nasıl oluştururum?

// 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")
$vbLabelText   $csharpLabel

PDF'lere dijital imzalar nasıl eklerim?

IronPDF dijital imzaları nasıl yönetir?

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")
$vbLabelText   $csharpLabel

Gelişmiş imzalama senaryoları için, IronPDF'ün imzalama rehberine ve HSM ile imzalamaya bakın.

Toplu işleme nasıl ele alırım?

IronPDF toplu dönüşümleri nasıl yönetir?

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
$vbLabelText   $csharpLabel

Daha fazla toplu işleme tekniği için IronPDF'ün asenkron rehberine ve paralel işleme örneklerine bakın.

ActivePDF DocConverter toplu işlemleri nasıl yönetiyor?

// 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
$vbLabelText   $csharpLabel

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?

Kıyaslama testi ve gerçek dünya kullanımı esas alındı:

IronPDF'in performans ölçüleri nelerdir?

  • HTML işleme: Basit içerik için ~125ms
  • Karmaşık siteler: 835ms (statik web sitelerinde test edildi)
  • Bellek kullanımı: 10MB altında tipik
  • İlk başlatma: 2-3 saniye (Chrome motorunun başlatılması)
  • Başlıklar/altlıklar için bellek kullanımı %75 azaltıldı
  • Büyük belgeler için yükleme süresi %80 azaltıldı

Ayrıntılı performans optimizasyon ipuçları için IronPDF'in performans kılavuzu sayfasını inceleyin.

ActivePDF'in performans özellikleri nelerdir?

  • Seçilen işleme motoruna göre değişken
  • Yerel motor: Basit HTML için daha hızlı
  • IE motoru: Daha yavaş ancak eski içerikler için daha iyi uyumluluk
  • Servis tabanlı mimari, ek yük getirir
  • Toplu işleme senaryoları için daha uygundur

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)
$vbLabelText   $csharpLabel

Daha fazla bellek optimizasyon stratejisi için IronPDF'in bellek yönetimi kılavuzu ve PDF bellek akışı örneklerine bakın.

ActivePDF bellek değerlendirmeleri nelerdir?

  • Servis tabanlı mimari, bellek kullanımını izole eder
  • Dönüşümler arasında otomatik temizlik
  • Windows'ta servis bellek limitlerini yapılandırın

Hangi ActivePDF Bileşenleri Mevcut?

Başka hangi ActivePDF bileşenleri mevcut?

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 içerir.
ActivePDF `WebGrabber` HTML'den PDF'ye dönüşüm, URL'ler, dosyalar ve HTML dizelerini destekler. Yerel ve IE işleme motorları içerir.
ActivePDF Araç Kutusu Formlar, açıklamalar, güvenlik ve düşük seviyeli PDF operasyonları dahil gelişmiş PDF manipülasyonu.
ActivePDF Sunucu Ağ ortamları için sunucu tabanlı PDF yazdırma çözümü.
ActivePDF Meridian Kullanıcı başına ücret olmadan dosyaları PDF olarak 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 Veri işleme için PDF dosyalarından metin ve görüntüleri çıkarır.
ActivePDF Redactor PDF belgelerinden hassas bilgileri kalıcı olarak kaldırır.

Lütfen dikkate alinBu bileşenlerin çoğu ayrı lisanslar gerektirir ve tam PDF işlevselliği için toplam maliyeti artırır.


Lisanslama ve Fiyatlandırma Nasıl Karşılaştırılır?

IronPDF ve ActivePDF arasındaki lisanslama maliyetleri nasıl karşılaştırılır?

IronPDF'in lisans seçenekleri ve fiyatlandırması (2025 itibarıyla) nelerdir?

  • Lite Lisansı: $799 (1 geliştirici, 1 yer, 1 proje)
  • Plus Lisansı: $1,199 (3 geliştirici, 3 yer, 3 proje)
  • Professional Lisansı: $2,399 (10 geliştirici, 10 yer, 10 proje)
  • Limitsiz Lisans: Özel fiyatlandırma (sınırsız geliştirici/proje)
  • Iron Suite: $1,498 (tüm 10 Iron Software ürünü)

Tüm lisanslar 24/5 mühendislik desteği, ömür boyu lisans geçerliliği, genişletmeler ve yükseltme seçeneklerini içerir.

  • WebGrabber: $2,499'dan başlayan fiyatlarla (tek seferlik ödeme)
  • DocConverter: $2,999'dan başlayan fiyatlarla (tek seferlik ödeme)
  • Toolkit: $1,500+'dan başlayan fiyatlarla (özelliklere göre değişir)
  • Destek: Premium destek için ek maliyet
  • Birden Fazla Bileşen: Maliyetler hızla eklenir

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: $5,498 en az
  • IronPDF ile Tasarruf: %73

Kurumsal Ekip (10 geliştirici) - Maliyet Karşılaştırması?

  • IronPDF Professional: $2,999 (tüm özellikler)
  • ActivePDF Suite (birden fazla bileşen): $10,000+
  • IronPDF ile Tasarruf: %70+

Diğer rakiplerle ayrıntılı fiyat karşılaştırmaları için IronPDF vs Aspose, IronPDF vs iText ve IronPDF vs Syncfusion sayfalarına bakın.


Hangi Kütüphane Daha İyi Geliştirici Desteği Sunar?

Hangi kütüphane daha iyi geliştirici desteği sunar?

IronPDF ne tür destek sunuyor?

Destek en iyi uygulamaları için mühendislik destek talebi oluşturma ve en iyi desteği alma konularına bakın.

ActivePDF ne tür destek sağlıyor?

  • Destek portalına erişim
  • Bilgi tabanı makaleleri
  • Topluluk forumları
  • Ek maliyetle kullanılabilir premium destek
  • Eski versiyonlar için eski belgeler

Sonuç: Hangi PDF kütüphanesi seçilmeli?

IronPDF Ne Zaman Seçilmeli:

  • Modern .NET Geliştirme: .NET 9/10 ve çok platformlu dağıtım için tam destek
  • Hızlı Geliştirme: Sezgisel API, minimum kod gerektirir
  • Web Uygulamaları: Chrome motoru ile üstün HTML/CSS/JavaScript işleme
  • Bulut Dağıtımı: Azure, AWS ve konteynerleşmiş ortamlar için optimize edilmiştir
  • Bütçe Duyarlı: Tüm özellikler dahil düşük giriş maliyeti
  • Öğrenme Eğrisi: Hızlı kullanım için kapsamlı belgeler ve örnekler

ActivePDF Ne Zaman Seçilmeli:

  • Eski Sistemler: Mevcut ActivePDF altyapısı veya Windows Server ortamları
  • Çeşitli Dosya Formatları: 300+ dosya türünü PDF'ye dönüştürme ihtiyaçı
  • Kurumsal İş Akışları: İzlenen klasörler ve otomatik toplu işleme
  • Gelişmiş Formlar: Karmaşık XFA formları veya özel form gereklilikleri
  • Uyumluluk Gereksinimleri: Belirli endüstriler için birden fazla PDF/A seviyesi

Son Tavsiye

Çoğu modern .NET geliştirme senaryosu için, IronPDF, özellikler, performans ve değer açısından en iyi kombinasyonu sunar. Kullanıcı dostu API'si, kapsamlı dokümantasyonu ve şeffaf fiyatlandırması, PDF fonksiyonelliğini hızlı ve etkili bir şekilde uygulamak isteyen ekipler için idealdir.

ActivePDF, dosya formatı desteği, eski sistem entegrasyonu veya mevcut ActivePDF altyapısıyla ilgili belirli gereksinimleri olan işletmeler için geçerli bir seçenek olmaya devam ediyor. Ancak, modüler fiyatlandırma modeli ve karmaşık kurulum süreci, küçük ekipler veya yeni projeler için zorluklar sunabilir.

Başlamaya Hazır Mısınız?

!{--0100110001001001010000100101001001000001010100100101100101011111--}

Lütfen dikkate alinActivePDF, ilgili sahibinin tescilli markasıdır. Bu site, ActivePDF ile ilişkili, onaylı veya destekli değildir. Tüm ürün adları, logolar ve markalar kendi sahiplerinin mülkiyetindedir. Karşılaştırmalar yalnızca bilgilendirme amaçlıdır ve yazım sırasında kamuya açık bilgileri yansıtır.

Sıkça Sorulan Sorular

PDF oluşturma için IronPDF ve ActivePDF .NET'te nasıl karsilastirilir?

IronPDF, Chrome tabanli bir render motoru ve sezgisel API'lari ile modern .NET sürümleri, .NET 9 ve 10 dahil olmak uzere PDF oluşturmaya yonelik etkili bir yaklasim sunar. ActivePDF, kurumsal senaryolar için WebGrabber ve DocConverter gibi moduler bilsenler sunar, ancak daha fazla konfigürasyon gerektirir.

C# kullanarak HTML'yi PDF'ye nasıl dönüstürebilirim?

IronPDF'nin RenderHtmlAsPdf metodunu kullanarak HTML dizgilerini hizla PDF'e cevrebilirsiniz. Dosya tabanli ceviriler için, RenderHtmlFileAsPdf metodu mevcuttur ve her ikisi de CSS3 ve JavaScript destekli yüksek sadelik sunar.

IronPDF için performans bagdaştirma sonuclari nelerdir?

IronPDF, yaklasik 125-835ms'de gorevleri tamamlayarak 10MB altinda bellek kullanımi ile hizli HTML'den PDF'e cevirme gösterir. Ayrica basliklar ve altbilgiler için önemli bellek ve işleme iyileştirmeleri sunar.

IronPDF ile toplu PDF işleme otomasyonu yapabilir miyim?

Evet, IronPDF, RenderHtmlFileAsPdfAsync gibi metodlar kullanarak birden fazla PDF cevirisini es zamanli olarak yönetmenize olanak saglayan asenkron/await desenleriyle toplu işleme destekler.

IronPDF, PDF'lerde dijital imzalari nasıl işler?

IronPDF, PDF belgelerine dijital imza eklemek için bir PdfSignature sınıfi sunar. Sertifikaya dayalib imzai destekler ve imzanin gorunumu ve metaverisi uzerinde özelleştirme elde eder.

.NET geliştirmede IronPDF kullanmanın maliyet gereklilikleri nelerdir?

IronPDF lisanslari tüm özellikleri dahil olmak uzere tek bir geliştirici için $749'dan başlar. Karsilastirma olarak, ActivePDF bileşenleri ayri fiyatlandirilir ve benzer fonksiyonlar için daha yüksek toplam maliyetlere yol aciyor.

IronPDF, platfotmlar arasi uyumluluğu nasıl saglar?

IronPDF, Windows, Linux, macOS ve Docker ortamları dahil plarformlar arasi dağıtımı destekler, bu da çeşitli geliştirme ihtiyaçlari ve bulut tabanli uygulamalar için uygundur.

IronPDF kullanarak PDF'lere nasıl basliklar ve altbilgiler ekleyebilirim?

IronPDF, TextHeaderFooter ve HtmlHeaderFooter sınıflari sunar ve hem basit metin hem de karmaşık HTML/CSS düzenleriyle basliklar ve altbilgiler eklemenizi saglar.

IronPDF, modern .NET versiyonlariyla ne kadar iyi entegre olur?

IronPDF, .NET 9 ve 10 dahil olmak uzere modern .NET sürümlerini, .NET Core, .NET Standard ve .NET Framework 4.6.2+'yi tam olarak destekler, genis uyumluluk ve gelecege yonelik geliştirme sağlar.

PDF dönüşüm sırasında JavaScript çalıştırma desteği var mi?

Evet, IronPDF, WaitFor.JavaScript() ve RenderDelay() kullanarak zamanini kontrol etmenize olanak tanıyarak PDF oluşturmadan önce JavaScript'i tamamen çalıştırir.

Jacob Mellor, Teknoloji Direktörü @ Team Iron
Chief Technology Officer

Jacob Mellor, Iron Software'in Teknoloji Müdürü ve C# PDF teknolojisinin öncüsü olan vizyoner bir mühendis. Iron Software’in temel kod tabanının ilk geliştiricisi olarak, şirketin ürün mimarisini kuruluşundan bu yana şekillendirdi ve CEO Cameron Rimington ile birlikte NASA, Tesla ve ...

Daha Fazlasını Oku

Iron Destek Ekibi

Haftanın 5 günü, 24 saat çevrimiçiyiz.
Sohbet
E-posta
Beni Ara