Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 12/01/2008, à 18:22

Autiwa

[Résolu/script] .pdf en .png avec convert (imagemagick)

Mon soucis est de convertir un .pdf en .png.
Au départ, j'ai un .xls que je veux en .png. J'ai donc exporté en .pdf avec 1200 dpi pour que la qualité y soit.
J'ai essayé convert mais la qualité du .png n'est pas du tout au rendez-vous et ne conserve pas la qualité du .pdf (en effet, je zoome le .pdf sans problème et sans que ça pixellise, ce qui n'est pas du tout le cas du .png que me donne convert)

J'ai lancé le .pdf via Gimp, j'ai importé avec 900 dpi, et indexé les couleurs, puis enregistré en .png, et là , la qualité est parfaite.
Sachant que ça ne sera sans doute pas le seul .pdf que je convertirais en .png, j'ai voulu faire un script pour ça, mais je ne sais pas du tout contrà´ler Gimp en ligne de commande, je sais même pas si c'est possible.

Quelqu'un a une idée, sait si c'est possible (ou pas)?

Dernière modification par Autiwa (Le 12/01/2008, à 22:32)


Pensez à éditer le titre du sujet (en éditant le premier message) pour rajouter un "[Résolu]" ça évite à ceux qui veulent donner un coup de main, d'ouvrir un sujet où il n'y a plus d'aide à donner.

Hors ligne

#2 Le 12/01/2008, à 20:27

Alain.g

Re : [Résolu/script] .pdf en .png avec convert (imagemagick)

Salut

Quand on utilise convert, on doit également spécifier des options selon la qualité qu'on désire obtenir.

Essaie avec -density (+ d'infos)
par exemple :

convert -density 1000x1000  fichier.pdf image.png

Xubuntu Karmic !

Hors ligne

#3 Le 12/01/2008, à 20:34

JBF

Re : [Résolu/script] .pdf en .png avec convert (imagemagick)

As-tu essayé de produire ton png avec OOo sans passer par du pdf ?

JBF


LibreOffice : https://fr.libreoffice.org/ (téléchargement, documentation, FAQ, assistance, contribuer, ...)
Aide pour LibreOffice par la communauté francophone : https://ask.libreoffice.org/fr/

Hors ligne

#4 Le 12/01/2008, à 21:31

Autiwa

Re : [Résolu/script] .pdf en .png avec convert (imagemagick)

pour OOc, j'ai pas réussi à  produire du .png directement, j'ai pu faire du .pdf sans perte, je pouvais spécifier la compression .jpg aussi, mais j'ai pas trouvé pour le .png.

Pour convert, ça m'a l'air ça. enfin, ça me propose de spécifier la taille en pixel, dans l'absolu, j'aurais préféré pouvoir spécifier une résolution de 900dpi quelque soit la taille du fichier .pdf (suivant la taille du .pdf, avec le même nombre de pixel, le dpi variera.)

par contre, pour convert, ça m'a l'air ça même si depuis une minute, la commande est toujours en train de tourner et ne m'a toujours pas produit le résultat. Et de plus, j'ai cherché dans les options mais j'ai pas trouvé comment convertir en image indexées avec 256 couleurs... J'ai pensé dans un premier temps que ça serait -index mais rien à  "i" pourtant, ça paraitrait logique que ça existe. dommage que les man soient en anglais.

Alors pour la densité, il s'avère qu'il a pas du tout aimé le 1000x1000, je lui ai mis 250x250 et il arrive à  terminer la commande rapidement.

Merci pour le coup de main. Je rajoute le résolu, je posterais peut-être un script qui fait ça à  la chaà®ne via nautilus script. D'ici là , si quelqu'un trouve comment indexer les couleurs avec une plage de 256 valeurs dans l'éventail incroyable d'options d'imagemagick, je prend. Je vais essayer de m'y plonger.

[edit]J'ai trouvé, c'est l'option -colors $value apparement.
Ma ligne de commande donne :

convert -density 400x400 -colors 256 TP\ Nucléaires\ sem6\ 07-08.pdf nucleaires.png

et version script (nécessite zenity, mais bon, on peut aussi faire sans, celà  dit, je trouve plus pratique, pour savoir quand le script a fini.)

#!/bin/bash
#version 0.1
#Script à  utiliser via nautilus, en faisant clic droit sur un fichier .pdf

path=${NAUTILUS_SCRIPT_SELECTED_FILE_PATHS%/*} #on extrait le dossier dans lequel se trouve le fichier
file=${NAUTILUS_SCRIPT_SELECTED_FILE_PATHS##/*/} #on extrait le nom du fichier
name="${file%.*}" #on extrait le nom du fichier.
#on se place dans le bon répertoire
cd $path

#on converti toutes les pages du .pdf
convert -density 300x300 -colors 256 "$name.pdf" "$name.png"| zenity --progress --text="conversion de $name.pdf en cours" --pulsate --auto-close

[/edit]

Dernière modification par Autiwa (Le 12/01/2008, à 22:29)


Pensez à éditer le titre du sujet (en éditant le premier message) pour rajouter un "[Résolu]" ça évite à ceux qui veulent donner un coup de main, d'ouvrir un sujet où il n'y a plus d'aide à donner.

Hors ligne

#5 Le 27/08/2011, à 07:50

luxigo

Re : [Résolu/script] .pdf en .png avec convert (imagemagick)

-density c'est un bon début, mais le résultat est pas très lisse (dans le cas d'un document scanné en tout cas). Pour résoudre les problèmes de crénelage, il faut utiliser des valeurs plus grandes pour -density afin d'obtenir une image intermédiaire de taille plusieurs fois supérieure à ce que l'on souhaite, puis réduire avec -resize.  C'est le principe du suréchantillonage (supersampling).

Exemple:
Pour convertir les pages de 1 à 10 d'un pdf en noir et blanc, et obtenir une image de la même qualité qu'en visionnant le pdf à 400% il m'a fallu faire:

convert -colorspace Gray -density 1000x1000 fichier.pdf[1-10] -resize 3200x page-%03d.png

(avec 1000x1000 j'obtenais une image de 8500 pixels de large)

Il faut commencer par essayer avec une page (contenant une trame par exemple) et comparer ce qu'on obtient avec ce qu'on voit dans le pdf viewer, puis ajuster la valeur de -resize (on peut aussi indiquer un pourcentage, genre 33%) jusqu'à ce que le résultat soit satisfaisant.

Dernière modification par luxigo (Le 27/08/2011, à 07:53)


Un troll désigne simplement un internaute immature dont la conversation, généralement envahissante, n’est ni très pertinente ni très polie et engendre de nombreuses discussions inutiles.

Hors ligne