IRONSOFTWAREHOME

C# ile IronOCR Kullanarak PDF'leri Nasıl Okuyabilirim

Curtis Chau
Curtis Chau
Updated: 4 Haziran 2026

IronOCR, Tesseract tabanlı motoru aracılığıyla tüm PDF sürümlerini destekleyerek C#'ta tek satır kodla PDF dosyalarından metin çıkarmanızı sağlar.

PDF, 'Portable Document Format' (Taşınabilir Belge Formatı) anlamına gelir. Adobe tarafından geliştirilen ve herhangi bir kaynak belgenin yazı tiplerini, görüntülerini, grafiklerini ve düzenini oluşturmada kullanılan uygulamaya ve platforma bakılmaksızın koruyan bir dosya formatıdır. PDF dosyaları, kullanılan yazılım veya donanımdan bağımsız olarak belgeleri tutarlı bir formatta paylaşmak ve görüntülemek için genellikle kullanılır. IronOCR, eski PDF 1.0 spesifikasyonlarından en son PDF 2.0 standartlarına kadar çeşitli PDF belge sürümlerini işler.

Hızlı Başlangıç: Bir PDF Dosyasını Saniyeler İçinde OCR Yapalım

PDF'ye işaret eden bir OcrPdfInput oluşturarak IronOCR ile OCR'yi hızlıca yapılandırın, ardından Read çağırın. Bu örnek, IronOCR kullanarak bir PDF'den metin çıkarmayı gösterir.

  1. 1Install IronOCR with NuGet Package Manager

    PM > Install-Package IronOcr

  2. 2Bu kod parçacığını kopyalayın ve çalıştırın.

    using var result = new IronOcr.IronTesseract().Read(new IronOcr.OcrPdfInput("document.pdf", PdfContents.TextAndImages));
    C#
  3. 3Canlı ortamınızda test için dağıtım yapın

    Ücretsiz deneme ile bugün projenizde IronOCR kullanmaya başlayın
    arrow pointer

Tüm PDF Dosyası Nasıl Okunur?

OCR gerçekleştirmek için IronTesseract sınıfını başlatarak işe başlayın. Ardından, PDF dosya yolunu geçirerek bir OcrPdfInput nesnesi oluşturmak için 'using' ifadesini kullanın. Son olarak, Read yöntemiyle OCR gerçekleştirin. Bu yaklaşım, taranan PDF'ler (görüntü tabanlı) ve aranabilir PDF'ler (metin tabanlı) ile çalışarak çeşitli PDF türlerinden metin çıkarma için uygundur.

/* :path=/static-assets/ocr/content-code-examples/how-to/input-pdfs-read-pdf.cs */
using IronOcr;

// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();

// Add PDF
using var pdfInput = new OcrPdfInput("Potter.pdf");
// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(pdfInput);

// Access the extracted text
string extractedText = ocrResult.Text;
System.Console.WriteLine(extractedText);
Harry Potter metninin biçimlendirilmiş hali ve PDF metin çıkarımını gösteren düz metin çıktısı ile bölünmüş görünüm

Çoğu durumda, DPI özelliğini belirtmeye gerek yoktur. Ancak, OcrPdfInput oluşturulurken yüksek bir DPI numarası sağlamak okuma doğruluğunu artırabilir. Varsayılan DPI ayarı, çoğu standart PDF belgesi için genellikle yeterlidir, ancak özel belgeler ayarlamadan faydalanabilir.

DPI Ayarları Ne Zaman Ayarlanmalıdır?

DPI (Inç Başına Nokta) ayarları, düşük çözünürlüklü taramalı belgeler veya küçük metin içeren PDF'lerle uğraşırken kritik hale gelir. Optimum sonuçlar için, şu durumlarda DPI ayarlarını ayarlamayı düşünün:

  • 200 DPI altındaki taranmış belgelerle çalışmak
  • Tarihi veya arşiv PDF'leri işleme
  • Karmaşık düzenler veya küçük yazı tipleriyle uğraşmak
  • Varsayılan ayarlarla doğruluk sorunlarıyla karşılaşmak

Çoğu OCR işlemi için 300 DPI önerilirken, çok küçük metin veya ayrıntılı belgeler için 600 DPI gerekebilir.

IronOCR'un PDF dışında desteklediği dosya formatları nelerdir?

IronOCR, PDF'lerin ötesinde birçok dosya formatı için kapsamlı destek sunar. Çeşitli formatlarda görüntü işleyebilirsiniz:

  • Standart fotoğraflar için JPEG/JPG
  • Şeffaf görüntüler için PNG
  • Çok sayfalı belgeler için TIFF
  • Sıkıştırılmamış görüntüler için BMP
  • Basit grafikler için GIF

Ayrıca, IronOCR PDF akışlarını doğrudan bellekten işleyebilir, web uygulamaları ve bulut hizmetleri için uygundur.

PDF İçerik Türleriyle Çalışmak

PDF'leri işlerken içerik türünü belirterek performansı optimize edebilirsiniz. PdfContents enum, belirli içeriği hedeflemenizi sağlar:

// For text-only PDFs (faster processing)
var textOnlyPdf = new OcrPdfInput("document.pdf", PdfContents.Text);

// For image-only PDFs (scanned documents)
var imageOnlyPdf = new OcrPdfInput("scanned.pdf", PdfContents.Images);

// For mixed content (default)
var mixedPdf = new OcrPdfInput("mixed.pdf", PdfContents.TextAndImages);

Bir PDF'den Belirli Sayfalar Nasıl Okunur?

Bir PDF belgesinden belirli sayfaları okurken, içe aktarma için sayfa dizin numarasını belirtin. Bunu yapmak için, OcrPdfInput oluştururken PageIndices parametresine sayfa indeks listesini geçirin. Sayfa dizinlerinin sıfır tabanlı numaralandırma kullandığını unutmayın. Bu özellik, sadece belirli sayfaların ilgili bilgileri içeren büyük belgelerle çalışırken özellikle faydalıdır.

using IronOcr;
using System.Collections.Generic;

// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();

// Create page indices list
List<int> pageIndices = new List<int>() { 0, 2 };

// Add PDF
using var pdfInput = new OcrPdfInput("Potter.pdf", PageIndices: pageIndices);
// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(pdfInput);

Sayfa numaralandırması neden sıfırdan başlar?

Sıfır tabanlı indeksleme, C# ve çoğu programlama dilinde standart bir gelenektir. Bu, ilk sayfanın indeks 0, ikinci sayfanın indeks 1 olduğu anlamına gelir, ve böyle devam eder. Dizi indekslemesiyle olan bu tutarlılık, geliştiricilerin sayfa koleksiyonlarıyla programatik olarak daha kolay çalışmasını sağlar. İnsan okuyucusu sayfa numaralarını (1, 2, 3...) indekslere çevirirken, sadece bir çıkarma yaparak bunu yapabilirsiniz.

Ardışık olmayan sayfaları nasıl okuyabilirim?

IronOCR ile ardışık olmayan sayfaları okumak son derece basittir. Sadece istediğiniz sayfa dizinlerini listede her hangi bir sıra ile ekleyin. Örneğin:

// Read pages 1, 3, 5, and 10 (using zero-based indices)
List<int> pageIndices = new List<int>() { 0, 2, 4, 9 };

// Or use LINQ for range-based selection
var evenPages = Enumerable.Range(0, 10).Where(x => x % 2 == 0).ToList();

OCR motoru yalnızca belirtilen sayfaları işler, bu da büyük belgeler için performansı önemli ölçüde artırır.

Geçersiz Sayfa Numaraları Belirtirsem Ne Olur?

Eğer belgenin sayfa sayısını aşan sayfa dizinleri belirtirseniz, IronOCR bir istisna atar. İşleme başlamadan önce geçerli indekslere sahip olduğunuzdan emin olmak adına hata yönetimi uygulayın veya sayfa sayılarını doğrulayın. İndekslerinizin geçerli olduğundan emin olmak için OCR çalıştırmadan önce bir PDF'nin toplam sayfa sayısını kontrol edebilirsiniz.

Bir PDF'nin Belirli Bölgesi Nasıl OCR Yapılır?

Okunacak alanı daraltarak okuma verimliliğini önemli ölçüde artırabilirsiniz. Bunu başarmak için, okunması gereken içe aktarılan PDF'nin tam bölgesini belirtin. Aşağıdaki kod örneğinde, IronOCR sadece bölüm numarasını ve başlığını çıkarmaya odaklanır. Bu teknik, görüntüler için OCR bölgeleri tanımlamaya benzer olup, hem hız hem de doğruluğu artırır.

using IronOcr;
using IronSoftware.Drawing;
using System;

// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();

// Specify crop regions
Rectangle[] scanRegions = { new Rectangle(550, 100, 600, 300) };

// Add PDF
using (var pdfInput = new OcrPdfInput("Potter.pdf", ContentAreas: scanRegions))
{
    // Perform OCR
    OcrResult ocrResult = ocrTesseract.Read(pdfInput);

    // Output the result to console
    Console.WriteLine(ocrResult.Text);
}

Doğru Dikdörtgen Koordinatlarını Nasıl Belirlerim?

OCR işlemi için bölüm başlığını seçen kırmızı dikdörtgenli PDF, Visual Studio konsolunda tamamlanmış yürütmeyi gösteriyor

Doğru koordinatları bulmak, PDF'nin koordinat sistemini anlamayı gerektirir. Rectangle yapıcısı dört parametre alır: X (yatay konum), Y (dikey konum), Width ve Height. Tüm ölçümler piksel cinsindendir. Cetvel özellikli PDF görüntüleyiciler veya hata ayıklama araçları gibi araçlar, tam koordinatları belirlemeye yardımcı olabilir. Alternatif olarak, seçim alanınızı iyileştirmek için küçük ayarlamalarla deneme yanılma yöntemi kullanın.

Daha kesin bölge tanımı için, işlenen alanları görselleştirmek üzere hata ayıklama için metin vurgulama özelliğini kullanabilirsiniz.

Tek Bir İşlemde Birden Fazla Bölge Belirtebilir miyim?

Evet, IronOCR bir OCR işleminde birden fazla bölgeyi destekler. Basitçe birden fazla Rectangle nesnesini dizinize ekleyin.

Rectangle[] scanRegions = { 
    new Rectangle(50, 50, 200, 100),    // Header region
    new Rectangle(50, 200, 500, 300),   // Main content region
    new Rectangle(50, 550, 200, 50)     // Footer region
};

Her bölge ayrı ayrı işlenecek ve sonuçlar belirlenen sırada birleştirilecektir.

Bölgeye Özel OCR'yi Tam Sayfa Yerine Kullanmanın Avantajları Nelerdir?

Bölgeye özel OCR, birkaç avantaj sunar:

  • Performans: Daha küçük alanların işlenmesi önemli ölçüde daha hızlıdır
  • Doğruluk: Belirli bölgelere odaklanmak, ilgisiz içerikten kaynaklanan gürültüyü azaltır
  • Yapı: Formlar ve tablolardan veriler daha güvenilir bir şekilde çıkarılır
  • Maliyet etkinliği: Daha az işlem süresi, daha düşük hesaplama maliyetleri demektir

Bu yaklaşım, verilerin öngörülebilir konumlarda göründüğü, fatura, form veya raporlar gibi yapılandırılmış belgelerle çalışırken özellikle değerlidir. Karmaşık belge yapıları için, belgelerdeki tabloları okuma konusunda uzmanlaşmış tablo çıkarma tekniklerini keşfedin.

Hangi Gelişmiş PDF OCR Özellikleri Mevcuttur?

IronOCR, temel metin çıkarmanın ötesinde PDF işlemesi için ek yetenekler sunar. Aranabilir PDF'ler oluşturabilirsiniz, taranmış belgelerden metin tabakası ekleyerek, orijinal düzeni korurken arama ve kopyalama sağlar. Kütüphane aynı zamanda büyük PDF koleksiyonlarını daha hızlı işlemek için çok iş parçacıklılığı desteği sağlar.

.NET uygulamalarında OCR ile başlamak isteyen geliştiriciler için basit OCR örneklerini incelemek, IronOCR'un yeteneklerini ve en iyi uygulamalarını anlamak için sağlam bir temel sunar.

Karmaşık PDF Senaryolarını Yönetmek

Zorlu PDF belgeleriyle uğraşırken, IronOCR bazı gelişmiş özellikler sunar:

  1. Görüntü Ön İşleme: Metin netliğini artırmak için görüntü filtreleri uygulayın
  2. Çoklu Diller: Belgelerdeki birden çok dili aynı anda işleyin
  3. Özel Yapılandırmalar: Belirli belge türleri için OCR ayarlarını ince ayarlayın
  4. Dışa Aktarma Seçenekleri: Aranabilir PDF'ler ve hOCR HTML dahil çeşitli formatlarda sonuçları kaydedin

Bu özellikler, IronOCR'yi kurumsal düzeyde PDF işleme gereksinimleri için kapsamlı bir çözüm haline getirir.

Sıkça Sorulan Sorular

C#'ta bir PDF dosyasından nasıl metin çıkarırım?

IronOCR kullanarak PDF dosyalarından bir satır kod ile metin çıkarabilirsiniz. Basitçe bir IronTesseract örneği oluşturun ve OcrPdfInput ile Read yöntemini kullanın: `using var result = new IronOcr.IronTesseract().Read(new IronOcr.OcrPdfInput("document.pdf", PdfContents.TextAndImages));`. IronOCR hem taranmış (görüntü tabanlı) PDF'leri hem de aranabilir (metin tabanlı) PDF'leri yönetir.

Metin çıkarımı için hangi PDF sürümleri desteklenir?

IronOCR, eski PDF 1.0 spesifikasyonlarından en son PDF 2.0 standartlarına kadar tüm PDF sürümlerini destekler. OCR motoru, hangi PDF sürümüyle çalıştığınızdan bağımsız olarak doğruluğu sağlamak için Tesseract teknolojisi üzerine inşa edilmiştir.

PDF'den yalnızca belirli sayfaları tüm belgenin yerine okuyabilir miyim?

Evet, IronOCR, bir PDF'den belirli sayfaları okumanıza olanak tanır. Belgeyi tümüyle işlemden geçirmek yerine, OcrPdfInput nesnesini kullanarak hangi sayfalardan metin çıkarılacağını belirtebilirsiniz. Bu özellik, büyük belgeler için OCR işlemini daha verimli hale getirir.

Bir PDF dosyasında OCR için minimal iş akışı nedir?

IronOCR ile minimal iş akışı 5 adımdan oluşur: 1) C# kütüphanesini indirin, 2) PDF belgenizi hazırlayın, 3) PDF dosya yolu ile bir OcrPdfInput nesnesi oluşturun, 4) OCR işlemi için Read yöntemini kullanın ve 5) İsteğe bağlı olarak seçici okuma için sayfa dizinlerini belirtin.

PDF OCR için DPI ayarlarını ne zaman ayarlamalıyım?

IronOCR'un varsayılan DPI ayarları çoğu standart PDF için iyi çalışır, ancak düşük çözünürlüklü taranmış belgelerle (200 DPI'nın altında) veya küçük metin içeren PDF'lerle çalışırken DPI ayarlarını ayarlamayı düşünmelisiniz. OcrPdfInput yapısında daha yüksek DPI ayarları, özel belgeler için okuma doğruluğunu önemli ölçüde artırabilir.

OCR motoru hem taranmış hem de aranabilir PDF'lerle çalışıyor mu?

Evet, IronOCR, hem taranmış PDF'leri (görüntü tabanlı) hem de aranabilir PDF'leri (metin tabanlı) etkili bir şekilde işler. Tesseract tabanlı motor, farklı PDF türlerini otomatik olarak yönettiğinden, farklı yaklaşımlar gerektirmeden çeşitli PDF formatlarından metin çıkarmak için çok yönlüdür.

What are the advantages of using region-specific OCR over full-page OCR?

Region-specific OCR improves performance by focusing on relevant areas, enhancing accuracy and reducing noise from irrelevant content. It is especially useful for forms and structured documents.

What advanced OCR features does IronOCR offer for PDFs?

IronOCR provides features such as creating searchable PDFs, multithreading for faster processing, image preprocessing, and support for multiple languages, catering to complex document processing needs.

How do you handle invalid page numbers in IronOCR?

If invalid page numbers are specified in IronOCR, it will throw an exception. It is recommended to implement error handling or verify page counts prior to processing.

Can IronOCR process non-consecutive pages from a PDF?

Yes, IronOCR can handle non-consecutive pages by specifying the desired page indices in a list. This allows for selective processing of pages in any order.

Curtis Chau
Teknik Yazar

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.

...
Daha Fazla Oku

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

Nuget Downloads 6,236,385Sürüm:2026.9yeni yayınlandı

ÜCRETSİZİNİZİ EDİNİN

30 günlük Deneme Anahtarınızı anında edinin.

bullet_checkedKredi kartı veya hesap oluşturma gerektirmez
bullet_testÜretimde Test
filigran olmadan
bullet_calendar30 gün tamamen
işlevsel ürün
bullet_supportDeneme sırasında teknik
24/5 destek
Ücretsiz 30 Günlük Deneme Anahtarınızı anında alın.
Kredi kartı veya hesap oluşturma gerektirmez
PDF için C# NuGet Kütüphanesi
NuGet ile yükleyin

Sürüm: 2026.9

PM > Install-Package IronOcr
nuget.org/packages/IronOcr/
  1. Çözüm Gezgini'nde Referanslar'a sağ tıklayın, NuGet Paketlerini Yönet
  2. "IronOCR" aratıp seçin
  3. Paketi seçin ve yükleyin
C# PDF DLL
DLL İndir

Sürüm: 2026.9

veya buradan Windows Yükleyicisini indirin.

  1. IronOCR'u ~/Libs gibi bir yere indirip sıkıştırmasını açın, Çözüm dizininizde
  2. Visual Studio Çözüm Gezgini'nde, Referanslar'a sağ tıklayın. Gözat'ı seçin, "IronOCR.dll"

$999'dan itibaren lisanslar

Key in blue circle

Ücretsiz 30 günlük Deneme Anahtarınızı anında edinin.

Your trial license will be sent to your email address

Herhangi bir sınırlama yoktur. %100 erişim. Kredi kartı gerekmez.

bullet_checkedKredi kartı veya hesap oluşturma gerektirmezHerhangi bir sınırlama yoktur. %100 erişim. Kredi kartı gerekmez.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Bağımsız Danışmanlık Alın
Aşağıdaki formu doldurun veya sales@ironsoftware.com adresine e-posta gönderin
Bilgileriniz daima gizli kalacaktır.
Dünya Çapında Milyonlarca Mühendisin Güvendiği
Iron Software müşteri logoları
Ücretsiz 30 Günlük Deneme Anahtarınızı anında alın.
Kredi kartı veya hesap oluşturma gerektirmez