DOCX'ten Metin Çıkart

Verilerin çoğu belgelerde, resimlerde ve web’de görsel metin olarak temsil edilir; dolayısıyla metin verilerinin çıkarılması bazen en çok ihtiyaç duyulan şeydir. Word veya PDF belgelerinden metin veya resim çıkarmanız gerekebilir. Bir C# geliştiricisi olarak belgelerden program aracılığıyla kolayca metin ayıklayabilirsiniz. Bu makalede, C# kullanarak DOC veya DOCX belgelerinden nasıl metin çıkarılacağını öğreneceksiniz.

Bu makalede aşağıdaki konular tartışılmaktadır/kapsanmaktadır:

Metin Çıkarma için C# API’si

DOCX belgelerinden metin çıkarmak için GroupDocs.Parser for .NET API’sini kullanacağım. Word, PDF, Excel ve Powerpoint gibi desteklenen dosya formatı belgelerinden metin, meta veri ve görsellerin çıkarılmasına olanak tanır. Ayrıca desteklenen formatlardaki dosyalardan ham, formatlanmış ve yapılandırılmış metinlerin yanı sıra meta verilerin çıkarılmasını da destekler.

API’nin DLL’sini indirebilir veya NuGet kullanarak yükleyebilirsiniz.

Install-Package GroupDocs.Parser

C# kullanarak DOCX’ten Metin Çıkarma

Aşağıda belirtilen basit adımları izleyerek herhangi bir belgeyi kolayca ayrıştırabilir ve metni çıkarabilirsiniz:

  • Parser sınıfının bir örneğini oluşturun
  • Dosya yolunu belirtin
  • Metni ayıklamak için Parser sınıfının GetText yöntemini çağırın
  • TextReader sınıfı nesnesindeki sonuçları alın
  • TextReader sınıfının ReadToEnd yöntemini çağırarak sonuçları gösterin

Aşağıdaki kod örneği, C# kullanarak DOCX dosyasından nasıl metin ayıklanacağını gösterir.

// Ayrıştırıcı sınıfının bir örneğini oluşturun
Parser parser = new Parser(@"C:\Files\sample.docx");

// Bir metni okuyucuya çıkarma
using (TextReader reader = parser.GetText())
{
    // Belgeden bir metin yazdırma
    // Metin çıkarma desteklenmiyorsa okuyucu boştur
    Console.WriteLine(reader == null ? "Text extraction isn't supported" : reader.ReadToEnd());
}
C# kullanarak DOCX'ten Metin Çıkarma

C# kullanarak DOCX’ten Metin Çıkarma

Parser sınıfı, ayrıştırma işlevselliğini ve metin ve görüntülerin çıkarılmasını sağlayan ana sınıftır. Giriş dosyası yolunu bu sınıfın yapıcı‘ünde belirttim.

Parser sınıfının GetText() yöntemi, belirtilen belgeden bir metin çıkarır.

C# kullanarak DOCX’ten Biçimlendirilmiş Metin Alın

Aşağıda belirtilen basit adımları izleyerek, stil formatını kaybetmeden Word belgesini kolayca ayrıştırabilir ve metni çıkarabilirsiniz:

  • Parser sınıfının bir örneğini oluşturun
  • Dosya yolunu belirtin
  • FormattedTextOptions‘ı tanımlayın
  • FormattedTextMode‘yı HTML olarak ayarlayın
  • Metni ayıklamak için Parser sınıfının GetFormattedText yöntemini çağırın
  • TextReader sınıfı nesnesindeki sonuçları alın
  • TextReader sınıfının ReadToEnd yöntemini çağırarak sonuçları gösterin

Aşağıdaki kod örneği, C# kullanarak DOCX dosyasından biçimlendirilmiş metnin nasıl çıkarılacağını gösterir.

// Ayrıştırıcı sınıfının bir örneğini oluşturun
Parser parser = new Parser(@"C:\Files\sample.docx");

// Biçimlendirilmiş bir metni okuyucuya çıkarma
using (TextReader reader = parser.GetFormattedText(new FormattedTextOptions(FormattedTextMode.Html)))
{
    // Belgeden biçimlendirilmiş bir metni yazdırma
    // Biçimlendirilmiş metin çıkarma desteklenmiyorsa okuyucu boştur
    Console.WriteLine(reader == null ? "Formatted text extraction isn't suppported" : reader.ReadToEnd());
}
C# kullanarak DOCX'ten Biçimlendirilmiş Metni Çıkarma

C# kullanarak DOCX’ten Biçimlendirilmiş Metni Çıkarma

FormattedTextOptions sınıfı, Mode çıkarma gibi biçimlendirilmiş metin çıkarma için kullanılan seçenekleri sağlar. Çıkarma modunu, bir belge metnini HTML olarak çıkaran HTML’ye ayarladım.

Parser sınıfının GetFormattedText() yöntemi, belirtilen belgeden biçimlendirilmiş bir metni çıkarır.

C# kullanarak Sayfalardan Biçimlendirilmiş Metni Çıkarma

Aşağıda belirtilen basit adımları izleyerek Word belgesini kolayca ayrıştırabilir ve belgenin belirli bir sayfasından biçimlendirilmiş metni çıkarabilirsiniz:

  • Parser sınıfının bir örneğini oluşturun
  • Dosya yolunu belirtin
  • FormattedText öğesinin doğru olup olmadığını kontrol edin
  • Sayfa sayısını öğrenmek için GetDocumentInfo‘u arayın
  • PageCount’nin sıfır olup olmadığını kontrol edin
  • FormattedTextOptions‘ı tanımlayın
  • FormattedTextMode‘yı HTML olarak ayarlayın
  • Metni ayıklamak amacıyla her sayfa dizini için GetFormattedText yöntemini çağırın
  • TextReader sınıfı nesnesindeki sonuçları alın
  • TextReader sınıfının ReadToEnd yöntemini çağırarak sonuçları gösterin

Aşağıdaki kod örneği, C# kullanarak biçimlendirilmiş metnin sayfalardan tek tek nasıl çıkarılacağını gösterir.

// Ayrıştırıcı sınıfının bir örneğini oluşturun
using (Parser parser = new Parser(@"C:\Files\sample.docx"))
{
    // Belgenin biçimlendirilmiş metin çıkarmayı destekleyip desteklemediğini kontrol edin
    if (!parser.Features.FormattedText)
    {
        Console.WriteLine("Document isn't supports formatted text extraction.");
        return;
    }

    // Belge bilgilerini alın
    IDocumentInfo documentInfo = parser.GetDocumentInfo();
    // Belgede sayfa olup olmadığını kontrol edin
    if (documentInfo.PageCount == 0)
    {
        Console.WriteLine("Document hasn't pages.");
        return;
    }

    // Sayfalar üzerinde yineleme
   for (int p = 0; p < documentInfo.PageCount; p++)
    {
        // Sayfa numarası yazdırma 
        Console.WriteLine(string.Format("Page {0}/{1}", p + 1, documentInfo.PageCount));
        // Biçimlendirilmiş bir metni okuyucuya çıkarma
        using (TextReader reader = parser.GetFormattedText(p, new FormattedTextOptions(FormattedTextMode.Html)))
        {
            // Belgeden biçimlendirilmiş bir metni yazdırma
            // Biçimlendirilmiş metin çıkarma özelliği desteğini daha önce kontrol ettiğimizden boş denetimini göz ardı ediyoruz
            Console.WriteLine(reader.ReadToEnd());
        }
    }
}
C# kullanarak Sayfalardan Biçimlendirilmiş Metni Çıkarma

C# kullanarak Sayfalardan Biçimlendirilmiş Metni Çıkarma

Ayrıştırıcı sınıfı, Features sınıfını temsil eden Features özelliğini sağlar. Belge için bir özelliğin desteklenip desteklenmediğini kontrol etmek için kullanılabilir. Desteklenen özellikler hakkında daha fazla bilgiyi “Desteklenen Özellikleri Alın" bölümünde okuyabilirsiniz.

Ücretsiz Lisans Alın

Ücretsiz bir geçici lisans talep ederek API’yi değerlendirme sınırlamaları olmadan deneyebilirsiniz.

Çözüm

Bu makalede, C# kullanarak Word belgelerinden nasıl metin çıkarılacağını öğrendiniz. Belgeleri kullanarak GroupDocs.Parser for .NET API hakkında daha fazla bilgi edinebilirsiniz. Herhangi bir belirsizlik durumunda lütfen forum üzerinden bizimle iletişime geçmekten çekinmeyin.

Ayrıca bakınız