Cómo crear y combinar archivos PDF en la línea de comandos de Linux
Publicado: 2022-09-24
Los archivos PDF fueron diseñados para promover el intercambio. Todos pueden abrirlos, en su navegador web si no tienen nada más. Linux le permite manipular, fusionar y dividir archivos PDF en la línea de comandos.
El formato de documento portátil
Creación de archivos PDF en Linux
El comando qpdf
Combinar archivos PDF
Dividir archivos PDF
Páginas giratorias
Cifrado y descifrado
qpdf es una excelente herramienta
El formato de documento portátil
El formato de documento portátil (PDF) resolvió un problema. Cuando creabas un documento en una computadora y querías compartirlo con otra persona, enviarles el documento no siempre funcionaba.
Incluso si tuvieran el mismo paquete de software que usó para crear su documento, es posible que no tengan las mismas fuentes instaladas en su computadora que usted tenía en la suya. Podrían abrir el documento, pero se vería mal.
Si no tuvieran una copia del software que usó para crear el paquete, no podrían abrirlo. Si usó un software que solo estaba disponible en Linux, no tenía sentido enviar ese documento a alguien que solo usaba Windows.
Adobe creó un nuevo formato de archivo en 1992 y lo llamó formato de documento portátil. Los documentos creados con ese estándar, ISO 32000, contienen las imágenes y las fuentes necesarias para representar correctamente el contenido del archivo. Los visores de PDF pueden abrir archivos PDF en cualquier plataforma. Era una solución multiplataforma, simple y elegante.
Un archivo PDF no está diseñado para ser maleable como un documento de procesador de texto. No se prestan fácilmente a la edición. Si necesita cambiar el contenido de un PDF, siempre es mejor volver al material de origen, editarlo y generar un nuevo PDF. A diferencia de intentar cambiar el contenido, las manipulaciones estructurales se pueden realizar en archivos PDF con relativa facilidad.
Aquí hay algunas formas de crear archivos PDF en Linux y cómo realizar algunas de las transformaciones que se les pueden aplicar.
Creación de archivos PDF en Linux
Muchas de las aplicaciones disponibles en Linux pueden generar archivos PDF directamente. LibreOffice tiene un botón en la barra de herramientas que genera un PDF del documento actual. No podría ser más fácil.

Para un control detallado de la creación de PDF, la aplicación de autoedición Scribus es difícil de superar.
Si necesita crear documentos con contenido científico o matemático, tal vez para enviarlos a revistas académicas, una aplicación que use LaTeX, como Texmaker, será perfecta para usted.
Si prefiere un flujo de trabajo de texto sin formato, tal vez usando Markdown, puede usar pandoc para convertir hacia y desde una gran cantidad de formatos de archivo, incluido PDF. Tenemos una guía dedicada a pandoc pero un ejemplo simple le mostrará lo fácil que es usarlo.
Instale Texmaker primero. pandoc se basa en algunas bibliotecas LaTeX para la generación de PDF. Instalar Texmaker es una forma conveniente de cumplir con esas dependencias.
La opción -o (salida) se usa para especificar el tipo de archivo que se creará. El archivo "raw-notes.md" es un archivo Markdown de texto sin formato.
pandoc -o nuevo.pdf raw-notes.md

Si abrimos el archivo “nuevo.pdf” en un visor de PDF, vemos que es un PDF correctamente formado.

El comando qpdf
El comando qpdf le permite manipular archivos PDF existentes, conservando su contenido. Los cambios que puedes hacer son estructurales . Con qpdf puede realizar tareas como fusionar archivos PDF, extraer páginas, rotar páginas y configurar y eliminar el cifrado.
Para instalar qpdf en Ubuntu use este comando:
sudo apt instalar qpdf

El comando en Fedora es:
sudo dnf instalar qpdf

En Manjaro debes escribir:
sudo pacman -S qpdf

Combinar archivos PDF
Al principio, parte de la sintaxis de la línea de comandos de qpdf puede parecer confusa. Por ejemplo, muchos de los comandos esperan un archivo PDF de entrada.
Si un comando no requiere uno, debe usar la opción --empty en su lugar. Esto le dice a qpdf que no espere un archivo de entrada. La opción --pages le permite elegir páginas. Si solo proporciona los nombres de PDF, se utilizan todas las páginas.
Para combinar dos archivos PDF para formar un nuevo archivo PDF, utilice este formato de comando.
qpdf --vacío --páginas primero.pdf segundo.pdf -- combinado.pdf

Este comando está compuesto por:
- qpdf : llama al comando
qpdf. - –empty : Le dice
qpdfque no hay un PDF de entrada. Se podría argumentar que "primero.pdf" y "segundo.pdf" son archivos de entrada, peroqpdflos considera parámetros de línea de comandos. - –pages : le dice
qpdfque vamos a trabajar con páginas. - first.pdf second.pdf : Los dos archivos de los que vamos a extraer las páginas. No hemos utilizado rangos de páginas, por lo que se utilizarán todas las páginas.
- — : Indica el final de las opciones del comando.
- combine.pdf : El nombre del PDF que se creará.
Si buscamos archivos PDF con ls , veremos nuestros dos archivos originales, intactos, y el nuevo PDF llamado "combined.pdf".
ls -hl primero.pdf segundo.pdf combinado.pdf

Hay dos páginas en "primero.pdf" y una página en "segundo.pdf". El nuevo archivo PDF tiene tres páginas.

Puede utilizar comodines en lugar de enumerar una gran cantidad de archivos de origen. Este comando crea un nuevo archivo llamado "all.pdf" que contiene todos los archivos PDF en el directorio actual.

qpdf --vacío --páginas *.pdf -- todo.pdf

Podemos usar rangos de páginas agregando los números de página o rangos detrás de los nombres de archivo de los que se extraerán las páginas.
Esto extraerá las páginas uno y dos de "first.pdf" y la página dos de "second.pdf". Tenga en cuenta que si ya existe "combined.pdf", no se sobrescribe. Tiene las páginas seleccionadas añadidas .
qpdf --vacío --páginas primero.pdf 1-2 segundo.pdf 1 -- combinado.pdf

Los rangos de páginas pueden ser tan detallados como desee. Aquí, estamos solicitando un conjunto muy específico de páginas de un archivo PDF grande y estamos creando un archivo PDF de resumen.
qpdf --vacío --páginas grandes.pdf 1-3,7,11,18-21,55 -- resumen.pdf

El archivo de salida, “summary.pdf” contiene las páginas 1 a 3, 7, 11, 18 a 21 y 55 del archivo PDF de entrada. Esto significa que hay 10 páginas en “summary.pdf”

Podemos ver que la página 10 es la página 55 del PDF de origen.
Dividir archivos PDF
Lo contrario de fusionar archivos PDF es dividir archivos PDF. Para dividir un PDF en archivos PDF separados, cada uno con una sola página, la sintaxis es simple.
El archivo que estamos dividiendo es "summary.pdf", y el archivo de salida se proporciona como "page.pdf". Esto se usa como el nombre base. Cada nuevo archivo tiene un número agregado al nombre base. La opción --split-pages le dice a qpdf qué tipo de acción estamos realizando.
qpdf resumen.pdf página.pdf --split-pages

La salida es una serie de archivos PDF numerados secuencialmente.
ls página*.pdf

Si no desea dividir cada página, use rangos de páginas para seleccionar las páginas que desea.
Si emitimos este siguiente comando, dividiremos una colección de archivos PDF de una sola página. Los rangos de páginas se usan para especificar las páginas o rangos que queremos, pero cada página aún se almacena en un solo PDF.
qpdf grande.pdf sección.pdf --páginas grandes.pdf 1-5,11-14,60,70-100 -- --split-pages

Las páginas extraídas tienen nombres basados en "sección.pdf" con un número secuencial agregado.
ls sección*.pdf

Si desea extraer un rango de páginas y almacenarlo en un solo PDF, use un comando de este formulario. Tenga en cuenta que no incluimos la opción --split-pages . Efectivamente, lo que estamos haciendo aquí es una combinación de PDF, pero solo estamos "combinando" páginas de un archivo de origen.
qpdf --vacío --páginas grandes.pdf 8-13 -- capítulo2.pdf

Esto crea un solo PDF de varias páginas llamado "chapter2.pdf".
Páginas giratorias
Para rotar una página, creamos un nuevo PDF que es igual al PDF de entrada con la página especificada rotada.
Usamos la opción --rotate para hacer esto. El +90 significa girar la página 90 grados en el sentido de las agujas del reloj. Puede rotar una página 90, 180 o 270 grados. También puede especificar la rotación en grados en el sentido contrario a las agujas del reloj, utilizando un número negativo, pero no es necesario hacerlo. Una rotación de -90 es lo mismo que una rotación de +270.
El número separado de la rotación por dos puntos “ : ” es el número de la página que desea rotar. Esta podría ser una lista de números de página y rangos de páginas, pero solo estamos rotando la primera página. Para rotar todas las páginas, use un rango de páginas de 1-z .
qpdf --rotate=+90:1 resumen.pdf rotado1.pdf

La primera página ha sido rotada para nosotros.

Cifrado y descifrado
Los documentos PDF se pueden cifrar para que requieran una contraseña para abrirlos. Esa contraseña se llama contraseña de usuario . Hay otra contraseña que se requiere para cambiar la seguridad y otras configuraciones de permisos para un PDF. Se llama contraseña de propietario .
Para encriptar un PDF necesitamos usar la opción --encrypt y proporcionar ambas contraseñas. La contraseña de usuario viene primero en la línea de comando.
También especificamos la fuerza de cifrado a utilizar. Solo necesita pasar del cifrado de 256 bits a 128 bits si desea admitir visores de archivos PDF muy antiguos. Le sugerimos que siga con el cifrado de 256 bits.
Vamos a crear una versión cifrada de "summary.pdf" llamada "secret.pdf".
qpdf --cifrar gallina.rata.calamar ganso.cabra.gibón 256 --sumario.pdf secreto.pdf

Cuando intentamos abrir el PDF, el visor de PDF nos solicita una contraseña. Introducir la contraseña de usuario autoriza al espectador a abrir el archivo.

Recuerde que qpdf no cambia el PDF existente. Crea uno nuevo con los cambios que le hemos pedido que haga. Entonces, si crea un PDF encriptado, aún tendrá la versión original sin encriptar. Dependiendo de sus circunstancias, es posible que desee eliminar el PDF original o guardarlo de forma segura.
Para descifrar un archivo, use la opción --decrypt . Obviamente, debe conocer la contraseña de propietario para que esto funcione. Necesitamos usar la opción --password para identificar la contraseña.
qpdf --decrypt --password=goose.goat.gibbon secret.pdf desbloqueado.pdf

El "desbloqueado.pdf" se puede abrir sin contraseña.
qpdf es una excelente herramienta
Estamos profundamente impresionados con qpdf . Proporciona un conjunto de herramientas flexible y con muchas funciones para trabajar con archivos PDF. Y es muy rápido, también.
Consulte su documentación bien escrita y detallada para ver cuánto más puede hacer.


