Inkscape et Scribus sortent des PDFs irréprochables à l’impression mais ils sont plutôt lourds pour une communication par Internet (envoi par mail, consulation sur écran).
Heureusement, Ghostscript est là pour rattraper le coup. On va utiliser 2 commandes disponibles facilement sous Linux pour recréer un PDF allégé.
Premièrement, on va « imprimer » le PDF original dans un fichier postscript sans perte de qualité.
$ pdftops exemple.pdf (ca crée implicitement un fichier example.ps)
On recrée alors un nouveau fichier PDF mais allégé cette fois.
$ ps2pdf exemple.ps exemple-allégé.pdf
Je passe de 7Mo à 400ko sur mes fichiers tout en gardant une qualité similaire à l’écran. Vous trouverez plus de réglages dans la documentation.
Pourquoi une telle différence de taille ? N’y a-t-il pas de différence de qualité ?
Bien sur que tu perds en qualité quand tu fais ça !!! Sinon tu ne diminuerais pas la taille. Au fait il redimensionne les différentes images du pdf en les mettant dans un fichier postscript. Alors du coup quand tu insère une image dans ton PDF avec inkscape cette image (dans ton pdf) va perdre de la qualité.
Sinon, pour tes 2 commandes … en une commande qui fait la même chose :
pdftops fichier.pdf | ps2pdf fichier.ps fichier2.pdf | rm fichier.ps
Sinon dans inkscape je pense que tu peux aussi choisir le taux de compression de tes fichiers PDF avant de les générer, ce qui t’évitera d’utiliser ce système un peu tiré par les cheveux.
@theclimber essaye ta commande a mon avis tu rigoleras bien, elle ne marchera jamais, si tu veux qu’elle fonctionne essaye avec && à la place de | et du coup tu fais trois commande tout comme tuxicoman.
Parcontre oui il y a perte de qualité, mais pas forcément une perte de qualité visuelle, si tu veux pouvoir réduire la taille de tes pdf, pourquoi ne pas passer par le format djvu, tu conserves les avantages du pdf, (tu en perds plein au travers des tes manipulations) tout en conservant un format plus petit, en plus se sera plus agréable pour tes utilisateurs, les visionneuses sont réellement beaucoup plus légères en ressources que les visionneuses pdf
Pour cela tu as un utilitaire libre qui converti le pdf en djvu : pdf2djvu
pdf2djvu -d 600 -o out.djvu in.djvu, le -d correspond à la résolution souvent les pdf sont enregistrés en 600dpi.
ps2pdf exemple.pdf exemple-allégé.pdf me donne le même résulat en une seule ligne :p
Je vais tester djvu
il me semble d’après ce que j’ai déjà vu que le plus gros facteur que influe sur la taille d’un fichier pdf est la résolution des images bitmap qui sont incluses dedans. Genéralement, d’ailleurs, les imprimantes pdf permettent de configurer ça… Généralement la résolution défaut des programmes graphiques est 300dpi, qui est beaucoup pour un pdf qui ne va pas être imprimé en haute qualité. On peut tranquillement baisser jusqu’à 100dpi. L’idéal serait que le programme exporte l’image telle qu’elle est mais ils ont généralement la manie de resampler les images en exportant… Autre facteur important est si les textes sont transformés en courbes ou non. Si il y a beaucoup de texte, ça fait une grande différence de taille de fichier. Mais selon le programme ce n’est pas toujours configurable. En zoomant très fort le pdf on peut voir si les caractères sont faits de segments (=courbes) ou non (=texte)…
j’ai testé DjVu mais la conversion depuis un PDF est longue sans apporter de réels gains de poids.
DjVu me semble avoir plus d’intérêt sur les images en basse qualité par rapport au jpeg.
Après quelques tests approfondis,je reviens à la solution initiale. Faire la transformation en une seule fois m’apporte des erreurs. Peut être parce que pdftops est meilleur que pdf2ps…
Salut,
J’ai amélioré ta commande en ajoutant des options. Je pense que l’ensemble est plus performant que la solution de base que tu propose.
Plus d’infos à :
http://howto.landure.fr/gnu-linux/optimiser-un-fichier-pdf-sous-linux
Lone Wolf
ps: Merci pour m’avoir pointé vers la solution.
Tcho les gens!
C’est très utiles pour compresser un fichier fait avec openoffice, j’avais beaucoup d’image et apparement openoffice ne compresse pas les images lors de l’extraction en pdf, j’au perdu pas mal de qualité (sur certaines images uniquement) mais je suis passé de 29 mo à 3.4 mo, très utile pour l’envoyé par mail.
Merci de l’info!