Tiu ĉi blogero celas priskribi paŝon post paŝo la bitigadon de esperanta periodaĵo pere de malfermitkoda programaro. La enbitigota gazeto estas la lasta numero de Amsterdama Pioniro, aperinta en junio-julio 1908.
Amsterdama Pioniro
Por tiu ĉi laboro mi uzos la sekvajn programojn: ImageMagick, Tesseract kaj Poppler.
La gazeto estis skanita de Carlos ĉe Biblioteko Molera kaj li havigis al mi 11 jpg-bilddosierojn. Krom la unua kaj la lasta, ĉiu dosiero enhavas du paĝojn. Ĉar la unua kaj la lasta paĝo estis skanitaj vertikale (plibonigota afero), mi pritraktos ilin aparte.
Du-paĝa bilddosiero en oblonga formato
Por pli konvene labori mi enmetos la bilddosierojn en apartan dosierujon kaj eniros tiun dosierujon. La unua paŝo estas forigi la blankan parton malsupre de la paĝo. Mi uzas operaton -chop. Eblas uzi ankaŭ la operatoron -crop.
convert Scan*.jpg -gravity south -chop 0x228 -density 200 pg_a_%03d.jpg
Klarigoj: Scan*.jpg estas ĉiuj skanitaj dosieroj. 228px estas la blanka spaco malsupre de la paĝo. Pro tio oni devas uzi la parametron -gravity south. Se la spaco estus en la dekstra parto, uzendus -gravity west. La parametro -density 200 devigas la distingivon al 200 px. La celdosieroj nomiĝos pg_a_001.jpg, pg_a_002.jpg, pg_a_003.jpg, ktp. La parto %03d devigas, ke la sinsekva numerado de la lasta parto de la dosiernomo enhavu 3 ciferojn. Tio gravas, ni poste vidos, por la ordigo de paĝoj. Memorendas, ke pg_a_11.jpg antaŭas al pg_a_3.jpg, ekzemple. Tamen pg_a_003.jpg antaŭas al pg_a_011.jpg. Do, oni devas pensi pri la komputila alfabetordo. Pliaj klarigoj pri operatoro -chop de convert (anglalingve)
Blanka spaco forigita
Dua paŝo estas tranĉi la duoblajn paĝojn. Mi denove uzos la komandlinian parametron -chop de convert. Mi uzos du komandliniojn por havigi la du celdosierojn.
convert pg_a*.jpg -gravity south -chop 0x1069 -density 200 pg_b_%03d_b.jpg
convert pg_a*.jpg -gravity north -chop 0x1069 -density 200 pg_b_%03d_a.jpg
Klarigoj: La unua komandlinio forigos la malsupran duonon de ĉiu paĝo (-gravity south). Do, la rezulto estos paĝoj nomitaj pg_b_000_b.jpg, pg_b_001_b.jpg, ktp. pg_b_000_b.jpg enhavos paĝon 3, pg_b_001_b.jpg enhavos paĝon 5, ktp. Mi enmetas aldonon b al la dosiernomoj por neparaj paĝoj kaj a al la dosiernomoj por paraj paĝoj; denove por ordigaj kialoj, ĉar ĉiu nepara paĝo estis en la supra parto de la ankoraŭ ne tranĉita paĝo kaj ĉiu para en la malsupra.
Tranĉitaj paĝoj
Tria paŝo estas dekstrenturni ĉiujn paĝojn. Mi uzos la operatoron -rotate
convert pg_b*.jpg -rotate 90 pg_c_%03d_c.jpg
Vertikalaj paĝoj
Mi havas nun dosierojn pg_c_000_c.jpg, pg_c_001_c.jpg...pg_c_017_c.jpg. Ĉi foje mi devas aldoni la unuan kaj lastan paĝojn simile tranĉitajn. Mi uzos la nomon pg_c_000_ac.jpg por la unua paĝo kaj pg_c_018_c.jpg por la lasta.
Jam estas tempo por signorekoni ĉiujn bilddosierojn. Mi uzos denove Tesseract. Jen la komandlinio:
for i in pg_c_*.jpeg; do echo $i; tesseract -l epo+nld $i $(basename $i .jpg) pdf; done
Pliaj klarigoj pri Tesseract legeblas en mia antaŭa blogero.
Kaj finfine mi kunigas ĉiujn unupaĝajn PDF-dosierojn per komandlinio:
pdfunite *.pdf amsterdamapioniro.pdf
Tiu ĉi lasta komandlinio uzas programo Poppler. Klarigoj ankaŭ en mia antaŭa blogero.
Jes, ĉio ŝajnas iom malfacila por kunigi PDF-dosieron, sed eblas fari ĉion aŭtomate per nur unu ordo. Por tio mi pretigis tiun automatigilon. Por malsamaj periodaĵoj sufiĉos iomete ŝanĝi kelkajn valorojn laŭ la paĝgrando.
Kodo de la automatigilo
Eblas elŝuti tiun ĉi aŭtomatigilon kaj la originalajn skanitajn dosierojn per tiu ĉi subajn ligilojn:
Skanitaj dosieroj (ZIP-igitaj)
Vidu ankaŭ Iloj por enbitiga laborado