C# PDFSharp: Beispiele, wie der Streifen von text aus PDF?
Ich habe eine ziemlich einfache Aufgabe: ich muss eine PDF-Datei Lesen und Sie schreiben Ihre Bild Inhalte und ignorieren Sie seine text-Inhalte. So im wesentlichen ich brauche die Ergänzung "als text speichern".
Ideal, ich würde es vorziehen, um zu vermeiden jede Art von re-Komprimierung der Bild-Inhalte, aber wenn es nicht möglich ist, ist es auch ok.
Sind die Beispiele, wie es zu tun?
Dank!
InformationsquelleAutor I Z | 2012-03-06
Du musst angemeldet sein, um einen Kommentar abzugeben.
Extrahieren von text aus einer PDF-Datei mit PDFsharp ist nicht eine einfache Aufgabe.
Es wurde diskutiert, die vor kurzem in diesem thread:
https://stackoverflow.com/a/9161732/162529
InformationsquelleAutor Vive la déraison
Extrahieren von text aus einer PDF-Datei mit PdfSharp kann eigentlich sehr einfach sein, je nachdem, die Art des Dokuments und was Sie zu tun beabsichtigen. Wenn der text im Dokument als text, und nicht um ein Bild, und Sie kümmern sich nicht um die position oder das format, dann ist es ganz einfach. Dieser code wird der text von der ersten Seite in der PDF-Dateien arbeite ich mit:
doc.Pages.Count
gibt Ihnen die Gesamtzahl der Seiten, und Sie sind jeweils durch diedoc.Pages
array mit dem index. Ich empfehle, nicht mitforeach
und Linq hier, wie die Schnittstellen sind nicht gut umgesetzt. Der index ging inGetDictionary
ist für das PDF-Dokument element - dies kann variieren, je nachdem, wie die Dokumente produziert werden. Wenn Sie nicht bekommen, den text, den Sie suchen, versuchen Sie die Schleife durch alle Elemente.Den text, der dadurch entsteht, wird voll von verschiedenen PDF-Formatierung codes. Wenn alles, was Sie tun müssen ist, extrahieren strings, obwohl, können Sie finden, in denen Sie wollen mit Regex, oder jede andere geeignete string-Suche code. Wenn Sie brauchen, um zu tun, nichts mit der Formatierung oder Position, dann auf gut Glück - von dem, was ich sagen kann, du wirst es brauchen.
Ja, in einem Fall war es nicht klar genug - es ist sehr einfach zu extrahieren von bits von text für verschiedene Arten der Analyse in dieser Art und Weise. Es ist gar nicht so leicht zu machen, Einblick in die gesamte Formatierung der Seite und zeigt Sie auf dem Bildschirm oder das layout ändern.
Zeichnung der text "Hallo, Welt!" Aussehen kann
240.2734 427.6833 Td (Hello, World!) Tj
oder kann es Aussehen240.2734 427.6833 Td <002B0048004F004F0052000F0003003A00520055004F00470004> Tj
oder ein bisschen anders. Einfache Implementierungen arbeiten mit Dateien, aber nicht mit anderen Dateien.Ich bin mit PDF-sharp-Bibliothek.Es sagt der PdfReader Klasse nicht gefunden.Was könnte das problem sein? hier ist der link zu meiner Datei
[link]google.com
InformationsquelleAutor Mason
Beispiel PDFSharp Bibliotheken extrahieren von Bildern aus .pdf-Datei:
link
Bibliothek
EDIT:
Dann, wenn Sie möchten, zu extrahieren text vom Bild, das Sie haben, so verwenden Sie OCR-Bibliotheken.
Gibt es zwei gute OCRs tessnet und MODI
Link zu thread auf stack
Aber ich voll und ganz empfehlen MODI, die ich nun benutze. Einige Beispiel -@ codeproject.
EDIT 2 :
Wenn Sie nicht wollen, zu Lesen, extrahiert text aus Bildern, so schreiben Sie bitte ein neues PDF-Dokument und setzen Sie alle hinein. Für das schreiben von PDF-Dateien benutze ich MigraDoc. Es ist nicht schwer zu bedienen, dass die Bibliothek.
So wie ich das jetzt verstehe, Sie wollen, um text zu Lesen, aus Abbildungen und text aus pdf-Datei? Und lege Sie zusammen, wie, was?
PDF-Eingabedatei können Sie nur-Bild-oder Bild + text hinter dem Bild. Also muss ich an den Eingangs-und eine nur-Bild-PDF-out. In anderen Worten, ich möchte so exportieren Sie alle nicht-text-Komponenten der PDF-Eingabedatei in die Ausgabe-PDF-Datei und nicht export der text-Komponenten.
Also, wenn Sie wollen " alle Bilder exportieren von PDF verwenden Sie die PDFSharp (mit Beispiel aus meiner Antwort). Dann kannst du Sie in neue PDF-Datei mit MigraDoc zum Beispiel. Wird es die Antwort für deine Frage?
Die Bild-Extraktion-Beispiel extrahiert nur die "Bild" Bilder, die es nicht speichern jede Art der bildnerischen Darstellung des Textes. Dies ist der Grund, warum ich sagte, dass es schien nicht, haben alle Stücke, die ich brauche. Es scheint, dass das, was ich brauche, zu tun -- aber ich kann mich auch irren, da ich nur begrenzten Kenntnisse über das PDF-format ist sehr Komplex-ist, erstellen Sie ein Dokument-Objekt aus der ursprünglichen PDF-Datei und dann irgendwie entfernen oder ersetzen Sie Sie mit leeren text alle text-Objekte in dem Dokument. Allerdings brauche ich es, um es zu tun in einer solchen Weise, so dass ich bewahren, das Bild, Darstellung, text. Macht das Sinn?
InformationsquelleAutor Mariusz