Dado un directorio de imágenes de comic/libro vamos a ver la forma de obtener un PDF contenedor de todas ellas.
Lo primero que hacemos es convertir todos los jpgs a PDFs individuales:
$ find . -maxdepth 1 -name "*.jpg" | sort | while read FICH ; do convert -compress jpeg "$FICH" "`basename $FICH .jpg`.pdf" ; done
Después concatenamos todos estos PDFs. Para ello tenemos 3 opciones: pdfconcat, pdfjoin y pdftk:
pdfconcat
Como primera opción, podemos utilizar el binario "pdfconcat" que viene incluído con el paquete "xpaint":
$ pdfconcat -o ../libro-pdfconcat.pdf *.pdf
pdfjoin
La segunda opción es la de utilizar "pdfjoin", del paquete "pdfjam":
$ apt-cache search pdfjoin pdfjam - collection of PDF document handling utilities $ pdfjoin --outfile ../libro-pdfjoin.pdf *.pdf
pdftk
Finalmente, como tercera opción podemos utilizar las herramientas de manipulación pdftk para concatenar todos los PDFs en uno combinado:
$ pdftk *.pdf cat output libro-pdftk.pdf
En los 3 casos obtenemos un PDF con la concatenación de todos los PDFs del directorio, en orden "de listado" (que coincidirá con el orden de página).
Hay que tener en cuenta que el tamaño del PDF resultante es la suma del tamaño de los JPGs/PNGs por lo que es importante optimizar el tamaño de las imágenes individuales antes de realizar el proceso de generación del PDF.
$ ls -lh ../*.pdf -rw-r--r-- 1 sromero sromero 73M 2010-12-15 20:18 ../../prueba-jpgs-calidad80.pdf -rw-r--r-- 1 sromero sromero 227M 2010-12-15 19:57 ../../prueba-jpgs-calidad100.pdf