Documentos y conversión
PDF en la terminal: comprime, une y divide sin subir nada
Los sitios de "comprimir PDF gratis" procesan tus documentos en sus servidores — contratos, estados de cuenta, identificaciones. Ghostscript y qpdf hacen lo mismo en tu computadora: comprimen, unen, dividen, rotan y protegen con contraseña, sin que el archivo salga de tu disco.
Instalación
# macOS (Homebrew)
brew install ghostscript qpdf
# Ubuntu / Debian
sudo apt install ghostscript qpdf
# Windows (winget)
winget install ArtifexSoftware.GhostScript
winget install QPDF.QPDF
Comprimir un PDF pesado
Ghostscript recomprime las imágenes internas del PDF, que son casi siempre el peso real. El ajuste /ebook (150 dpi) es el equilibrio para compartir por correo:
gs -sDEVICE=pdfwrite -dPDFSETTINGS=/ebook -dNOPAUSE -dQUIET -dBATCH -sOutputFile=comprimido.pdf entrada.pdf
/screen— 72 dpi, máxima compresión, calidad de pantalla/ebook— 150 dpi, el punto medio recomendado/prepress— 300 dpi, calidad de imprenta, comprime poco
Un escaneo de 50 MB típicamente baja a 2–5 MB con /ebook.
Unir varios PDFs
qpdf --empty --pages portada.pdf contrato.pdf anexos.pdf -- completo.pdf
El orden de los archivos es el orden final. También puedes unir páginas sueltas — la portada, las páginas 2 a 5 del contrato y todo el anexo:
qpdf --empty --pages portada.pdf 1 contrato.pdf 2-5 anexos.pdf -- final.pdf
Dividir un PDF
Extraer un rango de páginas:
qpdf entrada.pdf --pages . 10-20 -- extracto.pdf
Separar cada página en su propio archivo:
qpdf --split-pages entrada.pdf pagina-%d.pdf
Rotar páginas
Rotar 90° todas las páginas (útil con escaneos acostados):
qpdf entrada.pdf corregido.pdf --rotate=+90
Solo algunas páginas: --rotate=+90:2,5,7 rota las páginas 2, 5 y 7.
Proteger con contraseña
qpdf --encrypt "contraseña" "contraseña" 256 -- entrada.pdf protegido.pdf
Y quitar la contraseña de un PDF tuyo cuya clave conoces:
qpdf --password="contraseña" --decrypt protegido.pdf libre.pdf
Reparar un PDF dañado
qpdf reconstruye la estructura interna de muchos PDFs que no abren:
qpdf entrada_dañada.pdf reparado.pdf
Convertir PDF a imágenes
Con poppler (brew install poppler / sudo apt install poppler-utils), cada página sale como PNG a 150 dpi:
pdftoppm -png -r 150 documento.pdf pagina
Extraer todo el texto
También de poppler — todo el texto del PDF a un archivo plano en segundos:
pdftotext documento.pdf texto.txt
Si no extrae nada, el PDF es un escaneo sin texto: pásalo primero por OCRmyPDF.
Extraer las imágenes originales
Saca las imágenes incrustadas en su resolución original, sin recomprimirlas:
pdfimages -all documento.pdf img
Crear un PDF desde fotos
Con ImageMagick, todas las imágenes de la carpeta a un PDF de una página por foto:
magick *.jpg escaneo.pdf
Lo probamos aquí mismo
Armamos un "escaneo" de 3 páginas A4 a 300 dpi — con grano de escáner, como los reales — y lo pasamos por el comando de compresión de esta página. Resultado, sin editar:
$ gs -sDEVICE=pdfwrite -dPDFSETTINGS=/ebook ... documento.pdf
$ du -h documento*.pdf
6.1M documento.pdf
132K documento-comprimido.pdf ← 47 veces más ligero
Compruébalo tú mismo: el original (6.1 MB) y el comprimido (132 KB) — el texto se lee igual de bien en los dos.