2009-09-28 2 views
6

Ich habe eine Reihe von Bildern, über die ich eine OCR-Anwendung ausführen. Dieser Prozess führt zu einer XML-Datei mit Zeichenoffsets. Dann konvertiere ich die Bilder mit Acrobat 9 nach PDF. Nun möchte ich die XML-Dateiinformationen als unsichtbare Textebene in das PDF einfügen, um ein durchsuchbares PDF zu erhalten. Gibt es einen einfachen und kostenlosen Weg?Wie bette ich externe OCR in bestehende PDF ein?

Einige Details:

  • Ich will nicht Acrobat OCR-Funktionalität verwenden;

  • Die OCR-Prozess führt zu einer XML-Datei, die Elemente wie enthält:

    <line baseline="1049" l="158" t="1012" r="1196" b="1060">This is a sample line of text from an image</line>

Update: es möglich sein kann tun, was ich in einer anderen Art und Weise wollen. Angenommen, es gibt bereits eine PDF-Datei, die aus einer Reihe von Bildern generiert wurde und die bereits OCR-Text enthält. Wäre es möglich (vielleicht programmatisch), nur auf das Bild jeder Seite zuzugreifen, es zu verarbeiten (z. B. es in ein Monochrom umzuwandeln) und es zurück in die PDF-Datei zu speichern? Wenn ja, wäre der OCR-Text nicht verloren.

[Soll ich dieses Update in eine separate Frage?]

+0

Sie finden [hocr2pdf] (http://www.exactcode.com/site/open_source/exactimage/hocr2pdf/) nützlich –

Antwort

1

Für Ihre Follow-up-Frage über die Verarbeitung von PDF-Dateien ohne die versteckten Schichten zu verlieren: Ich glaube, Ghostscript ist in der Lage, dies zu tun. Zum Beispiel sollten Sie den folgenden Befehl ein PDF in Graustufen konvertieren:

gs -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -dColorConversionStrategy=/Gray -dProcessColorModel=/DeviceGray -sOutputFile=output.pdf input.pdf 
+0

Schön, es hat funktioniert. Aber die Ausgabe ist nicht so sauber wie ich es wollte. Wenn ImageMagick die PDF konvertieren könnte, ohne die Textebene zu verlieren, würde ich gerne jede Seite mit etwas wie: konvertieren \\ (-weiße-Schwelle 50% \\) -monochrome ... Vielleicht gibt es eine Möglichkeit zu erzählen IM, wie man GS benutzt, wie DaveParillo sagte. Ich werde später nachsehen. – kepler

-1

Wenn alles, was Sie tun möchten, ist eine bestehende pdf in Graustufen umwandeln, Imagemagick versuchen:

convert foo.pdf -colorspace Gray -compress zip gray.pdf 

ich nicht denke, das wird alle anderen Attribute in deinem PDF ändern.

+0

Dies gilt nicht scheinen die versteckte Textschicht in der PDF zu behalten. (Versucht mit ImageMagick 6.4.5.) –

+0

ungerade, weil imagemagick Ghostscript verwendet, um es Bildkonvertierung ... – DaveParillo

+0

Ich habe es auch versucht, und verlor auch die Textebene. Ich habe auch ImageMagick 6.4.5 verwendet. – kepler