Mostrando entradas con la etiqueta shell. Mostrar todas las entradas
Mostrando entradas con la etiqueta shell. Mostrar todas las entradas

lunes, 24 de octubre de 2022

Girar hojas de pdf

Una buena guía para cambiar la orientación de las páginas de un pdf con una herramienta gratuita PDFTK sin recurrir a empresas que cobran por todo está en el siguiente enlace.

https://people.uleth.ca/~daniel.odonnell/blog/rotating-one-or-more-pages-in-a-pdf-in-linux

Anteriormente ya les había contado de las bondades de pdftk en la entrada:

https://barrosjuan.blogspot.com/2017/07/pdftk-y-su-pandilla-pdftops-ps2pdf.html

Y la línea que me salvó hoy fue: 90 grados sentido horario de todo el doc

 

pdftk in.pdf cat 1-endeast output out.pdf

jueves, 6 de julio de 2017

pdftk y su pandilla pdftops ps2pdf pdfinfo pdfimages

Existe una discusión entre los ñoños sobre el presente y futuro de los datos. Cómo se debe estructurar desde el punto de vista informático un documento portable (PDF)? La tendencia es tratar de separar el contenido del documento de su presentación. Los datos y su presentación podría estar unidos mediante algún tipo de metadato o alguna técnica de hipertexto (alguien dijo XML?).

Lo importante es que al común de los mortales no le interesa perder su tiempo en una discusión tan vanal como esa y prefiere estar de fisgón sobre la vida de sus amigos, utilizando fb por ejemplo.

En algunas ocasiones el problema no es trivial.  Por ejemplo, hoy debía preparar un documento en formato PDF para poder ser enviado e imprimido en algún otro lugar distante. Y es que el código abierto brinda herramientas para por ejemplo:
- obtener las imágenes de un pdf: pdfimages
- obtener el tamaño en puntos de cada una de las páginas: pdfinfo
- realizar cortes o integraciones, separar solo algunas páginas, en general manipulación: pdftk.
- convertir archivos de imagen en otros de tipo pdf: convert

De hecho, pdftk significa ToolKit PDF. Un conjunto  de herramientas para manipular varios aspectos de un pdf.

El problema que se me presentó hoy fue que tenía imágenes escaneadas y las convertí a archivos pdf. Y mediente pdftk pretendía generar un archivo con todos los subdocumentos seleccionados. Pero luego de realizar la integración, al revisar el documento observé que el tamaño de algunas páginas era mayor con respecto  a otras páginas.  Recuerden, en teoría Internet es su amigo. y tras buscar un poco encontré algunas posibles soluciones, algunas no funcionaron.

La solución que funcionó hoy fue convertir el pdf al formato postScript o ps.

pdftops -paper A4 PagsGrandes.pdf nuevoArchivoA4.ps

y luego

ps2pdf nuevoArchivoA4.ps archivoRegulado.pdf

para comprobar el tamaño de las páginas utilizamos, el viejo conocido:

pdfinfo archivoRegulado.pdf

Ahora podemos unir sin ningún problema los archivos con pdftk.

Espero recordar esta nota la próxima vez que tenga este problema.



Un buen Sandwich

Algunas instituciones de mi país tienen procedimientos muy rigurosos para publicar información. Es así que algunas veces la secretaria redacta un reglamento basándose en alguno anterior. Luego de trabajar durante algún tiempo corrigiendo el texto para capturar lo que el abogado secretario desea plasmar, se obtiene un archivo de texto con la versión final.
Cabe recordar que para poder realizar búsquedas desde una computadora, es este el formato necesario para colgar en un sitio WEB. Pero un reglamento sin firma de responsabilidad no es válido en realidad, bueno entonces se procede a imprimir el reglamento o documento legal, se le coloca la firma de responsabilidad por todos los implicados en este documentosidio y se procede a escanear el documento para esta vez si, poder colgarlo "como debe de ser".  El problema es que ahora en lugar de tener texto buscable con el poder la computación, se tiene una foto en la que no se pueden realizar busquedas sin realizar algún procesamiento previo, pero nadie quiere saltarse los pasos de ley, no es verdad??

Hoy por n-sima vez utilicé linux y programas con licencia GNU para poder pasar de fotos que provienen de un escaner a un texto buscable. Al tratarse del mundo Open-Source, el camino no es sencillo.  De cualquier manera, llevo utilizando para  esta tarea el script llamado pdfsandwich; mismo que solo ejecuta un script de enlace con varias herramientas que hacen la dificil tarea de reconocer el texto (tesseract), previo el uso de una conversión de color a escala de grises, a veces se corrige las inclinaciones del texto, y se coloca el texto por debajo de la imagen del texto (gs o ghostScript), para finalmente obtener una nueva versión del documento pero con texto buscable. Una opción "razonable" cuando nuestra conexión a internet de subida impide enviar los grandes archivos a un servicio en la nube, bueno, y por los problemas de seguridad ue ello implica.

El comando típico que utilizamos sería:

pdfsandwich -lang spa -layout single -o texto  -debug -verbose archivo.pdf

Lang es de language y spa es de spanish
layout es por si se trata de una columna o 2 columnas
-o es de output o salida, para indicar el nombre del archivo de salida
-debug para guardar todos los archivos intermedios por cada página.
-verbose para leer los mensajes y poder saber en qué página se encuentra.
y obvio, el archivo con las fotos a procesar.

La herramienta no es perfecta, pero es gratis y abierta. Entonces si deseas mejorarla solo cierra la boca y dedicate a programar :)