Para
convertir un grupo de imágenes .jpg en un pdf debemos contar con dos
herramientas básicas pero muy poderosas como: pdftk y sam2p
¿Qué
es pdftk?
pdftk
o the pdf toolkit es una herramienta de código abierto
multiplataforma para la manipulación de documentos PDF. pdftk es
básicamente un front end de la librería iText(compilada a código
nativo usando GCJ), capaz de dividir, combinar, cifrar, descifrar,
descomprimir, recomprimir y reparar documentos PDF. Puede también
ser utilizada para manipular marcas de agua, metadatos, o para llenar
formularios PDF con datos FDF (Forms Data Format) o datos XFDF (XML
Form Data).
¿Qué
es SAM2P?
sam2p
es una utilidad de línea de comandos UNIX escrito en ANSI C + + que
convierte muchas tramas (mapa de bits) en formatos de imagen Adobe
PostScript o PDF y otros formatos. Las imágenes no se vectorizan.
sam2p da un control total para
que el usuario especifique las normas de la condicionalidad,
la compresión y bits profundidades. En algunos casos sam2p puede
comprimir una imagen 100 veces más que PostScript. Sam2p ofrece ZIP,
RLE y LZW (de), filtros de compresión, incluso a nivel de
dispositivos PostScript.
Instalación
de pdftk y sam2p
Para
distribuciones basadas en Debian
- $ sudo aptitude install sam2p$ sudo aptitude install pdftk
- $ sudo apt-get install sam2p$ sudo apt-get install pdftk
Para
Fedora
$
sudo yum install sam2p
$
sudo yum install pdftk
|
Para
Opensuse
- $sudo zypper in pdftk
Procedimiento:
- Colocamos todas las imágenes en una carpeta ordenadas según la disposición que queramos para cada una de ellas. Por ejemplo: se pueden numerar desde la 001.jpg, 002.jpg, 003.jpg, ... Y guardadas todas en la Carpeta Ejemplo.
- Abrimos un Terminal y nos dirigimos a la ubicación de la carpeta “Ejemplo”. Cd Escritorio/Ejemplo La ubicación varía según donde guardemos la carpeta contentiva del grupo de imágenes.
- Una vez en la carpeta convertimos cada imagen en un archivo pdf con el comando:
- for f in $(ls *.jpg); do sam2p $f PDF: $f.pdf ; done
Y
por cada imagen nos va a salir algo parecido a esto:This
is sam2p v0.45-3.
Available Loaders: PS PDF JAI PNG JPEG TIFF PNM BMP GIF LBM XPM PCX TGA.
Available Appliers: XWD Meta Empty BMP PNG TIFF6 TIFF6-JAI JPEG-JAI JPEG PNM GIF89a+LZW XPM PSL1C PSL23+PDF PSL2+PDF-JAI P-TrOpBb.
sam2p: Notice: job: read InputFile: imagen001.jpg
sam2p: Notice: writeTTT: using template: p0jbb
sam2p: Notice: applyProfile: applied OutputRule #0
sam2p: Notice: job: written OutputFile: imagen001.jpg.pdf
Success.
Available Loaders: PS PDF JAI PNG JPEG TIFF PNM BMP GIF LBM XPM PCX TGA.
Available Appliers: XWD Meta Empty BMP PNG TIFF6 TIFF6-JAI JPEG-JAI JPEG PNM GIF89a+LZW XPM PSL1C PSL23+PDF PSL2+PDF-JAI P-TrOpBb.
sam2p: Notice: job: read InputFile: imagen001.jpg
sam2p: Notice: writeTTT: using template: p0jbb
sam2p: Notice: applyProfile: applied OutputRule #0
sam2p: Notice: job: written OutputFile: imagen001.jpg.pdf
Success.
La
explicación de lo que hace nuestro programita bash es:
Cada resultado de ls *.jpg, es decir, cada imagen .jpg, se va almacenando en la variable f. Por cada imagen ejecutamos el comandosam2p $f PDF: $f.pdf que convierte lo que hay almacenado en f en f.pdf. Es un bucle sencillo y muy útil.
Cada resultado de ls *.jpg, es decir, cada imagen .jpg, se va almacenando en la variable f. Por cada imagen ejecutamos el comandosam2p $f PDF: $f.pdf que convierte lo que hay almacenado en f en f.pdf. Es un bucle sencillo y muy útil.
- Una vez hecho esto, ya tenemos varios pdfs cada uno con su correspondiente imagen. Ahora vamos a unirlos en un sólo pdf. Estando en Escritorio/Comic, escribimos en la terminal:pdftk *.pdf cat output miarchivo.pdf
- En “miarchivo” colocan el nombre de su preferencia. Y, listo no debería presentarse ningún inconveniente.
Imágenes de Pantalla del Proceso:
Fuente:
Muchas gracias! Muy bien explicado :)
ResponderEliminar