Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah Saya Boleh Mengekstrak Teks Bukan Bahasa Inggeris daripada PDF Menggunakan iTextSharp dalam C# Tanpa Output Bercelaru?

Bagaimanakah Saya Boleh Mengekstrak Teks Bukan Bahasa Inggeris daripada PDF Menggunakan iTextSharp dalam C# Tanpa Output Bercelaru?

DDD
DDDasal
2025-01-11 06:36:41695semak imbas

How Can I Extract Non-English Text from PDFs Using iTextSharp in C# Without Garbled Output?

Gunakan iTextSharp untuk membaca kandungan PDF bukan bahasa Inggeris

Apabila menggunakan iTextSharp dalam C# untuk mengekstrak teks daripada dokumen PDF, pengguna mungkin menghadapi masalah jika kandungan dalam bahasa bukan Inggeris (seperti Farsi atau Arab). Ini boleh mengakibatkan teks bercelaru kerana kaedah pengekodan terbina dalam tidak dapat mengendalikan set aksara ini.

Untuk menyelesaikan isu ini, pastikan anda mengelak daripada melakukan sebarang penukaran pengekodan yang tidak perlu pada teks yang diperoleh daripada PDF. Dalam iTextSharp, kaedah PdfTextExtractor.GetTextFromPage() mengekstrak teks mentah daripada halaman PDF. Penukaran kepada Unicode hendaklah dikendalikan kemudian dengan cara terkawal.

Coretan kod yang disediakan cuba menggunakan Encoding.UTF8 untuk mengekod semula teks, yang merupakan pendekatan yang salah. Coretan kod ringkas berikut menggambarkan pendekatan yang betul:

<code class="language-csharp">public string ReadPdfFileWithoutEncoding(string fileName)
{
    StringBuilder text = new StringBuilder();

    if (File.Exists(fileName))
    {
        PdfReader pdfReader = new PdfReader(fileName);

        for (int page = 1; page <= pdfReader.NumberOfPages; page++)
        {
            text.Append(PdfTextExtractor.GetTextFromPage(pdfReader, page));
        }
        pdfReader.Close();
    }

    return text.ToString();
}</code>

Sila ambil perhatian bahawa adalah penting untuk memastikan aplikasi anda menggunakan versi terkini iTextSharp. Versi lama mungkin mempunyai had dalam mengendalikan teks bukan bahasa Inggeris. Selain itu, aplikasi yang bertanggungjawab untuk memaparkan teks yang diekstrak mesti menyokong aksara Unicode.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengekstrak Teks Bukan Bahasa Inggeris daripada PDF Menggunakan iTextSharp dalam C# Tanpa Output Bercelaru?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn