1 min read

Compresser (efficacement) un PDF trop lourd grâce à la magie de la ligne de commande

Compresser (efficacement) un PDF trop lourd grâce à la magie de la ligne de commande

Ceci ne serait pas un de mes espaces de prise de parole sans une petite intervention purement technique. Après tout, ce qui va suivre devrait intéresser bon nombre de mes collègues producteurs de slides.

Coucou les marketeux ^^

Car l’ennui avec les slides, c’est que ça finit par peser son poids. Et c’est bien souvent les images qui transforment une présentation légère en sumo à transporter via WeTransfer. Ce gros WeTransfer qui -au final- embête bien tout le monde.

Le temps d’envoyer sur la plateforme avec une connexion qui s’avère être trop lente, puis le temps de récupérer le lien à envoyer à son contact, patienter bien longtemps qu’il arrive à ouvrir le lien pour découvrir la présentation. Bref, du temps perdu en données qui transitent et qui polluent.

Car oui, plus un fichier est lourd, plus son bilan carbone est important.

Autant refaire les choses simplement et prendre le temps de compresser tout cela sans perdre (trop) en qualité d’image. Résultat, il suffit d’utiliser notre ami de toujours GhostScript grâce à l’installation via brew.

Direction le Terminal de votre ordinateur fétiche pour installer le package :

brew install ghostscript

Puis, direction votre dossier avec le fichier à compresser (le input.pdf) pour lancer la commande :

gs -sDEVICE=pdfwrite -dNOPAUSE -dQUIET -dBATCH -dPDFSETTINGS=/screen -dCompatibilityLevel=1.4 -sOutputFile=output.pdf input.pdf

À titre d’exemple, un PDF de 650 Mo est maintenant un poil plus partageable : 55 Mo. Oui, c’est plutôt sympa et ça va beaucoup plus vite sans perte de qualité flagrante sur les images.

C’est trop moche, trop compressé, trop pixelisé ? Ok :

Other options for PDFSETTINGS:

/screen selects low-resolution output similar to the Acrobat Distiller "Screen Optimized" setting.
/ebook selects medium-resolution output similar to the Acrobat Distiller "eBook" setting.
/printer selects output similar to the Acrobat Distiller "Print Optimized" setting.
/prepress selects output similar to Acrobat Distiller "Prepress Optimized" setting.
/default selects output intended to be useful across a wide variety of uses, possibly at the expense of a larger output file.

Bref, c’est cool.