Maison > développement back-end > C++ > Comment puis-je extraire du texte non anglais à partir de PDF à l'aide d'iTextSharp en C# sans sortie tronquée ?

Comment puis-je extraire du texte non anglais à partir de PDF à l'aide d'iTextSharp en C# sans sortie tronquée ?

DDD
Libérer: 2025-01-11 06:36:41
original
673 Les gens l'ont consulté

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

Utilisez iTextSharp pour lire du contenu PDF dans une autre langue que l'anglais

Lors de l'utilisation d'iTextSharp en C# pour extraire du texte à partir de documents PDF, les utilisateurs peuvent rencontrer des problèmes si le contenu est dans une langue autre que l'anglais (comme le farsi ou l'arabe). Cela peut entraîner un texte tronqué car les méthodes de codage intégrées ne peuvent pas gérer ces jeux de caractères.

Pour résoudre ce problème, veillez à éviter d'effectuer des conversions d'encodage inutiles sur le texte obtenu à partir d'un PDF. Dans iTextSharp, la méthode PdfTextExtractor.GetTextFromPage() extrait le texte brut d'une page PDF. La conversion vers Unicode doit être effectuée ultérieurement de manière contrôlée.

L'extrait de code fourni tente d'utiliser Encoding.UTF8 pour réencoder le texte, ce qui est une mauvaise approche. L'extrait de code simplifié suivant illustre l'approche correcte :

<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>
Copier après la connexion

Veuillez noter qu'il est important de vous assurer que votre application utilise la dernière version d'iTextSharp. Les anciennes versions peuvent avoir des limitations dans la gestion des textes non anglais. De plus, l'application chargée d'afficher le texte extrait doit prendre en charge les caractères Unicode.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal