
PDF Sayfaları Nasıl Ayrılır
IronPDF ile iText / iText
Kapsamlı .NET PDF kütüphanesi karşılaştırması — özellik bazında kanıt temelli bağlamla
| Özellik | iText / iText | IronPDF ✦ |
|---|---|---|
| PDF Oluşturma ve Dönüştürme | ||
| HTML/CSS'den PDF'ye | $ Paid Add-on HTML→PDF, pdfHTML eklentisi aracılığıyla (ayrı paket; AGPL/ticari model). | ✓ Yes Çizim, Flexbox ve Grid render ile pikselle mükemmel CSS3 tabanlı Chromium motoru ile. |
| JavaScript Yürütme | ? Unknown pdfHTML, HTML/CSS→PDF dönüşümünü açıklar, ancak JS çalıştırma desteği belgelerde belirtilmemiştir. | ✓ Yes Uzay adları ve modüllerde dinamik içerik desteği — SPA'lar ve etkileşimli içerik için JS'yi tamamen çalıştırır. |
| Programatik Oluşturma | ✓ Yes .NET için programlanabilir bir PDF SDK olarak konumlandırılmış — oluşturma, düzenleme, ve geliştirme. | ✓ Yes HTML şablonlarından, dizelerden, ASPX görünümlerinden veya görüntülerden oluşturma. Chromium düzeni işler. |
| PDF için URL | $ Paid Add-on URL almak ile pdfHTML eklentisi aracılığıyla mümkündür, ancak çekirdek bir özellik değildir. | ✓ YesRenderUrlAsPdf() Canlı herhangi bir URL'yi tüm CSS/JS render ile yakalar. |
| DOCX'ten PDF'ye | ✕ No Yerel Word dönüşümü yoktur — iText PDF tabanlı bir SDK'dır. | ✓ YesDocxToPdfRenderer Yapıyı ve formatı koruyarak Word belgelerine dönüştürür. |
| Okuma ve Çıkarma | ||
| Metin Çıkarma | ✓ YesPdfTextExtractor.GetTextFromPage() birden fazla çıkarma stratejisi ile. | ✓ Yes Düzeni farkında metni çıkarır. Tarayıcı belgeler için IronOCR ile birleşir. |
| Sayfaları Görüntü Olarak Render Etme | ? Unknown OCR iş akışları render'ı belirtir, ancak kanıt olarak birincil kaynak "PDF→görüntü renderleyici" modülü iText belgelerinde yoktur. | ✓ Built-in PNG, JPEG, BMP ile yerel rasterizasyon DPI ayarlanabilir. |
| Yerleşik OCR | $ Paid Add-on pdfOCR eklentisi mevcut; yükleme notları platforma özgü/yerel bağımlılıkları (ör.,
Linux/macOS çalışırtma gereksinimleri) belirtir. | ✓ Via IronOCR Tarayıcı dışı 127+ dilde taranan PDF'ler için IronOCR ile yerel entegrasyon. |
| Düzenleme ve Manipülasyon | ||
| Birleştirme ve Bölme | ✓ YesPdfMerger .NET API'de sınıf; resmi örnekler, PdfMerger aracılığıyla birleştirme konusunu tartışır. | ✓ Yes Tek satırda birleşme, bölme, ekleme, başına ekleme ve sayfa sıralamasını değiştirme, sezgisel API ile. |
| Başlıklar, Altbilgiler ve Sayfa Numaraları | ✓ Yes PDF Derneği listesi, mevcut PDF'lere "sayfa numaraları" ve benzeri özellikler ekleme yeteneğini doğrular. | ✓ Yes Otomatik sayfa numaraları, tarihler ve özel içerikle HTML tabanlı başlıklar/altbilgiler. |
| Filigranlar | ✓ Yes PDF Derneği listesi, "mevcut PDF belgelere... filigranlar" içerdiğini açıkça belirtir. | ✓ YesApplyWatermark() HTML/CSS kabul eder — opaklık, rotasyon ve
pozisyon üzerinde tam kontrol. |
| Damga Metin ve Görseller | ✓ Yes Programatik içerik yerleştirme, iText'in canvas ve düzen API'leri aracılığıyla mevcuttur. | ✓ YesTextStamper Google Fonts, konumlandırma ve
sayfa başına kontrol ile ImageStamper. |
| İçeriği Kapat | ✓ Yes iText, temizleme modülü aracılığıyla redaksiyon anotasyon desteği sağlar. | ✓ YesRedactTextOnAllPages() Tek satırda hassas metinleri kalıcı olarak kaldırır. |
| Güvenlik ve Uyumluluk | ||
| Şifreleme ve Parolalar | ✓ Yes iText'in güvenlik API'si aracılığıyla tam şifreleme ve izin kontrolleri. | ✓ Yes AES şifreleme, sahip/kullanıcı parolaları, ayrıntılı izinler (yazdırma, kopyalama, açıklama). |
| Dijital İmzalar | ✓ Yes Özel imzalama belgeleri ve PdfSigner API'leri (dijital imzalama API'si) vardır. | ✓ YesPdfSignature X509/PFX sertifika desteği ile. |
| PDF/A ve PDF/UA Uyum | ✓ Yes Dokümantasyon, PDF/A oluşturmayı kapsar ve kısıtlamaları açıklar (mevcut olanın
otomatik dönüştürülmesi değildir). | ✓ Yes Kurumsal kullanım için yerel PDF/A arşivleme ve PDF/UA erişilebilirlik uyumu. |
| Platform ve Dağıtım | ||
| Çapraz Platform Desteği | ✓ Yes .NET Standard 2.0 / .NET Framework 4.6.1 — tüm işletim sistemlerinde .NET 6+ üzerinde çalışır. | ✓ Yes Windows, Linux, macOS, x64, x86, ARM. .NET 6–10, Core, Standard 2.0+, Framework 4.6.2+. |
| Sunucu / Docker / Bulut | ~ Complex Çekirdek kurulum çoklu paket gerektirir (iText + Bouncy Castle adaptörü); eklentiler
(pdfHTML/pdfOCR) ek bağımlılık/uyum adımları ekler. | ✓ Yes Docker, Azure, AWS, IIS. Resmi Docker görüntüleri ve dağıtım kılavuzları. |
| Kurulum Kolaylığı | ~ Complex Çekirdek kurulum çoklu paket gerektirir (Bouncy Castle adaptörü); HTML/OCR ek eklentiler ve bazı durumlarda yerel bağımlılıklar gerektirir. | ✓ Simple Tek Install-Package IronPdf NuGet komutu. Dakikalar içinde hazır. |
| Lisanslama ve Destek | ||
| Lisanslama Modeli | ~ Complex Çift lisans: AGPLv3 (ağ kullanımı için kaynak ifşa yükümlülükleri) veya ticari. AGPL, sahipli uygulamalar için kısıtlayıcı olabilir. | ✓ Commercial Süresiz lisanslar. 30 günlük tam işlevsel ücretsiz deneme, filigran yok. |
| Ticari Destek & SLA | ✓ Yes iText sitesi, lisanslama modelinin bir parçası olarak ticari lisanslama + destek anlaşmalarını içerir. | ✓ 24/5 Support Garantili SLA ile özel mühendislik desteği — e-posta, canlı sohbet, telefon. |
| Dokümantasyon | ✓ Yes Kurulum kılavuzları, bilgi tabanı makaleleri ve API referansları (çekirdek + eklentiler). | ✓ Extensive Tam API referansı, 100+ nasıl yapılır, öğreticiler, kod örnekleri, sorun giderme, videolar. |
Resmi iText belgelerinden, PDF Derneği listesinden ve NuGet paket referanslarından alınan veriler.
iText güçlüdür ancak AGPL lisanslama karmaşıklığı ve çoklu paket kurulum yükü taşır.
IronPDF daha basit bir kurulumla tam kapsama sağlar — 30
gün boyunca ücretsiz deneyin.
PDF, Adobe Acrobat Reader tarafından oluşturulan taşınabilir bir belge formatıdır ve dijital bilgileri internet üzerinden paylaşmak için yaygın olarak kullanılır. Veri formatlarını korur ve güvenlik izinleri ayarlama ve parola koruması gibi özellikler sunar. Bir C# geliştiricisi olarak, yazılım uygulamanıza PDF işlevselliğini entegre etmenizin gerektiği durumlarla karşılaşmış olabilirsiniz. Sıfırdan oluşturmak zaman alıcı ve sıkıcı bir görev olabilir. Bu nedenle, uygulamanın performansı, etkinliği ve verimliliği göz önüne alındığında, sıfırdan yeni bir hizmet oluşturma ve önceden oluşturulmuş bir kütüphaneyi kullanma arasındaki denge önemlidir.
C# için çeşitli PDF kütüphaneleri mevcuttur. Bu makalede, C#'ta PDF belgelerini okumak için en popüler iki PDF kütüphanesini inceleyeceğiz.
iText yazılımı
iText, eski adıyla iText Core, .NET C# ve Java'da PDF belgeleri programlamak için bir PDF kütüphanesidir. Açık kaynak lisansı (AGPL) olarak mevcuttur ve ticari uygulamalar için lisanslanabilir.
iText Core, çeşitli yollarla PDF'ler oluşturmayı ve düzenlemeyi kolaylaştıran yüksek seviyede bir API sağlar. iText Core ile PDF dosyalarını ayırabilir, birleştirebilir, not ekleyebilir, formları doldurabilir, dijital imza atabilir ve çok daha fazlasını yapabilirsiniz. iText HTML'den PDF'ye dönüştürücü sağlar.
IronPDF
IronPDF hakkında daha fazla bilgi edin .NET ve .NET Framework C# ve Java API'dir ve HTML, CSS ve JavaScript'ten, ister bir URL'den, HTML dosyalarından ya da HTML dizelerinden PDF belgeleri üretmek için kullanılır. IronPDF, var olan PDF dosyalarını bölebilir, birleştirebilir, açıklamalar ekleyebilir, dijital olarak imzalayabilir ve çok daha fazlasını yapmanızı sağlar.
IronPDF, PDF dosyalarını oluşturarak, okuyarak ve düzenleyerek 50+ özellik ile zenginleştirilmiştir. Adobe Acrobat Reader ile yüksek kalitede, piksel mükemmelliğinde profesyonel PDF dosyaları sunmanız gerektiğinde hız, kullanım kolaylığı ve doğruluğa öncelik verir. API, iyi belgelenmiştir ve birçok örnek kaynak kodu kod örnekleri sayfasında bulunabilir.
Konsol Uygulaması Oluşturma
Başlamak için Visual Studio 2022 IDE kullanarak bir uygulama oluşturacağız. Visual Studio, C# geliştirme için resmi IDE'dir ve yüklenmiş olması gerekmektedir. Eğer kurulu değilse, Microsoft Visual Studio web sitesinden indirebilirsiniz.
Aşağıdaki adımlar "DemoApp" adlı yeni bir proje oluşturacak.
-
Visual Studio'yu açın ve "Yeni Proje Oluştur" üzerine tıklayın.

-
"Konsol Uygulaması" seçeneğini seçin ve "Sonraki"ye tıklayın.

-
Projenin adını belirleyin.

-
.NET sürümünü seçin. Kararlı sürüm .NET 6.0'ı seçin.

IronPDF Kütüphanesini Yükleyin
Proje oluşturulduktan sonra, projede IronPDF kütüphanesinin kullanımı için yüklenmesi gerekmektedir. Bunu yüklemek için şu adımları izleyin.
-
Çözüm gezgininden veya Araçlar'dan NuGet Paket Yöneticisi'ni açın.

-
IronPDF Kütüphanesini arayın ve mevcut proje için seçin. Yükle'ye tıklayın.

Program.cs dosyasının en üstüne aşağıdaki ad alanını ekleyin:
using IronPdf;Imports IronPdfiText Kütüphanesini Yükleme
Proje oluşturulduktan sonra, iText kütüphanesi kullanmak için projeye yüklenmelidir. Yüklemek için adımları takip edin.
-
Çözüm gezgininden veya Araçlar'dan NuGet Paket Yöneticisi'ni açın.

-
iText Kütüphanesi için tarama yapın ve geçerli proje için seçin. Yükleme tıklayın.

Program.cs dosyasının en üstüne aşağıdaki ad alanlarını ekleyin:
using iText.Kernel.Pdf.Canvas.Parser.Listener;
using iText.Kernel.Pdf.Canvas.Parser;
using iText.Kernel.Pdf;Imports iText.Kernel.Pdf.Canvas.Parser.Listener
Imports iText.Kernel.Pdf.Canvas.Parser
Imports iText.Kernel.PdfPDF dosyalarını açma
Metin çıkarmak için şu PDF dosyasını kullanacağız. İki sayfalık bir PDF belgesidir.

iText kütüphanesini kullanarak
iText kütüphanesi kullanarak bir PDF dosyasını açmak iki aşamalı bir süreçtir. İlk olarak, bir PdfReader nesnesi oluşturup dosya konumunu bir parametre olarak geçiriyoruz. Sonra yeni bir PDF belgesi oluşturmak için PdfDocument sınıfını kullanıyoruz. Kod şöyle devam ediyor:
// Initialize a reader instance by specifying the path of the PDF file
PdfReader pdfReader = new PdfReader("sample.pdf");
// Initialize a document instance using the PdfReader
PdfDocument pdfDoc = new PdfDocument(pdfReader);' Initialize a reader instance by specifying the path of the PDF file
Dim pdfReader As New PdfReader("sample.pdf")
' Initialize a document instance using the PdfReader
Dim pdfDoc As New PdfDocument(pdfReader)IronPDF Kullanarak
IronPDF kullanarak PDF dosyalarını açmak kolaydır. Herhangi bir dosya konumundan PDF'leri açmak için PdfDocument sınıfının FromFile metodunu kullanın. Aşağıdaki tek satırlık kod, verileri okumak için bir PDF dosyasını açar:
// Open a PDF file using IronPDF and create a PdfDocument instance
var pdf = PdfDocument.FromFile("sample.pdf");' Open a PDF file using IronPDF and create a PdfDocument instance
Dim pdf = PdfDocument.FromFile("sample.pdf")PDF dosyalarından veri okuma
iText kütüphanesini kullanarak
iText kütüphanesinde PDF verilerini okumak o kadar basit değil. PDF belgesinin her sayfasından metin çıkarmak için manuel olarak her sayfadan geçmek zorundayız. Yukarıdaki kaynak kodu ile PDF belgesinden sayfa sayfa metin çıkarmak için yardımcı olur:
// Iterate through each page and extract text
for (int page = 1; page <= pdfDoc.GetNumberOfPages(); page++)
{
// Define the text extraction strategy
ITextExtractionStrategy strategy = new SimpleTextExtractionStrategy();
// Extract text from the current page using the strategy
string pageContent = PdfTextExtractor.GetTextFromPage(pdfDoc.GetPage(page), strategy);
// Output the extracted text to the console
Console.WriteLine(pageContent);
}
// Close document and reader to release resources
pdfDoc.Close();
pdfReader.Close();' Iterate through each page and extract text
For page As Integer = 1 To pdfDoc.GetNumberOfPages()
' Define the text extraction strategy
Dim strategy As ITextExtractionStrategy = New SimpleTextExtractionStrategy()
' Extract text from the current page using the strategy
Dim pageContent As String = PdfTextExtractor.GetTextFromPage(pdfDoc.GetPage(page), strategy)
' Output the extracted text to the console
Console.WriteLine(pageContent)
Next
' Close document and reader to release resources
pdfDoc.Close()
pdfReader.Close()Yukarıdaki kodda çok şey oluyor. Öncelikle, Metin Çıkartma Stratejisini ilan ediyor ve sonra metni okumak için PdfExtractor sınıfının GetTextFromPage metodunu kullanıyoruz. Bu yöntem iki parametre kabul eder: ilki PDF belgesinin sayfası ve ikincisi stratejidir. PDF belgesi sayfasını almak için PdfDocument örneğini kullanarak GetPage metodunu çağırın ve sayfa numarasını bir parametre olarak geçirin. Çıkış bir dizi olarak geri döner, ardından konsol çıkış ekranında görüntülenir. Son olarak, PDFReader ve PdfDocument nesneleri kapatılır. iText kullanarak PDF'den metin çıkartma hakkında aşağıdaki kod örneğine de bakın.
Çıktı

IronPDF Kullanarak
Aynı şekilde, PDF dosyasını açmanın bir satırlık kod olduğu gibi, bir PDF dosyasından metin okumak da tek satırlık bir işlemdir. PDFDocument sınıfı PDF'den tüm içeriği okumayı sağlamak için ExtractAllText metodunu sağlar. Console.WriteLine metni ekrana yazdırmak için kullanılır. Kod şu şekildedir:
// Extract all text from the PDF document
string text = pdf.ExtractAllText();
// Display the extracted text
Console.WriteLine(text);' Extract all text from the PDF document
Dim text As String = pdf.ExtractAllText()
' Display the extracted text
Console.WriteLine(text)Çıktı

Çıkış doğru ve hatasızdır. Ancak, ExtractAllText metodunu kullanmak için, lisansınız olması gerekir çünkü yalnızca üretim modunda çalışır. IronPDF deneme lisans sayfasından 30 günlük deneme lisans anahtarınızı alabilirsiniz.
Karşılaştırma
Karşılaştırıldığında, her iki kütüphane de bir PDF belgesinden metin çıkartırken doğru sonuçlar üretir. Metin çıkartma doğruluğu söz konusu olduğunda karşılaştırılabilirler. Ancak, IronPDF kod okunabilirliği ve geliştirici ergonomisi açısından daha etkilidir.
IronPDF, iText ile aynı işi başarmak için sadece iki satır kod alır. Kutu içinden metin çıkartma yöntemleri sağladığı için ekstra bir mantık uygulanmasına gerek yoktur. iText kodu biraz karmaşıktır ve PDF belgesi açılırken oluşturulan iki örneği kapatmanız gerekir. Buna karşın, IronPDF görev tamamlandığında belleği otomatik olarak temizler.
Özet
Bu makalede, C#'ta iText kütüphanesini kullanarak PDF belgelerini nasıl okuyacağız ve ardından IronPDF ile karşılaştırdık. Her iki kütüphane de doğru sonuçlar verir ve PDF belgeleri üzerinde çalışmak için birçok PDF manipülasyon yöntemi sağlar. Bu kütüphanelerin her ikisini kullanarak PDF dosyalarını oluşturabilir, düzenleyebilir ve veri okuyabilirsiniz.
iText açık kaynaktır ve kullanımı ücretsizdir ancak kısıtlamaları vardır. Ticari kullanım için lisanslanabilir. IronPDF de kullanımı ücretsizdir ve 30 günlük ücretsiz deneme süresiyle ticari faaliyetler için lisanslanabilir.

Curtis Chau, Bilgisayar Bilimleri alanında Lisans Derecesine (Carleton Üniversitesi) sahip ve Node.js, TypeScript, JavaScript ve React konularında uzmanlaşmış ön uç geliştirmeyle ilgileniyor. Sezgisel ve estetik açıdan hoş kullanıcı arayüzleri oluşturma tutkunu, Curtis modern çerçevelerle çalışmayı ve iyi yapılandırılmış, görsel olarak çekici kılavuzlar oluşturmayı seviyor.
İlgili Makaleler


