Skenování knih pro tablety, čtečky a telefony se Scan Tailor

Tomáš Pinkas 3. 4. 2012

S nástupem elektronických čteček, tabletů, datových schránek a online úložišť dat se zvyšuje užitná hodnota elektronických dokumentů, často získaných skenováním. Ať už si je stáhneme z internetu nebo naskenujeme sami, jejich úprava je mnohdy nezbytná. V tom může výborně posloužit program Scan Tailor.

Mnoho lidí má dnes přístup ke skeneru. Například na naší univerzitě mají studenti zdarma k dispozici výkonný podnikový skener s možností ukládání na flash disk. Naskenování dvěstěstránkové knihy formátu A3 v kvalitě 600 DPI zabere přibližně 20 min. Výsledek má ovšem obvykle daleko k dokumentu vhodnému pro tisk či komfortnímu čtení na elektronickém zařízení. Ke zpracování takto získaných dat je určen program Scan Tailor. Scan Tailor je pokročilý nástroj, jehož zvládnutí ovšem může být poměrně zdlouhavé. Následující dvoudílný seriál by měl proces seznamování případnému zájemci urychlit.

V tomto díle dvoučlánkové minisérie popíši, jak připravit vstupní data pro Scan Tailor a jak je možné ještě vylepšit Scan Tailorem zpracovaný výstup. V příštím díle se seznámíme s ovládáním samotného Scan Tailoru.

Nejsem odborník na počítačovou grafiku ani na zpracování grafických dat. Článek vychází ze zkušeností, které jsem načerpal při převádění několika desítek knih do elektronické podoby. Je možné, že některé postupy, lze provést efektivněji, než jak je zde popisuji. Pokud nějaké vylepšení uvedete v diskusi pod článkem, splní tento seriál jeden z jeho hlavních záměrů. Také se předem omlouvám, použil-li jsem některé termíny (např. rozlišení, DPI nebo velikost) nepřesně — věřím, že smysl bude přesto pochopitelný.

Co je naším cílem

Nejprve si ukážeme, co můžeme očekávat.

[vstupni.pdf]: Příklad několika naskenovaných stran z mé oblíbené knihy, tak jak je vyprodukoval skener (skenoval jsem záměrně poněkud ledabyle, aby lépe vynikla práce Scan Tailoru).

[vystupni.pdf]: Verze upravená dále popisovaným postupem, přizpůsobená pro čtení na obrazovce. Testoval jsem na své čtečce PocketBook Pro 903 a v Linuxu, programem xpdf ze stejnojmenného balíku.

Příprava dat pro Scan Tailor

Začněme od úplného začátku — od skenování. Skener nastavuji vždy tak, aby skenoval v nejvyšší možné kvalitě, tj. aby při ukládání obrázků používal nejnižší kompresi a nejvyšší rozlišení (přesněji DPI). Velikost předlohy na skeneru nastavuji tak, aby spolehlivě pokryla zrcadlo textu rozevřené knihy. Vejde-li se rozevřená kniha na okno skeneru na výšku (tedy otočená o 90°), je výhodné skenovat knihu v této poloze — dráha skenovací hlavy je kratší a to urychlí celý proces. Výstup je možné obvykle směřovat do vícevrstvého TIFFu nebo do PDF. S TIFFem pořízeným naším univerzitním skenerem jsem měl problémy. Programy tiffsplit, imagemagick a gimp hlásily nekompatibilitu a jednotlivé vrstvy nedokázaly oddělit. Spokojil jsem se proto s PDF. Extrahování snímků z PDF provádím příkazem:

$ pdfimages -j soubor.pdf scan

z balíku poppler-utils.

Jsou-li obrázky ve formátu pbm, který Scan Tailor nepodporuje, převádím je programem convert z balíku imagemagick do formátu TIFF:

$ for i in *pbm; do convert $i -quality 100 ${i%.pbm}.tiff; done
$ rm *pbm

Pokud jsem při skenování nedodržel pořadí stránek, v tomto momentě soubory ručně uspořádám jejich přejmenováním. Dalším krokem je již spuštění Scan Tailoru, ale o tom až příště.

Vyrábíme PDF knihu

Výstupem Scan Tailoru je množina TIFF obrázků. Obvykle se jedná o jednotlivé strany skenované předlohy, ale mohou to být také obrázky dvoustran, pokud to bylo naším úmyslem.

Prvním krokem může být úprava barevnosti obrázků. Skenované snímky jsou mnohdy přesvícené a příkaz:

$ mogrify -auto-level *

vede k lepšímu výsledku. Především je to u nastavení volby „Equalize Illumination“ ve Scan Tailoru, kterou popíši v příštím díle. Ukázka obrázku před a po:

Stránka před úpravou barevnosti…

… a po ní.

Je-li předlohou kniha, časopis nebo jiný vícestránkový dokument, je výhodné seskupit stránky do souboru PDF. Vytvoření PDF provádím opět příkazem convert:

$ convert *tiff -density 72 vystup.pdf

Parametr -density akceptuje i reálná čísla. Volím ho podle toho, zda chci PDF číst na obrazovce nebo tisknout na papír.

Úprava dokumentu pro čtečku či tablet

Většinou výsledný soubor ukládám do své čtečky elektronických knih. Ta při nastavení zobrazení stránky 1:1 (zoom=100%) roztáhne předlohu tak, aby dokument vyplnil celou šířku, případně výšku obrazovky — tedy roztáhne dokument na celou obrazovku se zachováním poměru stran. Následně umí dokument zvětšovat nebo zmenšovat, ale pouze po 5% skocích. To není problém u PDF dokumentů obsahujících text s vektorovými fonty, ale u skenovaných dokumentů, jejichž stránky jsou tvořeny obrázky, to problém je, neboť dochází k deformaci textu.

Deformace textu při roztažení obrázku

Je proto potřeba, aby výsledné obrázky měly šířku nebo výšku stejnou jako rozlišení obrazovky. A jelikož Scan Tailor neumí nastavit velikost výstupních obrázků přesně podle zadaného rozlišení, pouze podle hodnoty DPI (to vede k tomu, že velikost výstupních obrázků se mění skokovitě), nedokážeme Scan Tailoru „říct“, aby připravil výstupní obrázky přesně pro naši čtečku.

Aby to bylo jasnější, uvedu konkrétní příklad. Nastavil-li jsem ve Scan Tailoru pro zvolenou stránku výstupní DPI na hodnotu 100, získaný TIFF měl rozlišení 686×945 bodů. Při hodnotě 101 DPI je to již 693×954 bodů. Nastavit tomuto konkrétnímu dokumentu výstupní velikost mezi uvedenými hodnotami ve Scan Tailoru nelze. Takže např. nedokážu u zvoleného dokumentu vytvořit přímo ve Scan Tailoru obrázek o šířce 690 bodů.

Řešení spočívá, jak jinak, v zmenšení obrázků příkazem mogrify:

$ mogrify -resize 828x1200 *tiff

Hodnota parametru -resize zde představuje rozlišení naší obrazovky.

Ještě malá poznámka: v případě, že by zařízení roztahovalo obrázky na celou obrazovku bez zachování poměru stran, bylo by potřeba přizpůsobit jak výšku tak šířku výsledných obrázků, aby nedošlo k deformaci. Pak lze k předchozímu přidat ještě jednu úpravu, roztažení plátna obrázku:

$ mogrify -extent "828x1200" -background white -gravity center *

Poslední úprava — již bez dalšího komentáře — která se může někdy hodit, je sloučení stran do dvojstran. K tomu slouží parametr append:

$ convert levastranka.tiff pravastranka.tiff +append dvojstranka.tiff

Máte-li v adresáři levé a pravé stránky pojmenované tak, že při jeho výpisu následuje pravá stránka vždy po odpovídající stránce levé, je možné spojit dvojice hromadně z příkazové řádky např. takto:

$ COUNT=-1; for i in *; do COUNT=$(($COUNT + 1)) ; if [ $((10#$COUNT % 2)) -eq 0 ] ; then LEVASTRANKA=$i; continue; else convert $LEVASTRANKA $i -quality 100 +append dvojstrana-${COUNT}.tiff ; fi; done

Příště

Dnes jsme si naskenovali a připravili data pro samotnou práci s programem Scan Tailor. Za týden si ukážeme, jak se s programem pracuje.

Našli jste v článku chybu?
DigiZone.cz: ČTÚ červenec: rušení trochu vzrostlo

ČTÚ červenec: rušení trochu vzrostlo

Podnikatel.cz: Novela zákoníku práce. Řeší homeworking

Novela zákoníku práce. Řeší homeworking

120na80.cz: V těhotenství nohy lehké jako pírko

V těhotenství nohy lehké jako pírko

DigiZone.cz: E! a zákulisí turné Mariah Carey

E! a zákulisí turné Mariah Carey

DigiZone.cz: Jetelín končí. Prima ho vyřadila

Jetelín končí. Prima ho vyřadila

Měšec.cz: Investiční pasti. Děláte to, co ostatní, ale proděláváte

Investiční pasti. Děláte to, co ostatní, ale proděláváte

Podnikatel.cz: Týká se vás EET? Chtějte od berňáku posudek

Týká se vás EET? Chtějte od berňáku posudek

Lupa.cz: Co najdete uvnitř kosmické sondy?

Co najdete uvnitř kosmické sondy?

Lupa.cz: Co vzal čas: internetové kavárny a herny

Co vzal čas: internetové kavárny a herny

Lupa.cz: Sdílíte veřejně běhání a jízdu na kole?

Sdílíte veřejně běhání a jízdu na kole?

Měšec.cz: Co s reklamací, když e-shop krachuje?

Co s reklamací, když e-shop krachuje?

Lupa.cz: Olympiáda zakázala GIFy. Moc to nepomáhá

Olympiáda zakázala GIFy. Moc to nepomáhá

Podnikatel.cz: Pozor na vykuky, imitují služby České pošty

Pozor na vykuky, imitují služby České pošty

Lupa.cz: Samořídicí taxíky jsou tu. Začíná s nimi Uber

Samořídicí taxíky jsou tu. Začíná s nimi Uber

120na80.cz: Kam umístit silikony?

Kam umístit silikony?

Lupa.cz: Blokátor reklam už vám na Facebooku nepomůže

Blokátor reklam už vám na Facebooku nepomůže

Vitalia.cz: Ženy, které milují příliš, jsou neštěstí

Ženy, které milují příliš, jsou neštěstí

Měšec.cz: Ceny PHM v Evropě. Finty na úspory

Ceny PHM v Evropě. Finty na úspory

Měšec.cz: TEST: Vyzkoušeli jsme pražské taxikáře

TEST: Vyzkoušeli jsme pražské taxikáře

Podnikatel.cz: Youtuber? Za 15 tisíc dělat nebude

Youtuber? Za 15 tisíc dělat nebude