wie können wir extrahieren von text aus pdf mit itextsharp mit Leerzeichen?

Bin ich mit dem folgenden Verfahren zu extrahieren pdf-text Zeile für Zeile. Aber das problem, dass es keine lese-Leerzeichen zwischen den Wörtern und zahlen. was könnte die Lösung für dieses ??

Ich will einfach nur das erstellen einer Liste von Strings, jeder string in der Liste Objekt hat einen text-Zeile aus der pdf, wie es in pdf einschließlich Leerzeichen.

public void readtextlinebyline(string filename)   {


        List<string> strlist = new List<string>();
        PdfReader reader = new PdfReader(filename);
        string text = string.Empty;
        for (int page = 1; page <= 1; page++)
        {

            text += PdfTextExtractor.GetTextFromPage(reader, page ,new LocationTextExtractionStrategy())+" ";

        }
        reader.Close();
        string[] words = text.Split('\n');
        foreach (string word in words)
        {
            strlist.Add(word);
        }

        foreach (string st in strlist)
        {
            Response.Write(st +"<br/>");
        }

   }

Habe ich versucht diese Methode durch änderung der Strategie zu SimpleTextExtractionStrategy als gut, aber es ist auch nicht für mich arbeiten.

Dieses Antwort auf "itext-java-pdf-Erstellung der Texte" soll der Veranschaulichung der Grund-und der Hinweis auf eine Lösung: Kopieren Sie den text extration-Strategie und optimieren Sie die internen Parameter, in deinem Fall die minimale Breite einer Lücke zu erkennen, wie ein Raum, renderInfo.getSingleSpaceWidth()/2f standardmäßig; die person, die fragte zurück, es habe bessere Ergebnisse mit renderInfo.getSingleSpaceWidth()/4f.
So bieten Sie eine Prämie, die Sie sicherlich unterliegen diesem problem. So, Ihr könnt Euch sicherlich Versorgung einer oder mehrerer Proben PDF-Dateien dienen als Testfälle für die vorgeschlagenen Lösungen. Der gegenwärtige Stand der Frage macht die Beantwortung Reine Vermutung.
Im sorry für die späte Antwort, meine Verbindung brach.Was ich nicht mag ist nicht Ihre Lösung (es funktioniert) - was ärgert mich ist, dass diese Lösung wahrscheinlich nicht zuverlässig. F. E: es funktioniert mit einer Datei, aber vielleicht auf eine andere Datei, die es erzeugen würde, zu viel Leerzeichen (Ursache das Dokument muss renderInfo.getSingleSpaceWidth()/2f oder eine total unterschiedliche Teiler). Ich habe nicht ein Beispiel für das, aber seine etwas könnte ich mir vorstellen, dass es passieren kann. Also bat ich um Antworten von einem "mehr" zuverlässige Quelle.
Leider ist Sie nicht leicht eine generische 100% zuverlässige Lösung. Manche Probleme machen es schwer, um es zu bekommen sind erwähnt in der Antwort, die ich darauf hingewiesen. Es kann wirklich schwer sein, zu unterscheiden zwischen kerning und eng Worte.
Yep, ich dachte so etwas wie, dass. Traurig, aber nicht änderbar. ich habe auch versucht, viele Dinge wie versuchen Sie, die Berechnung der spacesize basiert auf der schriftart usw, aber nichts funktioniert so gut wie Ihr bereits geschrieben-Lösung. Wenn Sie nach Ihrer Lösung wieder als answear kann ich dir die Ruf.

InformationsquelleAutor shailendra | 2013-05-06

Schreibe einen Kommentar