QPDF
QPDF es una herramienta de la línea de comandos que te permite trabajar con archivos pdf. Esta herramienta te permite crear archivos optimizados para la web, así como cifrar y descifrar archivos. También te permite convertir archivos con objetos comprimidos en archivos sin objetos comprimidos, así como soporta un modo que te permite editar el contenido del archivo PDF en un editor de texto.
Instalación
Esta herramienta se encuentra en los repositorios oficiales de Ubuntu, con lo que la instalación es bien sencilla, solo tienes que hacer clic en QPDF para instalar la aplicación, o bien desde el terminal,
sudo apt-get install qpdf
Unir archivos o partes de archivos
Sin embargo, lo que mas me llama la atención es el asunto de unir archivos y extraer hojas, porque lo hace de una forma realmente sencilla. ASí por ejemplo si queremos extraer las primeras diez hojas de un documento, solo tenemos que ejecutar el siguiente comando,
qpdf --empty --pages ejemplo.pdf 1-10 -- salida.pdf
donde
ejemplo.pdf, es el archivo de entrada
1-10, las páginas que copiamos del fichero de entrada
salida.pdf, el fichero de salida
también podemos reordenar las páginas de un documento en orden inverso,
qpdf --empty --pages ejemplo.pdf z-1 -- salida.pdf
donde,
z, representa la última página
También podemos unir las páginas de un documento a las del otro,
qpdf --empty --pages documento1.pdf 1-z documento2.pdf 1-z -- salida.pdf
Por supuesto nos permite seleccionar páginas sueltas o rangos tanto de un documento como de varios,
qpdf --empty --pages documento1.pdf 1,5-7,10-z documento2.pdf z-8,5,4,2 -- salida.pdf
Atención a los espacios entre hojas y rangos, que no los admite y te arrojará un error.
Cifrar y descifrar
Otra interesante opción que ofrece QPDF es la posibilidad de cifrar y descifrar documentos pdf, aunque nunca le he terminado de ver la gracia a esto. De cualquier forma, para cifrar un archivo pdf tendrñas que utilizar la etiqueta –flag, de forma que la sintaxis es algo como,
qpdf archivo_de_entrada.pdf --encrypt contraseña_usuario contraseña_propietario longitud_contraseña [restricciones] -- archivo_de_salida_cifrado.pdf
La longitud de la contraseña, puede tomar uno de los siguientes valores, 40, 128 ó 256. Si no se indican restricciones es permisivo por defecto. Si la longitud de la contraseña es 40, se pueden utilizar las siguientes restricciones,
–print=[yn], indica si se puede imprimir
–modify=[yn], indica si se puede modificar
–extract=[yn], indica si se puede extraer texto o imágenes
–annotate=[yn], indica si se pueden añadir comentarios, cumplimentar un formulario y firmar
Si la longitud es de 128, las restricciones podrán ser las siguientes,
–accessibility=[yn], indica si se es accesible
–extract=[yn], indica si se puede extraer texto o imágenes
–print=print-opt, controla el acceso a la impresión, pudiendo ser alguna de las siguientes opciones
full, permite la impresión
low, permite la impresión solo a baja resolución
none, no te permite imprimir
–modify=modify-opt, determina si se puede modificar el documento, siguiendo criterios similares a los de impresión
all, permite cualquier modificación
annotate, permite anotaciones y cumplimentar un formulario
form, permite rellenar un formulario y firmar
none, no permite ninguna modificación
QPDF es una herramienta de la línea de comandos que te permite trabajar con archivos pdf. Esta herramienta te permite crear archivos optimizados para la web, así como cifrar y descifrar archivos. También te permite convertir archivos con objetos comprimidos en archivos sin objetos comprimidos, así como soporta un modo que te permite editar el contenido del archivo PDF en un editor de texto.
Instalación
Esta herramienta se encuentra en los repositorios oficiales de Ubuntu, con lo que la instalación es bien sencilla, solo tienes que hacer clic en QPDF para instalar la aplicación, o bien desde el terminal,
sudo apt-get install qpdf
Unir archivos o partes de archivos
Sin embargo, lo que mas me llama la atención es el asunto de unir archivos y extraer hojas, porque lo hace de una forma realmente sencilla. ASí por ejemplo si queremos extraer las primeras diez hojas de un documento, solo tenemos que ejecutar el siguiente comando,
qpdf --empty --pages ejemplo.pdf 1-10 -- salida.pdf
donde
ejemplo.pdf, es el archivo de entrada
1-10, las páginas que copiamos del fichero de entrada
salida.pdf, el fichero de salida
también podemos reordenar las páginas de un documento en orden inverso,
qpdf --empty --pages ejemplo.pdf z-1 -- salida.pdf
donde,
z, representa la última página
También podemos unir las páginas de un documento a las del otro,
qpdf --empty --pages documento1.pdf 1-z documento2.pdf 1-z -- salida.pdf
Por supuesto nos permite seleccionar páginas sueltas o rangos tanto de un documento como de varios,
qpdf --empty --pages documento1.pdf 1,5-7,10-z documento2.pdf z-8,5,4,2 -- salida.pdf
Atención a los espacios entre hojas y rangos, que no los admite y te arrojará un error.
Cifrar y descifrar
Otra interesante opción que ofrece QPDF es la posibilidad de cifrar y descifrar documentos pdf, aunque nunca le he terminado de ver la gracia a esto. De cualquier forma, para cifrar un archivo pdf tendrñas que utilizar la etiqueta –flag, de forma que la sintaxis es algo como,
qpdf archivo_de_entrada.pdf --encrypt contraseña_usuario contraseña_propietario longitud_contraseña [restricciones] -- archivo_de_salida_cifrado.pdf
La longitud de la contraseña, puede tomar uno de los siguientes valores, 40, 128 ó 256. Si no se indican restricciones es permisivo por defecto. Si la longitud de la contraseña es 40, se pueden utilizar las siguientes restricciones,
–print=[yn], indica si se puede imprimir
–modify=[yn], indica si se puede modificar
–extract=[yn], indica si se puede extraer texto o imágenes
–annotate=[yn], indica si se pueden añadir comentarios, cumplimentar un formulario y firmar
Si la longitud es de 128, las restricciones podrán ser las siguientes,
–accessibility=[yn], indica si se es accesible
–extract=[yn], indica si se puede extraer texto o imágenes
–print=print-opt, controla el acceso a la impresión, pudiendo ser alguna de las siguientes opciones
full, permite la impresión
low, permite la impresión solo a baja resolución
none, no te permite imprimir
–modify=modify-opt, determina si se puede modificar el documento, siguiendo criterios similares a los de impresión
all, permite cualquier modificación
annotate, permite anotaciones y cumplimentar un formulario
form, permite rellenar un formulario y firmar
none, no permite ninguna modificación