Po zeskanowaniu książki posiadamy masę plików, którą ciężko się przegląda. Korzystając z Basha oraz pakietu ImageMagick możemy w prosty sposób wygenerować książkę w formacie PDF. ImageMagick można korzystać z wiersza poleceń dlatego bardzo chętnie jest on wykorzystywany w językach skryptowych. Poprzez specjalne API dostępny jest również dla takich języków jak Perl, C, C++, Python oraz PHP.

Po zeskanowaniu kartek książki, warto będzie pliki wynikowe przekonwertować na format GIF. Format ten lepiej nadaje się do przechowywania tekstu oraz czarno-białej grafiki. Pliki ponad to będą posiadały mniejszy format.

Korzystając ze wcześniej poznanego polecenia convert, zmienimy pliki na bardziej przyjazne.

for plik in *.jpg
do
	convert $plik -colors 2 -normalize -monochrome $plik.gif
done

A na samym końcu wystarczy wydać polecenie convert *.gif ksiazka.pdf. Operacja w drugą stronę, czyli uzyskanie plików graficznych z pliku PDF jest również prosta. Posłuży nam do tego prosty skrypt:

for plik in *.pdf;
do
	convert -quality 100 $plik `echo $plik | sed -e 's/\.pdf/-%d\.jpg/g'`
done

W wyniku otrzymamy ponumerowane pliki JPG. Zawierać one będą w nazwie pliku numer strony.

Podobne artykuły

  • mazdac

    można też zapisać do tiff i przekonwertować tiff2pdf (z linii poleceń). Mam tak zrobiony "serwer skanów" generujący na żądanie pdf z zeskanowanych plików.

  • stv

    Jest też bardzo wygodny okienkowy gscan2pdf. Można w nim skanować , a także wczytać pliki graficzne (w tym wielostronicowe tiff) i konwertować do pdf. Można też w drugą stronę, otworzyć pdf i przekonwertować do plików graficznych.

  • Jeszcze GIMP potrafi otwierać pliki PDF jako obrazki.

  • Jackowóz

    Nie pwoiem. Ciekawie.

  • Greg

    Świetne! Własnie skoncyzlem skanowac od kumpla jedna książkę. Teraz zepnę to w PDFa i gitara! Dzieki!

  • Hehe, a pomyśleć, że ja zrobiłem specjalnie do tego skrypt, który tworzył plik html z obrazkami a potem przez khtml2pdf (czy jakoś tak) zmieniałem go w pdf:D

  • pipijojo

    Sane (okienkowe Xsane) posiada opcję zapisu do PDF, a pdftk wykorzystać można do połączenia pojedynczych plików. W przypadku książek o formacie większym niż A4 (wymiar standardowej "szyby" skanera) obrócić należy parzyste strony o 180 stopni przy pomocy pętli "for" i pdftk. Proste.

  • Greg

    I to właśnie lubię w Linuksie. Pełno rozwiązań jednego problemu.

  • Wygląda na to, że więcej osób ma rozwiązanie, niż problem:D

  • mkkot

    Świetne, dziękuję!

    Zamiast gifa proponuję jednak użyć monochromatycznego PNG… tak po prostu, kwestia wolności. A teraz narzekanie: w Windowsie z automatu tworzone jest OCR, a co nie udaje się rozpoznać, serwowane jest jako grafika. Rzecz o wiele lepiej dzięki temu się skaluje i można kopiować mniejsze fragmenty do edytora tekstowego. Ciekawe jak ten problem można tutaj rozwiązać… ale z jakością linuksowego OCR jest słabo niestety.

  • o_O

    Polecam opakowywać zmienne w cudzysłowy, bo można się kiedyś na tym przejechać, jak np. nazwa pliku będzie zawierać spacje.