GNU/Linux >> Tutoriales Linux >  >> Linux

Convertidor de versión PDF de Linux

Encontré esto en los foros de ubuntu:

 # gs -sDEVICE=pdfwrite -dCompatibilityLevel=<VERSION> -dPDFSETTINGS=/screen -dNOPAUSE -dQUIET -dBATCH -sOutputFile=output.pdf input.pdf

Acabo de probar esto y funciona bien, publicaré algunos resultados ahora.

[14:08:41][email protected]:~/superuser # pdfinfo org_1-4.pdf 
Title:          CV 2009
Producer:       Prince 7.0 alpha 16 (www.princexml.com)
Tagged:         no
Pages:          3
Encrypted:      no
Page size:      595 x 842 pts (A4)
File size:      51793 bytes
Optimized:      no
PDF version:    1.4
[14:08:59][email protected]:~/superuser # gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.5 -dPDFSETTINGS=/screen -dNOPAUSE -dQUIET -dBATCH -sOutputFile=out_1.5.pdf org_1-4.pdf
[14:09:35][email protected]:~/superuser # pdfinfo out_1.5.pdf 
Producer:       GPL Ghostscript 8.64
CreationDate:   Wed Aug 19 14:09:34 2009
ModDate:        Wed Aug 19 14:09:34 2009
Tagged:         no
Pages:          3
Encrypted:      no
Page size:      595 x 842 pts (A4)
File size:      60658 bytes
Optimized:      no
PDF version:    1.5

Buscar las opciones de ghostscript en lugar de copiar ciegamente los comandos de otros que también copiaron ciegamente sus comandos (y así sucesivamente) es tiempo bien invertido. Por ejemplo, el -dPDFSETTINGS=/screen en la respuesta más votada (y muchas otras) degradará la calidad de su pdf.

Del manual de ghostscript:

-dPDFSETTINGS=configuration Preestablece los "parámetros del destilador"[...] El uso de cualquiera de estos preajustes implicará alterar la entrada y, como tal, puede dar como resultado un PDF de peor calidad (en comparación con la entrada) que simplemente usar los valores predeterminados. La 'mejor' calidad (donde mejor significa lo más cercano a la entrada original) se obtiene al no configurar este parámetro en absoluto (o al usar /default).

Además, opciones útiles como -dNOPAUSE están implícitamente especificados por el -o opción.

Para convertir cualquier pdf a la versión 1.4 use

gs -q -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -o out.pdf in.pdf

El -q sólo está ahí para silenciar el comando. Puede omitirlo si desea ver advertencias (por ejemplo, sobre fuentes faltantes), etc.

Cuidado:Ghostscript no le informará sobre versiones inexistentes o no compatibles, incluso sin -q . Por ejemplo, si especifica -dCompatibilityLevel=1.9 (no hay pdf 1.9) obtienes un pdf 2.0 pero ghostscript no te lo dirá. No pude encontrar una lista completa de versiones compatibles con -dCompatibilityLevel= . 1.0 parecía no ser compatible. 1.1 - 1.7 trabajado. 2.0 también funcionó, pero creó archivos PDF que no se ajustaban al estándar (aunque se mostraban bien en evidencia).

Puedes comprobar la versión escrita usando grep -oa '%PDF-...' out.pdf .
Además, descubrí que PDF/A solo se puede crear usando -dPDFA . Lamentablemente, todas estas opciones no parecen estar tan bien documentadas o documentadas en absoluto.


Linux
  1. 5 razones por las que me encanta programar en Linux

  2. Cómo verificar la versión de Redhat

  3. Cómo comprobar la versión de MySQL en Linux

  4. Cómo verificar la versión de su sistema operativo Linux

  5. convertir pdf a 2up en linux

Cómo actualizar Alpine Linux a la última versión

Cómo convertir por lotes archivos PDF en Linux

Cómo convertir una página web a PDF en Linux

Cómo abrir un PDF en la terminal de Linux

Reducir el tamaño del archivo PDF en Linux

Cómo comprobar la versión de PHP en Linux