Trouvé sur les forums Ubuntu :
# gs -sDEVICE=pdfwrite -dCompatibilityLevel=<VERSION> -dPDFSETTINGS=/screen -dNOPAUSE -dQUIET -dBATCH -sOutputFile=output.pdf input.pdf
Je viens de tester cela et cela fonctionne bien, je vais publier une sortie maintenant.
[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
Rechercher les options ghostscript au lieu de copier aveuglément les commandes d'autres personnes qui ont également copié aveuglément leurs commandes (et ainsi de suite) est du temps bien dépensé. Par exemple, le -dPDFSETTINGS=/screen
dans la réponse la plus votée (et bien d'autres) dégradera la qualité de votre pdf.
Du manuel ghostscript :
-dPDFSETTINGS=configuration
Prérégle les "paramètres du distillateur"[...] L'utilisation de l'un de ces préréglages impliquera de modifier l'entrée et, en tant que telle, peut entraîner un PDF de moins bonne qualité (par rapport à l'entrée) que la simple utilisation des valeurs par défaut. La "meilleure" qualité (où la meilleure signifie la plus proche de l'entrée d'origine) est obtenue en ne définissant pas du tout ce paramètre (ou en utilisant /default).
Aussi, des options utiles comme -dNOPAUSE
sont spécifiés implicitement par le -o
option.
Pour convertir n'importe quel pdf en version 1.4, utilisez
gs -q -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -o out.pdf in.pdf
Le -q
n'est là que pour faire taire la commande. Vous pouvez l'omettre si vous voulez voir des avertissements (par exemple pour les polices manquantes) et ainsi de suite.
Attention :Ghostscript ne vous informera pas des versions inexistantes / non prises en charge, même sans -q
. Par exemple, si vous spécifiez -dCompatibilityLevel=1.9
(il n'y a pas de pdf 1.9) vous obtenez un pdf 2.0 mais ghostscript ne vous le dira pas. Je n'ai pas trouvé la liste complète des versions prises en charge par -dCompatibilityLevel=
. 1.0 semblait être non pris en charge. 1.1 - 1.7 ont fonctionné. 2.0 fonctionnait également, mais créait des fichiers PDF qui n'étaient pas conformes à la norme (bien qu'ils s'affichent très bien dans evince).
Vous pouvez vérifier la version écrite en utilisant grep -oa '%PDF-...' out.pdf
.
De plus, j'ai trouvé que PDF/A ne peut être créé qu'en utilisant -dPDFA
. Malheureusement, toutes ces options ne semblent pas être bien documentées ou documentées du tout.