IRONSOFTWAREHOME

Sıkışık Tablolardan Sıradışı Metin Çıkartma

Curtis Chau
Curtis Chau
Updated: 10 Haziran 2026

Sıkışık tablo veya form düzenlerinden çıkarılan metin karışık olarak görünür. Yan yana sıralardan karakterler iç içe geçer, örneğin, "Benzersiz Numara 123456789" "U123456789nique Number" olarak çıkarılır.

Bu, yoğun yerleştirilmiş düzenler için page.Lines çıkarımının bilinen bir sınırlamasıdır. page.Lines, yerleşik ve yapılandırılamayan dikey tolerans kullanarak karakterleri gruplar. Bir tablo hücresindeki iki görünür satır arasında sadece bir veya iki nokta mesafe olduğunda, gruplandırıcı her iki satırı bir mantıksal satıra çökertir ve karakterleri soldan sağa sıralayarak iç içe geçirir. ExtractTextFromPage(i) yöntemi varsayılan olarak içerik akış sırasına göredir, bu da form PDF'lerinde görsel okuma sırasıyla eşleşmeyebilir.

Çözüm

Tavsiye Edilen: Ayarlanabilir tolerans ile TextChunks kullanarak çıkarma

Her TextChunk, dikey pozisyona göre gruplamaya ve her satırda yatay pozisyona göre sıralamaya izin veren BoundingBox açığa çıkarır:

using IronPdf.Pages;
using System.Text;

static string ExtractTextUsingTextChunks(IPdfPage page, double rowTolerance = 2.0)
{
    var rows = page.TextChunks
        .Where(c => !string.IsNullOrWhiteSpace(c.Contents))
        .GroupBy(c => Math.Round(c.BoundingBox.Top / rowTolerance) * rowTolerance)
        .OrderByDescending(g => g.Key);

    var extractedText = new StringBuilder();
    foreach (var row in rows)
    {
        var line = string.Join(" ",
            row.OrderBy(c => c.BoundingBox.Left)
               .Select(c => c.Contents.Trim())
               .Where(text => !string.IsNullOrWhiteSpace(text)));
        extractedText.AppendLine(line);
    }
    return extractedText.ToString();
}

rowTolerance = 2.0 ile başlayın. Satırlar hala birleşiyorsa, onu 1.0 veya 0.5 olarak düşürün. Daha hassas kontrol için, page.TextChunks yerine page.Characters ikame edin.

Alternatif: Görsel sıra ile çıkarma

Sadece içerik akışı sırası yanlış olan PDF'ler için:

pdf.ExtractTextFromPage(i, TextExtractionOrder.VisualOrder);

Satırların görsel olarak birbirine çok yakın olduğu PDF'ler için, TextChunks yaklaşımı dar toleransları daha iyi yönetir.

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 20,878,335Sürüm:2026.9yeni yayınlandı

Ü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 IronPdf
nuget.org/packages/IronPdf/
  1. Çözüm Gezgini'nde Referanslar'a sağ tıklayın, NuGet Paketlerini Yönet
  2. Tarayıcıya tıklayın ve "IronPdf" arayın
  3. Paketi seçin ve yükleyin
C# PDF DLL
DLL İndir

Sürüm: 2026.9

veya Windows Yükleyiciyi şuradan buradan indirin.

  1. IronPDF'i, ~/Libs gibi bir yere, Solution dizininiz içinde indirin ve açın.
  2. Visual Studio Çözüm Gezgini'nde, Referanslar'a sağ tıklayın. Tarayıcı sekmesini seçin, "IronPdf.dll"

Lisanslar $999

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
Ücretsiz Canlı Demo rezervasyonu yapın
Booking Badge

Dünya Çapında Milyonlarca Mühendisin Güvendiği

Iron Software müşteri logoları
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