2009-09-28 7 views
6

Mam zestaw obrazów, na których uruchamiam aplikację OCR. W wyniku tego procesu powstaje plik XML z przesunięciami znaków. Następnie konwertuję obrazy do formatu PDF za pomocą programu Acrobat 9. Teraz chciałbym dodać informacje o pliku XML jako niewidoczną warstwę tekstową do pliku PDF, aby uzyskać możliwy do wyszukania plik PDF. Czy istnieje łatwy i darmowy sposób?Jak osadzić zewnętrzny OCR w istniejącym pliku PDF?

Niektóre szczegóły:

  • Nie chcę korzystać z funkcjonalności OCR Acrobat jest;

  • OCR wyniki procesu w pliku XML, który zawiera elementy, takie jak:

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

Aktualizacja: możliwe jest robienie tego, co chcę w inny sposób. Przypuśćmy, że istnieje już plik PDF wygenerowany z zestawu obrazów, który zawiera już tekst OCRed. Czy byłoby możliwe (być może programowe) uzyskanie dostępu do obrazu każdej strony, przetworzenie go (np. Konwersja do postaci monochromatycznej) i zapisanie z powrotem do pliku PDF? Jeśli tak, to tekst OCRed nie zostanie utracony.

[Należy umieścić tę aktualizację w osobnym pytaniu?]

+0

można znaleźć [hocr2pdf] (http://www.exactcode.com/site/open_source/exactimage/hocr2pdf/) użyteczna –

Odpowiedz

1

Aby uzyskać dalsze informacje na temat przetwarzania plików PDF bez utraty ukrytych warstw: Wierzę, że Ghostscript jest w stanie to zrobić. Na przykład, następujące polecenie należy przekonwertować PDF do skali szarości:

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

Dobrze, zadziałało. Ale wyniki nie są tak czyste, jak chciałem. Jeśli ImageMagick mógłby przekonwertować plik PDF bez utraty warstwy tekstowej, chciałbym przetworzyć każdą stronę z czymś takim, jak: przekonwertować \\ ("biały próg 50% \\) -monochrom ... Może jest jakiś sposób opowiedzenia IM, jak korzystać z GS, jak powiedział DaveParillo. Sprawdzę to później. – kepler

-1

Jeśli wszystko, co chcesz zrobić, to przekształcić istniejący PDF do skali szarości, spróbuj Imagemagick:

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

nie wiem myślę, że to zmieni jakiekolwiek inne atrybuty w twoim pdf.

+0

To nie robi Wydaje się, że zachowuje ukrytą warstwę tekstową w pliku PDF. (Próbowałem z ImageMagick 6.4.5.) –

+0

dziwne, ponieważ imagemagick używa ghostscript do konwersji obrazu ... – DaveParillo

+0

Próbowałem również, a także straciłem warstwę tekstową. Użyłem też ImageMagick 6.4.5. – kepler