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

IronPDF ve PDFNet Arasındaki Karşılaştırma

1. Tanıtım

.NET Framework icin mükemmel PDF araclarini mi arıyorsunuz?

Bu makalede, C# (en popüler programlama dillerinden biri) ile PDF dosyaları üzerinde nasıl calisacagimizi gorecegiz. .NET Framework'te C# icin iki endüstri lideri PDF aracını tartisacagiz, performansları ve özellikleri temelinde onları kıyaslamak icin kod örnekleri kullanacağız. Sonunda, lisans ayrintilarını goreceğiz ve lisans anahtarlarını nasıl alacağımızı öğreneceğiz.

Iki PDF kutuphanesi sunlardir:

  • PDFNet
  • IronPDF

2. IronPDF

IronPDF, C# .NET geliştiricileri icin tek bir kutuphane kullanarak tüm PDF sorunlarını çözmek icin Iron Software tarafından geliştirilen bir C# .NET kutuphanesidir. IronPDF, yerleşik bir Chromium motoru ile çalışır ve HTML5, JavaScript, CSS ve resim dosyalarının PDF'ye dönüştürulmesi, özel başlıklar ve altbilgiler oluşturulması, ve tarayıcıda oldugu gibi PDF'lerin tam olarak görüntülenmesi gibi çeşitli yararlı ve guclu yeteneklere sahiptir. IronPDF, PDF dosyalarının içeriğini okumanızı ve otomatik olarak .NET uygulamalarınıza ve veri depolama sistemlerinize yerleştirmenizi sağlar. Eski PDF belge deposundan içeriği belge yönetimi ve iş uygulamalariniza aktarabilir, taşıyabilir ve dizinleyebilirsiniz.

2.1. IronPDF Özellikleri

2.1.1. PDF Dönüşümleri

Bu özellik, HTML, MVC gorunumleri, Web Formları, HTML Stringleri ve URL'ler gibi çeşitli formatlardan PDF dosyaları oluşturmanızı sağlar.

2.1.2. PDF İçerik Cikartma

Birçok durumda, PDF'lerden gomiş metni kolayca cikartabilirsiniz. Ancak, eğer bu basarisiz olursa, metniniz muhtemelen bir resim içinde gomuludur. IronOCR kutuphanesini, duz metin yerine gorsel metni taramak icin kullanın.

2.1.3 Basliklar ve Altbilgi

PDF oluştururken veya mevcut PDF'lere başlıklar ve altbilgiler ekleyebilirsiniz. Tek bir belgenin her sayfası için bir başlık ve altbilgi oluşturmak icin Baskı Seçenekleri ozelligini kullanabilirsiniz. Bu parametreler ChromePdfRenderer nesnesinde mevcuttur. Bu örnek bir .NET Core konsol uygulaması icinde çalisir.

2.1.4. PDF Resim İşleme

Bu, kullanıcılara PDF'lerden resimler oluşturmayi ve fotograflardan PDF'ler oluşturmayı sağlar. Resim cikartma, çeşitli resim uzantılarını ve PDF baskısı destekler.

2.1.5. PDF Belgeleri IO

IronPDF ayrıca 128-bit PDF sifreleme, sifre korumalı PDF kilitleme ve PDF'lerin dijital imzalanmasini içerir.

2.1.6. PDF Duzenleme

IronPDF araci, PDF'lerinize filigranlar eklemenizi, sayfalar eklemenizi, silmenizi, arka planları, on planları ve daha fazlasını eklemenizi sağlar.

2.1.7. Uyumluluk

IronPDF, C# ile uyumlu olan neredeyse tüm işletim sistemlerini ve çerçeveleri destekler, orneğin:

  • Windows
  • .NET Core 2.1, 3.0, 3.1, .NET 6 & 5
  • Evrensel Uyum için .NET Standard 2.0 Uyumu
  • Azure
  • AWS
  • Docker
  • Linux

3. PDFNet

PDFTron'un PDFNet .NET SDK'si, web, mobil, masaüstü veya sunucu uzerindeki herhangi bir çevrim icin keskin PDF işleme, açıklama, düzenleme ve oluşturma getirir. Altyapınızla birlikte tüm belge ve bilgi yönetimi sürecini yönetir ve üçüncü taraf sunucu bağımlılıklarına olan ihtiyaçı ortadan kaldırır. PDFTron'un web platformu, desteklenen platform ve tüm PDF SDK'leri için bir demo lisans anahtarıyla birlikte bir JS sürümü ile birlikte gelir.

PDFNet'in en önemli faydalarından biri, gerçekten çapraz platform olmasıdır, bu sayede kullanıcılarımızın birçok farklı mobil ve masaüstü ortamda iş akışlarına ve uygulamalarına basitçe PDF uyumluluğu ve ilgili işlevselliği eklemelerine olanak tanır, hem de neredeyse aynı arayüzü kullanarak.

3.1. PDFNet SDK Özellikleri

3.1.1. Uyumluluk

PDFNet SDK, birçok platform ve çerçeve ile uyumludur. Platform tutarlılığını sağlamak için JavaScript API, PDFNet API'si ile aynı şekilde kullanılır. SDK'nın Node.js ve Electron sürümleri de mevcuttur. Bu paket, yönetilmeyen ek ikili dosyalar gerektirir.

3.1.2. Düzenleme ve Görüntüleme

Kullanıcılara çevrimiçi, mobil ve masaüstü platformlar genelinde güvenli, ölçeklenebilir ve yüksek kaliteli okuma ve düzenleme yetenekleri sunar.

3.1.3. İmza

Özelleştirilmiş imzalama prosedürleri oluşturun. Dijital olarak imzalanmış belgeler onaylanabilir, doğrulanabilir ve mühürlenebilir.

3.1.4. Gerçek Düzenleme

Kişisel bilgileri veya kişisel sağlık bilgileri gibi hassas verileri belgelerden kaldırırken belge aranabilir durumda bırakılır.

3.1.5. Sayfa Manipülasyonu

Sayfalar eklenebilir, kaldırılabilir veya yeniden düzenlenebilir. Belgeler birleştirilebilir, birleştirilebilir veya parçalara ayrılabilir. Birden çok belge, aynı okuyucuda veya yan yana aynı anda görüntülenebilir.

4. Visual Studio'da Yeni Proje Oluşturma

Bu makalede, PDF belgeleri oluşturmak için bir konsol uygulaması kullanacağız.

Visual Studio yazılımını açın ve Dosya menüsüne gidin. "Yeni Proje"yi seçin ve ardından konsol uygulamasını seçin.

Proje adını girin ve uygun metin kutusundaki yolu seçin. Ardından, oluştur düğmesine tıklayın. Aşağıdaki ekran görüntüsünde olduğu gibi gerekli .NET çerçevesini seçin:

A Comparison Between IronPDF and PDFNet, Figure 1

Visual Studio projesi şimdi konsol uygulamasının yapısını üretecektir. Bir kez bitirildiğinde, kaynak kod yazıp çalıştırabileceğiniz Program.cs dosyasını açacaktır.

A Comparison Between IronPDF and PDFNet, Figure 2

Şimdi kütüphaneyi ekleyip programı test edebiliriz.

5. IronPDF Kutuphanesini Yükleyin

IronPDF kütüphanesi dört farklı şekilde indirilebilir ve kurulabilir. Bunlar su sekildedir:

5.1 Visual Studio NuGet Paket Yöneticisini Kullanarak

Visual Studio yazılımı, paketi doğrudan çözümleme üzerine yüklemek için NuGet Paket Yöneticisi seçeneğini sunar. Aşağıdaki ekran görüntüsü, NuGet Paket Yöneticisini nasıl açacağınızı gösterir.

A Comparison Between IronPDF and PDFNet, Figure 3

Paket Yöneticisi GUI'si açıkken, Gözat sekmesine tıklayın ve "IronPDF:" arayın

A Comparison Between IronPDF and PDFNet, Figure 4

Yukarıdaki resimde, arama ile ilgili paketlerin listesini görebiliriz. IronPDF seçeneğini seçin ve paketi çözümümüze yükleyin.

5.2 Visual Studio Komut Satırını Kullanarak

  • Visual Studio menüsünde Tools > NuGet Package manager > Package manager console gidin
A Comparison Between IronPDF and PDFNet, Figure 5

  • Paket yöneticisi konsol sekmesine aşağıdaki satırı girin:
Install-Package IronPdf

IronPDF paketi artık projeye yüklenecek.

A Comparison Between IronPDF and PDFNet, Figure 6

5.3 NuGet Web Sayfasından Doğrudan İndirme

Üçüncü yol, NuGet paketini doğrudan NuGet Galerisi IronPDF Paketi'ndan indirmektir.

  • Sağ taraftaki menüden indirme paketi seçeneğini seçin.
  • İndirilen paketi çift tıklayın; otomatik olarak yüklenecektir.
  • Sonraki, çözümü yeniden yükleyin ve projede kullanmaya başlayın.

5.4 IronPDF Web Sayfasından Doğrudan İndirme

En son paketi doğrudan IronPDF İndirme Sayfası'ndan indirin. İndirdikten sonra, paketi projeye eklemek için aşağıdaki adımları izleyin.

  • Çözüm penceresinden projeyi sağ tıklayın.
  • Ardından, seçenekler referansını seçin ve indirilen referansın yerini gözden geçirin.
  • Ardından, başvuruyu eklemek için Tamam'a tıklayın.

6. PDFNet SDK'yı Yükleyin

PDFNet SDK, dört farklı şekilde indirilebilir ve yüklenebilir.

  • Visual Studio NuGet Paket Yöneticisi kullanılarak.
  • Visual Studio Komut Satırı kullanarak.
  • NuGet Galerisi PDFNet Paketi'ndan Doğrudan İndir.
  • PDFNetLoader.dll kullanılarak

6.1. Visual Studio NuGet Paket Yöneticisini Kullanma

Yukarıda açıklandığı gibi, Visual Studio'da araçlara gidin ve NuGet paket yöneticisini açın. Bir liste görünecek — çözümler için NuGet paketi yönetin üzerine tıklayın.

A Comparison Between IronPDF and PDFNet, Figure 7

Arama çubuğuna sahip bir pencere görünecek. PDFNet'i arayın ve projeye yükleyin.

6.2. Visual Studio Komut Satırını Kullanma

  • Visual Studio menüsünde Tools > NuGet Package manager > Package manager console gidin
  • Paket yöneticisi konsol sekmesine aşağıdaki satırı girin:
Install-Package PDFNet -Version 9.2.0
A Comparison Between IronPDF and PDFNet, Figure 8

6.3. NuGet Web Sayfasından Doğrudan İndir

Üçüncü yol, NuGet paketini doğrudan NuGet Galerisi PDFNet Paketi'ndan indirmektir.

  • Sağ menüden indirme paketi seçeneğini seçin.
  • İndirilen paketi çift tıklayarak kurulum sürecini başlatın.

6.4. PDFNetLoader.dll Kullanarak

PDFNet API'sini PDFNetLoader.dll dosyası kullanarak da yükleyebilirsiniz. Onu GitHub Releases for PDFNetLoader.dll'den indirin.

Paketi indirin, projedeki bin dosyasına yerleştirin ve çalıştırın. Visual Studio projenizde PDFNetLoader.dll'yi bir referans olarak ekleyin.

Bootstrap ve CSS Çerçeve İşleme

Modern web uygulamaları, tutarlı, duyarlı tasarım için Bootstrap ve CSS çerçevelerine büyük ölçüde güvenmektedir. Web içeriğinden PDF'ler oluştururken, bu çerçeveleri değiştirilmeden doğru bir şekilde işleme yeteneği, tasarım tutarlılığını korumak ve geliştirme çabalarını azaltmak için çok önemlidir.

IronPDF: Tam Bootstrap Çerçeve Desteği

  • Bootstrap 5: Tam flexbox düzeni sistemi, CSS Grid, yardımcı sınıflar ve tüm bileşen kütüphaneleri
  • Bootstrap 4: Tam kart bileşenleri, navigasyon, flex yardımcıları ve duyarlı tasarım
  • Tailwind CSS: Tüm yardımcı ilkel sınıflar tarayıcı doğruluğuyla işlenir
  • Foundation: Tam grid sistemi ve bileşen desteği
  • Modern CSS3: Flexbox, CSS Grid, özel özellikler, animasyonlar, geçişler ve dönüşümler

Gerçek dünya doğrulaması: IronPDF, Bootstrap anasayfasını ve tüm resmi örnekleri mükemmel piksel uyumu ile işler.

Kod Örneği: Öğrenme Yönetim Sistemi Panosu

using IronPdf;

// Set your IronPDF license key
IronPdf.License.LicenseKey = "License-Key goes here";

var renderer = new ChromePdfRenderer();
string bootstrapLMS = @"
<!DOCTYPE html>
<html>
<head>
    <link href='https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css' rel='stylesheet'>
</head>
<body>
    <div class='container-fluid py-4'>
        <div class='d-flex justify-content-between align-items-center mb-4'>
            <div>
                <h1 class='display-6 mb-1'>Student Learning Dashboard</h1>
                <p class='text-muted mb-0'>Spring Semester 2025</p>
            </div>
            <span class='badge bg-success fs-5'>92% Overall Progress</span>
        </div>

        <div class='row g-4 mb-4'>
            <div class='col-md-3'>
                <div class='card text-center shadow-sm border-primary'>
                    <div class='card-body'>
                        <div class='text-primary mb-2' style='font-size: 2rem;'>📚</div>
                        <h3 class='mb-1'>6/8</h3>
                        <p class='text-muted mb-0'>Courses Completed</p>
                    </div>
                </div>
            </div>
            <div class='col-md-3'>
                <div class='card text-center shadow-sm border-success'>
                    <div class='card-body'>
                        <div class='text-success mb-2' style='font-size: 2rem;'>🎯</div>
                        <h3 class='mb-1'>24/28</h3>
                        <p class='text-muted mb-0'>Assignments Submitted</p>
                    </div>
                </div>
            </div>
            <div class='col-md-3'>
                <div class='card text-center shadow-sm border-warning'>
                    <div class='card-body'>
                        <div class='text-warning mb-2' style='font-size: 2rem;'>⏱️</div>
                        <h3 class='mb-1'>48hrs</h3>
                        <p class='text-muted mb-0'>Study Time This Week</p>
                    </div>
                </div>
            </div>
            <div class='col-md-3'>
                <div class='card text-center shadow-sm border-info'>
                    <div class='card-body'>
                        <div class='text-info mb-2' style='font-size: 2rem;'>⭐</div>
                        <h3 class='mb-1'>A- Average</h3>
                        <p class='text-muted mb-0'>Current GPA: 3.7</p>
                    </div>
                </div>
            </div>
        </div>

        <div class='row g-4'>
            <div class='col-md-8'>
                <div class='card shadow-sm'>
                    <div class='card-header bg-primary text-white'>
                        <h5 class='mb-0'>Current Courses</h5>
                    </div>
                    <div class='card-body p-0'>
                        <div class='list-group list-group-flush'>
                            <div class='list-group-item'>
                                <div class='d-flex justify-content-between align-items-center mb-2'>
                                    <div>
                                        <h6 class='mb-1'>Advanced Web Development</h6>
                                        <small class='text-muted'>Prof. Johnson | Mondays & Wednesdays, 2:00 PM</small>
                                    </div>
                                    <span class='badge bg-success'>Grade: A</span>
                                </div>
                                <div class='progress' style='height: 6px;'>
                                    <div class='progress-bar bg-success' style='width: 95%'></div>
                                </div>
                                <small class='text-muted'>95% Complete | Final Project Due: May 15</small>
                            </div>

                            <div class='list-group-item'>
                                <div class='d-flex justify-content-between align-items-center mb-2'>
                                    <div>
                                        <h6 class='mb-1'>Database Systems</h6>
                                        <small class='text-muted'>Prof. Chen | Tuesdays & Thursdays, 10:00 AM</small>
                                    </div>
                                    <span class='badge bg-primary'>Grade: A-</span>
                                </div>
                                <div class='progress' style='height: 6px;'>
                                    <div class='progress-bar bg-primary' style='width: 88%'></div>
                                </div>
                                <small class='text-muted'>88% Complete | Midterm: April 28</small>
                            </div>

                            <div class='list-group-item'>
                                <div class='d-flex justify-content-between align-items-center mb-2'>
                                    <div>
                                        <h6 class='mb-1'>Artificial Intelligence Fundamentals</h6>
                                        <small class='text-muted'>Prof. Martinez | Fridays, 1:00 PM</small>
                                    </div>
                                    <span class='badge bg-warning text-dark'>Grade: B+</span>
                                </div>
                                <div class='progress' style='height: 6px;'>
                                    <div class='progress-bar bg-warning' style='width: 75%'></div>
                                </div>
                                <small class='text-muted'>75% Complete | Research Paper Due: May 5</small>
                            </div>

                            <div class='list-group-item'>
                                <div class='d-flex justify-content-between align-items-center mb-2'>
                                    <div>
                                        <h6 class='mb-1'>Computer Networks</h6>
                                        <small class='text-muted'>Prof. Davis | Mondays & Wednesdays, 4:00 PM</small>
                                    </div>
                                    <span class='badge bg-success'>Grade: A</span>
                                </div>
                                <div class='progress' style='height: 6px;'>
                                    <div class='progress-bar bg-success' style='width: 92%'></div>
                                </div>
                                <small class='text-muted'>92% Complete | Lab Exam: April 30</small>
                            </div>
                        </div>
                    </div>
                </div>
            </div>

            <div class='col-md-4'>
                <div class='card shadow-sm mb-3'>
                    <div class='card-header bg-warning text-dark'>
                        <h5 class='mb-0'>Upcoming Deadlines</h5>
                    </div>
                    <div class='card-body p-0'>
                        <ul class='list-group list-group-flush'>
                            <li class='list-group-item'>
                                <div class='d-flex align-items-start'>
                                    <span class='badge bg-danger me-2'>Today</span>
                                    <div class='flex-grow-1'>
                                        <small><strong>AI Assignment 4</strong></small>
                                        <br><small class='text-muted'>Neural Networks Lab</small>
                                    </div>
                                </div>
                            </li>
                            <li class='list-group-item'>
                                <div class='d-flex align-items-start'>
                                    <span class='badge bg-warning text-dark me-2'>Apr 28</span>
                                    <div class='flex-grow-1'>
                                        <small><strong>Database Midterm</strong></small>
                                        <br><small class='text-muted'>Chapters 1-8</small>
                                    </div>
                                </div>
                            </li>
                            <li class='list-group-item'>
                                <div class='d-flex align-items-start'>
                                    <span class='badge bg-info me-2'>Apr 30</span>
                                    <div class='flex-grow-1'>
                                        <small><strong>Networks Lab Exam</strong></small>
                                        <br><small class='text-muted'>Practical Assessment</small>
                                    </div>
                                </div>
                            </li>
                            <li class='list-group-item'>
                                <div class='d-flex align-items-start'>
                                    <span class='badge bg-primary me-2'>May 5</span>
                                    <div class='flex-grow-1'>
                                        <small><strong>AI Research Paper</strong></small>
                                        <br><small class='text-muted'>15-20 pages</small>
                                    </div>
                                </div>
                            </li>
                        </ul>
                    </div>
                </div>

                <div class='card shadow-sm'>
                    <div class='card-header bg-info text-white'>
                        <h5 class='mb-0'>Study Resources</h5>
                    </div>
                    <div class='card-body'>
                        <div class='d-grid gap-2'>
                            <button class='btn btn-outline-primary btn-sm'>📖 Course Materials</button>
                            <button class='btn btn-outline-primary btn-sm'>💬 Discussion Forums</button>
                            <button class='btn btn-outline-primary btn-sm'>🎥 Recorded Lectures</button>
                            <button class='btn btn-outline-primary btn-sm'>📝 Practice Quizzes</button>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
</body>
</html>";

var pdf = renderer.RenderHtmlAsPdf(bootstrapLMS);
pdf.SaveAs("lms-dashboard.pdf");
using IronPdf;

// Set your IronPDF license key
IronPdf.License.LicenseKey = "License-Key goes here";

var renderer = new ChromePdfRenderer();
string bootstrapLMS = @"
<!DOCTYPE html>
<html>
<head>
    <link href='https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css' rel='stylesheet'>
</head>
<body>
    <div class='container-fluid py-4'>
        <div class='d-flex justify-content-between align-items-center mb-4'>
            <div>
                <h1 class='display-6 mb-1'>Student Learning Dashboard</h1>
                <p class='text-muted mb-0'>Spring Semester 2025</p>
            </div>
            <span class='badge bg-success fs-5'>92% Overall Progress</span>
        </div>

        <div class='row g-4 mb-4'>
            <div class='col-md-3'>
                <div class='card text-center shadow-sm border-primary'>
                    <div class='card-body'>
                        <div class='text-primary mb-2' style='font-size: 2rem;'>📚</div>
                        <h3 class='mb-1'>6/8</h3>
                        <p class='text-muted mb-0'>Courses Completed</p>
                    </div>
                </div>
            </div>
            <div class='col-md-3'>
                <div class='card text-center shadow-sm border-success'>
                    <div class='card-body'>
                        <div class='text-success mb-2' style='font-size: 2rem;'>🎯</div>
                        <h3 class='mb-1'>24/28</h3>
                        <p class='text-muted mb-0'>Assignments Submitted</p>
                    </div>
                </div>
            </div>
            <div class='col-md-3'>
                <div class='card text-center shadow-sm border-warning'>
                    <div class='card-body'>
                        <div class='text-warning mb-2' style='font-size: 2rem;'>⏱️</div>
                        <h3 class='mb-1'>48hrs</h3>
                        <p class='text-muted mb-0'>Study Time This Week</p>
                    </div>
                </div>
            </div>
            <div class='col-md-3'>
                <div class='card text-center shadow-sm border-info'>
                    <div class='card-body'>
                        <div class='text-info mb-2' style='font-size: 2rem;'>⭐</div>
                        <h3 class='mb-1'>A- Average</h3>
                        <p class='text-muted mb-0'>Current GPA: 3.7</p>
                    </div>
                </div>
            </div>
        </div>

        <div class='row g-4'>
            <div class='col-md-8'>
                <div class='card shadow-sm'>
                    <div class='card-header bg-primary text-white'>
                        <h5 class='mb-0'>Current Courses</h5>
                    </div>
                    <div class='card-body p-0'>
                        <div class='list-group list-group-flush'>
                            <div class='list-group-item'>
                                <div class='d-flex justify-content-between align-items-center mb-2'>
                                    <div>
                                        <h6 class='mb-1'>Advanced Web Development</h6>
                                        <small class='text-muted'>Prof. Johnson | Mondays & Wednesdays, 2:00 PM</small>
                                    </div>
                                    <span class='badge bg-success'>Grade: A</span>
                                </div>
                                <div class='progress' style='height: 6px;'>
                                    <div class='progress-bar bg-success' style='width: 95%'></div>
                                </div>
                                <small class='text-muted'>95% Complete | Final Project Due: May 15</small>
                            </div>

                            <div class='list-group-item'>
                                <div class='d-flex justify-content-between align-items-center mb-2'>
                                    <div>
                                        <h6 class='mb-1'>Database Systems</h6>
                                        <small class='text-muted'>Prof. Chen | Tuesdays & Thursdays, 10:00 AM</small>
                                    </div>
                                    <span class='badge bg-primary'>Grade: A-</span>
                                </div>
                                <div class='progress' style='height: 6px;'>
                                    <div class='progress-bar bg-primary' style='width: 88%'></div>
                                </div>
                                <small class='text-muted'>88% Complete | Midterm: April 28</small>
                            </div>

                            <div class='list-group-item'>
                                <div class='d-flex justify-content-between align-items-center mb-2'>
                                    <div>
                                        <h6 class='mb-1'>Artificial Intelligence Fundamentals</h6>
                                        <small class='text-muted'>Prof. Martinez | Fridays, 1:00 PM</small>
                                    </div>
                                    <span class='badge bg-warning text-dark'>Grade: B+</span>
                                </div>
                                <div class='progress' style='height: 6px;'>
                                    <div class='progress-bar bg-warning' style='width: 75%'></div>
                                </div>
                                <small class='text-muted'>75% Complete | Research Paper Due: May 5</small>
                            </div>

                            <div class='list-group-item'>
                                <div class='d-flex justify-content-between align-items-center mb-2'>
                                    <div>
                                        <h6 class='mb-1'>Computer Networks</h6>
                                        <small class='text-muted'>Prof. Davis | Mondays & Wednesdays, 4:00 PM</small>
                                    </div>
                                    <span class='badge bg-success'>Grade: A</span>
                                </div>
                                <div class='progress' style='height: 6px;'>
                                    <div class='progress-bar bg-success' style='width: 92%'></div>
                                </div>
                                <small class='text-muted'>92% Complete | Lab Exam: April 30</small>
                            </div>
                        </div>
                    </div>
                </div>
            </div>

            <div class='col-md-4'>
                <div class='card shadow-sm mb-3'>
                    <div class='card-header bg-warning text-dark'>
                        <h5 class='mb-0'>Upcoming Deadlines</h5>
                    </div>
                    <div class='card-body p-0'>
                        <ul class='list-group list-group-flush'>
                            <li class='list-group-item'>
                                <div class='d-flex align-items-start'>
                                    <span class='badge bg-danger me-2'>Today</span>
                                    <div class='flex-grow-1'>
                                        <small><strong>AI Assignment 4</strong></small>
                                        <br><small class='text-muted'>Neural Networks Lab</small>
                                    </div>
                                </div>
                            </li>
                            <li class='list-group-item'>
                                <div class='d-flex align-items-start'>
                                    <span class='badge bg-warning text-dark me-2'>Apr 28</span>
                                    <div class='flex-grow-1'>
                                        <small><strong>Database Midterm</strong></small>
                                        <br><small class='text-muted'>Chapters 1-8</small>
                                    </div>
                                </div>
                            </li>
                            <li class='list-group-item'>
                                <div class='d-flex align-items-start'>
                                    <span class='badge bg-info me-2'>Apr 30</span>
                                    <div class='flex-grow-1'>
                                        <small><strong>Networks Lab Exam</strong></small>
                                        <br><small class='text-muted'>Practical Assessment</small>
                                    </div>
                                </div>
                            </li>
                            <li class='list-group-item'>
                                <div class='d-flex align-items-start'>
                                    <span class='badge bg-primary me-2'>May 5</span>
                                    <div class='flex-grow-1'>
                                        <small><strong>AI Research Paper</strong></small>
                                        <br><small class='text-muted'>15-20 pages</small>
                                    </div>
                                </div>
                            </li>
                        </ul>
                    </div>
                </div>

                <div class='card shadow-sm'>
                    <div class='card-header bg-info text-white'>
                        <h5 class='mb-0'>Study Resources</h5>
                    </div>
                    <div class='card-body'>
                        <div class='d-grid gap-2'>
                            <button class='btn btn-outline-primary btn-sm'>📖 Course Materials</button>
                            <button class='btn btn-outline-primary btn-sm'>💬 Discussion Forums</button>
                            <button class='btn btn-outline-primary btn-sm'>🎥 Recorded Lectures</button>
                            <button class='btn btn-outline-primary btn-sm'>📝 Practice Quizzes</button>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
</body>
</html>";

var pdf = renderer.RenderHtmlAsPdf(bootstrapLMS);
pdf.SaveAs("lms-dashboard.pdf");
Imports IronPdf

' Set your IronPDF license key
IronPdf.License.LicenseKey = "License-Key goes here"

Dim renderer As New ChromePdfRenderer()
Dim bootstrapLMS As String = "
<!DOCTYPE html>
<html>
<head>
    <link href='https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css' rel='stylesheet'>
</head>
<body>
    <div class='container-fluid py-4'>
        <div class='d-flex justify-content-between align-items-center mb-4'>
            <div>
                <h1 class='display-6 mb-1'>Student Learning Dashboard</h1>
                <p class='text-muted mb-0'>Spring Semester 2025</p>
            </div>
            <span class='badge bg-success fs-5'>92% Overall Progress</span>
        </div>

        <div class='row g-4 mb-4'>
            <div class='col-md-3'>
                <div class='card text-center shadow-sm border-primary'>
                    <div class='card-body'>
                        <div class='text-primary mb-2' style='font-size: 2rem;'>📚</div>
                        <h3 class='mb-1'>6/8</h3>
                        <p class='text-muted mb-0'>Courses Completed</p>
                    </div>
                </div>
            </div>
            <div class='col-md-3'>
                <div class='card text-center shadow-sm border-success'>
                    <div class='card-body'>
                        <div class='text-success mb-2' style='font-size: 2rem;'>🎯</div>
                        <h3 class='mb-1'>24/28</h3>
                        <p class='text-muted mb-0'>Assignments Submitted</p>
                    </div>
                </div>
            </div>
            <div class='col-md-3'>
                <div class='card text-center shadow-sm border-warning'>
                    <div class='card-body'>
                        <div class='text-warning mb-2' style='font-size: 2rem;'>⏱️</div>
                        <h3 class='mb-1'>48hrs</h3>
                        <p class='text-muted mb-0'>Study Time This Week</p>
                    </div>
                </div>
            </div>
            <div class='col-md-3'>
                <div class='card text-center shadow-sm border-info'>
                    <div class='card-body'>
                        <div class='text-info mb-2' style='font-size: 2rem;'>⭐</div>
                        <h3 class='mb-1'>A- Average</h3>
                        <p class='text-muted mb-0'>Current GPA: 3.7</p>
                    </div>
                </div>
            </div>
        </div>

        <div class='row g-4'>
            <div class='col-md-8'>
                <div class='card shadow-sm'>
                    <div class='card-header bg-primary text-white'>
                        <h5 class='mb-0'>Current Courses</h5>
                    </div>
                    <div class='card-body p-0'>
                        <div class='list-group list-group-flush'>
                            <div class='list-group-item'>
                                <div class='d-flex justify-content-between align-items-center mb-2'>
                                    <div>
                                        <h6 class='mb-1'>Advanced Web Development</h6>
                                        <small class='text-muted'>Prof. Johnson | Mondays & Wednesdays, 2:00 PM</small>
                                    </div>
                                    <span class='badge bg-success'>Grade: A</span>
                                </div>
                                <div class='progress' style='height: 6px;'>
                                    <div class='progress-bar bg-success' style='width: 95%'></div>
                                </div>
                                <small class='text-muted'>95% Complete | Final Project Due: May 15</small>
                            </div>

                            <div class='list-group-item'>
                                <div class='d-flex justify-content-between align-items-center mb-2'>
                                    <div>
                                        <h6 class='mb-1'>Database Systems</h6>
                                        <small class='text-muted'>Prof. Chen | Tuesdays & Thursdays, 10:00 AM</small>
                                    </div>
                                    <span class='badge bg-primary'>Grade: A-</span>
                                </div>
                                <div class='progress' style='height: 6px;'>
                                    <div class='progress-bar bg-primary' style='width: 88%'></div>
                                </div>
                                <small class='text-muted'>88% Complete | Midterm: April 28</small>
                            </div>

                            <div class='list-group-item'>
                                <div class='d-flex justify-content-between align-items-center mb-2'>
                                    <div>
                                        <h6 class='mb-1'>Artificial Intelligence Fundamentals</h6>
                                        <small class='text-muted'>Prof. Martinez | Fridays, 1:00 PM</small>
                                    </div>
                                    <span class='badge bg-warning text-dark'>Grade: B+</span>
                                </div>
                                <div class='progress' style='height: 6px;'>
                                    <div class='progress-bar bg-warning' style='width: 75%'></div>
                                </div>
                                <small class='text-muted'>75% Complete | Research Paper Due: May 5</small>
                            </div>

                            <div class='list-group-item'>
                                <div class='d-flex justify-content-between align-items-center mb-2'>
                                    <div>
                                        <h6 class='mb-1'>Computer Networks</h6>
                                        <small class='text-muted'>Prof. Davis | Mondays & Wednesdays, 4:00 PM</small>
                                    </div>
                                    <span class='badge bg-success'>Grade: A</span>
                                </div>
                                <div class='progress' style='height: 6px;'>
                                    <div class='progress-bar bg-success' style='width: 92%'></div>
                                </div>
                                <small class='text-muted'>92% Complete | Lab Exam: April 30</small>
                            </div>
                        </div>
                    </div>
                </div>
            </div>

            <div class='col-md-4'>
                <div class='card shadow-sm mb-3'>
                    <div class='card-header bg-warning text-dark'>
                        <h5 class='mb-0'>Upcoming Deadlines</h5>
                    </div>
                    <div class='card-body p-0'>
                        <ul class='list-group list-group-flush'>
                            <li class='list-group-item'>
                                <div class='d-flex align-items-start'>
                                    <span class='badge bg-danger me-2'>Today</span>
                                    <div class='flex-grow-1'>
                                        <small><strong>AI Assignment 4</strong></small>
                                        <br><small class='text-muted'>Neural Networks Lab</small>
                                    </div>
                                </div>
                            </li>
                            <li class='list-group-item'>
                                <div class='d-flex align-items-start'>
                                    <span class='badge bg-warning text-dark me-2'>Apr 28</span>
                                    <div class='flex-grow-1'>
                                        <small><strong>Database Midterm</strong></small>
                                        <br><small class='text-muted'>Chapters 1-8</small>
                                    </div>
                                </div>
                            </li>
                            <li class='list-group-item'>
                                <div class='d-flex align-items-start'>
                                    <span class='badge bg-info me-2'>Apr 30</span>
                                    <div class='flex-grow-1'>
                                        <small><strong>Networks Lab Exam</strong></small>
                                        <br><small class='text-muted'>Practical Assessment</small>
                                    </div>
                                </div>
                            </li>
                            <li class='list-group-item'>
                                <div class='d-flex align-items-start'>
                                    <span class='badge bg-primary me-2'>May 5</span>
                                    <div class='flex-grow-1'>
                                        <small><strong>AI Research Paper</strong></small>
                                        <br><small class='text-muted'>15-20 pages</small>
                                    </div>
                                </div>
                            </li>
                        </ul>
                    </div>
                </div>

                <div class='card shadow-sm'>
                    <div class='card-header bg-info text-white'>
                        <h5 class='mb-0'>Study Resources</h5>
                    </div>
                    <div class='card-body'>
                        <div class='d-grid gap-2'>
                            <button class='btn btn-outline-primary btn-sm'>📖 Course Materials</button>
                            <button class='btn btn-outline-primary btn-sm'>💬 Discussion Forums</button>
                            <button class='btn btn-outline-primary btn-sm'>🎥 Recorded Lectures</button>
                            <button class='btn btn-outline-primary btn-sm'>📝 Practice Quizzes</button>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
</body>
</html>"

Dim pdf = renderer.RenderHtmlAsPdf(bootstrapLMS)
pdf.SaveAs("lms-dashboard.pdf")
$vbLabelText   $csharpLabel

Çıktı: Bootstrap 5'in ızgara sistemi, kart bileşenleri, ilerleme çubukları, rozetler, flexbox düzenler ve liste grupları ile profesyonel öğrenme yönetim sistemi PDF'si — mükemmel boşluk, tipografi ve renk doğruluğu ile işleniyor.

PDFNet (Apryse): Kısmi Modern CSS Desteği

PDFNet, seçici CSS3 desteğiyle özel bir HTML işleme motoru kullanır:

  • Sınırlı flexbox uygulaması: Bootstrap 4/5 flex tabanlı düzenler tutarsız işlenebilir
  • Kısmi CSS Grid desteği: Izgara tabanlı tasarımlar genellikle yedek gerektirir
  • JavaScript kısıtlamaları: Tam tarayıcı ortamlarına kıyasla minimal yürütme
  • Çerçeve testi gereklidir: Bootstrap bileşenleri üretim öncesi doğrulama gerektirir

Geliştirme etkisi: Ekipler, her Bootstrap bileşenini ayrı ayrı test etmeli ve genellikle PDFNet için basitleştirilmiş düzenler veya alternatif CSS oluşturmalı, bu da karmaşıklığı artırır ve tasarım tutarlılığını azaltır.

Önemli Bootstrap çerçeve kılavuzu ve modern CSS işleme yetenekleri için Bootstrap & Flexbox CSS Kılavuzuna bakın.

7. PDF Dosyasını Yazdırma (Kod Örnekleri)

PDF dosyasını yazdırmak, PDF'lerle çalışan modern uygulamalar için vazgeçilmez bir özelliktir. Burada, her iki aracı kullanarak PDF dosyalarını nasıl yazdıracağımızı tartışacağız.

7.1. IronPDF Kullanarak PDF Dosyasını Yazdırma

IronPDF, bir PDF'yi bilgisayarın varsayılan yazıcısına göndererek yazdırır. Bu, Windows yazdırma arayüzünü açacaktır — yazdır butonuna tıklamanız yeterli.

using IronPdf;

class PrintPDF
{
    static void Main(string[] args)
    {
        // Create a new PDF and print it
        var Renderer = new IronPdf.ChromePdfRenderer();
        PdfDocument Pdf = Renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf");

        // Send the PDF to the default printer to print
        Pdf.Print(300, false);
    }
}
using IronPdf;

class PrintPDF
{
    static void Main(string[] args)
    {
        // Create a new PDF and print it
        var Renderer = new IronPdf.ChromePdfRenderer();
        PdfDocument Pdf = Renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf");

        // Send the PDF to the default printer to print
        Pdf.Print(300, false);
    }
}
Imports IronPdf

Friend Class PrintPDF
	Shared Sub Main(ByVal args() As String)
		' Create a new PDF and print it
		Dim Renderer = New IronPdf.ChromePdfRenderer()
		Dim Pdf As PdfDocument = Renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf")

		' Send the PDF to the default printer to print
		Pdf.Print(300, False)
	End Sub
End Class
$vbLabelText   $csharpLabel

7.2. PDFNet Kullanarak PDF Dosyasını Yazdırma

PDFTron'un PDFNet SDK'sı da bir yazdırma özelliği sağlar. Aşağıda, PDFNet'te bir PDF dosyasını yazdırmak için kaynak kod örneği verilmiştir.

using System;
using pdftron;
using pdftron.PDF;
using pdftron.Common;
using pdftron.Filters;

namespace PDFPrintTestCS
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Opening the input file...");
            using (PDFDoc pdfdoc = new PDFDoc("tiger.pdf"))
            {
                pdfdoc.InitSecurityHandler();
                Console.WriteLine("Printing the input file using PDF.Print.StartPrintJob...");
                PrinterMode printerMode = new PrinterMode();
                printerMode.SetAutoCenter(true);
                printerMode.SetAutoRotate(true);
                printerMode.SetCollation(true);
                printerMode.SetCopyCount(1);
                printerMode.SetDPI(300); // Set print quality to 300 DPI
                printerMode.SetDuplexing(PrinterMode.DuplexMode.e_Duplex_Auto);
                printerMode.SetNUp(PrinterMode.NUp.e_NUp_1_1, PrinterMode.NUpPageOrder.e_PageOrder_LeftToRightThenTopToBottom);
                printerMode.SetOrientation(PrinterMode.Orientation.e_Orientation_Portrait);
                printerMode.SetOutputAnnot(PrinterMode.PrintContentTypes.e_PrintContent_DocumentAndAnnotations);
                printerMode.SetOutputColor(PrinterMode.OutputColor.e_OutputColor_Grayscale);
                printerMode.SetOutputPageBorder(false);
                printerMode.SetOutputQuality(PrinterMode.OutputQuality.e_OutputQuality_Medium);
                printerMode.SetPaperSize(new Rect(0, 0, 612, 792));
                PageSet pagesToPrint = new PageSet(1, pdfdoc.GetPageCount(), PageSet.Filter.e_all);
                Print.StartPrintJob(pdfdoc, "", pdfdoc.GetFileName(), "", pagesToPrint, printerMode, null);
            }
        }
    }
}
using System;
using pdftron;
using pdftron.PDF;
using pdftron.Common;
using pdftron.Filters;

namespace PDFPrintTestCS
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Opening the input file...");
            using (PDFDoc pdfdoc = new PDFDoc("tiger.pdf"))
            {
                pdfdoc.InitSecurityHandler();
                Console.WriteLine("Printing the input file using PDF.Print.StartPrintJob...");
                PrinterMode printerMode = new PrinterMode();
                printerMode.SetAutoCenter(true);
                printerMode.SetAutoRotate(true);
                printerMode.SetCollation(true);
                printerMode.SetCopyCount(1);
                printerMode.SetDPI(300); // Set print quality to 300 DPI
                printerMode.SetDuplexing(PrinterMode.DuplexMode.e_Duplex_Auto);
                printerMode.SetNUp(PrinterMode.NUp.e_NUp_1_1, PrinterMode.NUpPageOrder.e_PageOrder_LeftToRightThenTopToBottom);
                printerMode.SetOrientation(PrinterMode.Orientation.e_Orientation_Portrait);
                printerMode.SetOutputAnnot(PrinterMode.PrintContentTypes.e_PrintContent_DocumentAndAnnotations);
                printerMode.SetOutputColor(PrinterMode.OutputColor.e_OutputColor_Grayscale);
                printerMode.SetOutputPageBorder(false);
                printerMode.SetOutputQuality(PrinterMode.OutputQuality.e_OutputQuality_Medium);
                printerMode.SetPaperSize(new Rect(0, 0, 612, 792));
                PageSet pagesToPrint = new PageSet(1, pdfdoc.GetPageCount(), PageSet.Filter.e_all);
                Print.StartPrintJob(pdfdoc, "", pdfdoc.GetFileName(), "", pagesToPrint, printerMode, null);
            }
        }
    }
}
Imports System
Imports pdftron
Imports pdftron.PDF
Imports pdftron.Common
Imports pdftron.Filters

Namespace PDFPrintTestCS
	Friend Class Program
		Shared Sub Main(ByVal args() As String)
			Console.WriteLine("Opening the input file...")
			Using pdfdoc As New PDFDoc("tiger.pdf")
				pdfdoc.InitSecurityHandler()
				Console.WriteLine("Printing the input file using PDF.Print.StartPrintJob...")
				Dim printerMode As New PrinterMode()
				printerMode.SetAutoCenter(True)
				printerMode.SetAutoRotate(True)
				printerMode.SetCollation(True)
				printerMode.SetCopyCount(1)
				printerMode.SetDPI(300) ' Set print quality to 300 DPI
				printerMode.SetDuplexing(PrinterMode.DuplexMode.e_Duplex_Auto)
				printerMode.SetNUp(PrinterMode.NUp.e_NUp_1_1, PrinterMode.NUpPageOrder.e_PageOrder_LeftToRightThenTopToBottom)
				printerMode.SetOrientation(PrinterMode.Orientation.e_Orientation_Portrait)
				printerMode.SetOutputAnnot(PrinterMode.PrintContentTypes.e_PrintContent_DocumentAndAnnotations)
				printerMode.SetOutputColor(PrinterMode.OutputColor.e_OutputColor_Grayscale)
				printerMode.SetOutputPageBorder(False)
				printerMode.SetOutputQuality(PrinterMode.OutputQuality.e_OutputQuality_Medium)
				printerMode.SetPaperSize(New Rect(0, 0, 612, 792))
				Dim pagesToPrint As New PageSet(1, pdfdoc.GetPageCount(), PageSet.Filter.e_all)
				Print.StartPrintJob(pdfdoc, "", pdfdoc.GetFileName(), "", pagesToPrint, printerMode, Nothing)
			End Using
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

8. HTML'den PDF Oluşturma

Her iki kütüphane de HTML'den PDF'ye dönüştürme yeteneklerine sahiptir, ancak yöntemler biraz farklıdır.

8.1. IronPDF Kullanarak HTML'den PDF Oluşturma

IronPDF, JSON veya şifreleme mekanizmalarının kullanımını gerektirmez. IronPDF geniş bir yöntem yelpazesini destekler. Örneğin:

HTML Dosyalarını PDF'ye Dönüştürme

using IronPdf;

class HtmlToPdf
{
    static void Main(string[] args)
    {
        var Renderer = new IronPdf.ChromePdfRenderer();
        Renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>").SaveAs("pixel-perfect.pdf");
    }
}
using IronPdf;

class HtmlToPdf
{
    static void Main(string[] args)
    {
        var Renderer = new IronPdf.ChromePdfRenderer();
        Renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>").SaveAs("pixel-perfect.pdf");
    }
}
Imports IronPdf

Friend Class HtmlToPdf
	Shared Sub Main(ByVal args() As String)
		Dim Renderer = New IronPdf.ChromePdfRenderer()
		Renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>").SaveAs("pixel-perfect.pdf")
	End Sub
End Class
$vbLabelText   $csharpLabel

URL'den PDF'ye

using IronPdf;

class UrlToPdf
{
    static void Main(string[] args)
    {
        IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
        var Pdf = Renderer.RenderUrlAsPdf("https://ironpdf.com/");
        Pdf.SaveAs("url.pdf");
    }
}
using IronPdf;

class UrlToPdf
{
    static void Main(string[] args)
    {
        IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
        var Pdf = Renderer.RenderUrlAsPdf("https://ironpdf.com/");
        Pdf.SaveAs("url.pdf");
    }
}
Imports IronPdf

Friend Class UrlToPdf
	Shared Sub Main(ByVal args() As String)
		Dim Renderer As New IronPdf.ChromePdfRenderer()
		Dim Pdf = Renderer.RenderUrlAsPdf("https://ironpdf.com/")
		Pdf.SaveAs("url.pdf")
	End Sub
End Class
$vbLabelText   $csharpLabel
A Comparison Between IronPDF and PDFNet, Figure 9

8.2. PDFNet Kullanarak HTML'den PDF Oluşturma

PDFNet, hem sayfa dönüştürme hem de URL dönüştürme kullanarak HTML'den PDF'ye dönüştürme özellikleri sağlar. Uzun kod nedeniyle burada size sadece bir örnek vereceğiz.

class HTML2PDFSample
{
    private static pdftron.PDFNetLoader pdfNetLoader = pdftron.PDFNetLoader.Instance();
    static HTML2PDFSample() {}

    static void Main(string[] args)
    {
        string output_path = "../../../../TestFiles/Output/html2pdf_example";
        string host = "https://www.pdftron.com";
        HTML2PDF.SetModulePath("../../../../../Lib");

        if (!HTML2PDF.IsModuleAvailable())
        {
            Console.WriteLine();
            Console.WriteLine("Unable to run HTML2PDFTest: PDFTron SDK HTML2PDF module not available.");
            return;
        }

        try
        {
            using (PDFDoc doc = new PDFDoc())
            {
                if (HTML2PDF.Convert(doc, host + "/"))
                    doc.Save(output_path + "_01.pdf", SDFDoc.SaveOptions.e_linearized);
                else
                    Console.WriteLine("Conversion failed.");
            }
        }
        catch (PDFNetException e)
        {
            Console.WriteLine(e.Message);
        }
    }
}
class HTML2PDFSample
{
    private static pdftron.PDFNetLoader pdfNetLoader = pdftron.PDFNetLoader.Instance();
    static HTML2PDFSample() {}

    static void Main(string[] args)
    {
        string output_path = "../../../../TestFiles/Output/html2pdf_example";
        string host = "https://www.pdftron.com";
        HTML2PDF.SetModulePath("../../../../../Lib");

        if (!HTML2PDF.IsModuleAvailable())
        {
            Console.WriteLine();
            Console.WriteLine("Unable to run HTML2PDFTest: PDFTron SDK HTML2PDF module not available.");
            return;
        }

        try
        {
            using (PDFDoc doc = new PDFDoc())
            {
                if (HTML2PDF.Convert(doc, host + "/"))
                    doc.Save(output_path + "_01.pdf", SDFDoc.SaveOptions.e_linearized);
                else
                    Console.WriteLine("Conversion failed.");
            }
        }
        catch (PDFNetException e)
        {
            Console.WriteLine(e.Message);
        }
    }
}
Friend Class HTML2PDFSample
	Private Shared pdfNetLoader As pdftron.PDFNetLoader = pdftron.PDFNetLoader.Instance()
	Shared Sub New()
	End Sub

	Shared Sub Main(ByVal args() As String)
		Dim output_path As String = "../../../../TestFiles/Output/html2pdf_example"
		Dim host As String = "https://www.pdftron.com"
		HTML2PDF.SetModulePath("../../../../../Lib")

		If Not HTML2PDF.IsModuleAvailable() Then
			Console.WriteLine()
			Console.WriteLine("Unable to run HTML2PDFTest: PDFTron SDK HTML2PDF module not available.")
			Return
		End If

		Try
			Using doc As New PDFDoc()
				If HTML2PDF.Convert(doc, host & "/") Then
					doc.Save(output_path & "_01.pdf", SDFDoc.SaveOptions.e_linearized)
				Else
					Console.WriteLine("Conversion failed.")
				End If
			End Using
		Catch e As PDFNetException
			Console.WriteLine(e.Message)
		End Try
	End Sub
End Class
$vbLabelText   $csharpLabel
A Comparison Between IronPDF and PDFNet, Figure 10

9. Lisanslama

IronPDF, ücretsiz bir geliştirici lisansı sunan bir kütüphanedir. IronPDF ayrıca özel bir fiyat yapısı sunar: hafif paket $799 ile başlar ve gizli maliyet yoktur. Ayrıca SaaS ve OEM ürünlerini yeniden dağıtmak da mümkündür. Tüm lisanslar, 30 günlük para iade garantisi, bir yıl yazılım desteği ve güncellemeler, geliştirme/test/ortam/üretim geçerliliği ve süresiz lisans (tek seferlik satın alma) içerir. IronPDF lisansları, kullanıcıların ihtiyaçları için maksimum performans sunar. IronPDF'nin tüm fiyat yapısını ve lisansını görmek için bu IronPDF Lisanslama Sayfası'na gidin.

A Comparison Between IronPDF and PDFNet, Figure 11

PDFTron PDFNet SDK, iş ihtiyaçlarınıza uygun birkaç lisans seçeneği ile birlikte gelir. Üç tür lisans, kurumsal ve OEM derecelendirmeleri ile birlikte gelir. Kurumsal lisanslar yalnızca organizasyonel kullanım içindir ve uygulama dağıtımında kullanılamaz. Dosya sistemi erişimi gerektiren ek API'ler de lisanslara dahildir. Tüm lisanslar bir lisans anahtarı ile gelir. Üç tür lisans şunlardır:

  • Görüntüleyici
  • Görüntüleyici ve Açıklama
  • Çekirdek SDK

Lisans yapıları hakkında daha fazla bilgi için bu PDFTron Lisans Bilgi Sayfası'nı ziyaret edin.

10. Sonuç

IronPDF, PDF dosyalarını işlemek ve farklı formatlara dönüştürmek için birçok özellik ve işlevsellik sunar. HTML'den PDF'ye dönüşümler, yüksek kaliteli ticari baskı için uygun olan vektör formatında üretilir. Sonuç olarak, net ve yüksek kaliteli bir PDF alacaksınız. Lisans ve fiyatlandırma bilgileri web sitesinde bulunabilir.

IronPDF'e benzer şekilde, PDFNet, PDF dosyalarının dönüşümü, ek açıklamaları, imzalanması, doldurulması, dönüştürülmesi ve düzenlenmesine yardımcı olur. Windows, iOS, Android, WEB ve Linux dahil birden fazla platformu destekler. Üretim kullanımı için, PDFNet SDK'ları bir ürün anahtarı gerektirir.

IronPDF'in lisansları geliştirici odaklıdır, yani ürünü kaç geliştiricinin kullanacağına bağlı olarak bir lisans almanız gerekir. Diğer yandan, PDFNet lisansları aynı şekilde çalışmaz, bunun yerine özellik bazlı bir lisans üzerinden çalışır. Bu, gerekli olan özellikleri destekleyen lisansı almanız gerektiği anlamına gelir. IronPDF lisansları kutudan çıktığı gibi tüm özellikleri içerir. PDFNet ile bazı özellikler, örneğin belge dönüştürme, eklenti olarak satın alınmalıdır.

IronPDF kütüphanesi, kodunuzu yazmanızı kolaylaştıracak şekilde düzenli olarak sunulan özellikler ile, birkaç satır kodla büyük görevleri yerine getirmeyi kolaylaştırır. Iron Software şu anda sadece iki fiyatına beş araç paketi sunuyor. Iron Suite'te yer alan araçlar şunlardır:

Lütfen bu Iron Suite Bilgi Sayfasını Keşfetmek İçin Ziyaret Edin.

Lütfen dikkate alinPDFTron, kendi sahibine ait bir tescilli markadır. Bu site PDFTron ile ilişkili, onaylanmış veya desteklenmemiştir. 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

Makaledeki ana PDF kütüphaneleri nelerdir?

Makale, Iron Software tarafindan geliştirilen IronPDF ve PDFTron tarafindan geliştirilen PDFNet'i, .NET Framework icindeki C# geliştiricileri için provide ettikleri yeteneklere odaklanarak karsilastirir.

HTML'yi C#'de PDF'ye nasıl dönüştürebilirim?

IronPDF'nin RenderHtmlAsPdf metodunu HTML stringlerini PDF'ye dönüştürmek için kullanabilirsiniz. Ayrica, IronPDF'nin güçlü Chromium motorunu kullanarak HTML dosyalarini ve URL'leri PDF'ye dönüştürebilirsiniz.

IronPDF hangi işletim sistemlerini destekler?

IronPDF birden fazla işletim sistemi desteği sunar, bu sistemler Windows, Azure ve Docker dahil olmak uzere farkli geliştirme ortamlarına sorunsuz bir şekilde entegre edilir.

IronPDF, PDF verilerini nasıl çıkarir?

IronPDF verimli PDF veri çıkarma özelligi sunarak geliştiricilerin PDF dokümanlarindan metin ve resimleri kolayca alarak daha fazla işlem yapmalarını saglar.

IronPDF için yükleme seçenekleri nelerdir?

IronPDF, Visual Studio NuGet Paket Yöneticisi, Visual Studio Komut Satırı veya doğrudan NuGet Galerisi'nden kurulabilir ve bu sayede geliştiriciler için kolay bir kurulum saglar.

IronPDF ve PDFNet arasindaki lisans farkliliklari nelerdir?

IronPDF, tüm özellikleri içeren geliştirici odaklı lisanslar sunarken, PDFNet lisansları özelliğe dayalıdır ve belirli işlevsellikler için ek satın alımlar gerekebilir.

IronPDF büyük PDF görevleri için uygun mudur?

Evet, IronPDF'in kullanımi kolayligi ve çok az kod gereksinimi nedeniyle büyük PDF görevlerini verimli bir şekilde yönetmek için uygun oldugu öne çıkar.

Iron Software paketi hangi ek araçları içerir?

Iron Software suite, IronBarcode, IronXL, IronOCR, IronPDF ve IronWebscraper'i bir paket anlaşması olarak sunarak geliştiriciler için çekiciliğini artırır.

Curtis Chau
Teknik Yazar

Curtis Chau, Bilgisayar Bilimleri alanında lisans derecesine sahiptir (Carleton Üniversitesi) ve Node.js, TypeScript, JavaScript ve React konularında uzmanlaşmış ön uç geliştirme üzerine uzmanlaşmıştır. Kullanıcı dostu ve estetik açıdan hoş arayüzler tasarlamaya tutkuyla bağlı olan Curtis, modern çerç...

Daha Fazlasını Oku

Iron Destek Ekibi

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