web-dev-qa-db-fra.com

Comment exécuter ImageMagick pour convertir uniquement la première page du multipage PDF en JPEG?

Comment exécuter convert d'ImageMagick si je veux un JPEG à partir de la première page uniquement d'un PDF multipage?

55
Vineesh Kalarickal

Si vous utilisez une ligne de commande convert, vous pouvez l'exécuter avec ces paramètres:

convert  source.pdf[0]  output.jpeg

Notez que le nombre de pages d'ImageMagick est basé sur 0. Donc [0] signifie 'page 1'. Pour sélectionner, disons la 4e page, vous devez utiliser [3].

Cette syntaxe ne fonctionne pas seulement pour PDF. Elle fonctionne également avec d'autres formats multipages ou multi-images, tels que le TIFF multipage ou les GIF et PNG multi-images animés.

N'utilisez pas ImageMagick, utilisez Ghostscript. ImageMagick appelle Ghostscript pour faire le travail de toute façon ...

gs -sDEVICE=jpeg -sOutputFile=<output-filename> -dLastPage=1 <input filename>

Vous pouvez également changer le périphérique en jpegcmyk (pour la sortie CMJN) ou jpeggray pour la sortie grise, vous pouvez changer la résolution en utilisant -r, utilisation -dFirstPage et -dLastPage pour extraire une plage continue de pages, etc.

12
KenS

Pour approfondir la réponse de @KenS, voici quelques détails supplémentaires, en particulier pour les utilisateurs de Windows.

Vous pouvez télécharger GhostScript pour Windows ici: http://www.ghostscript.com/download/gsdnld.html . Le chemin d'installation par défaut de l'exécutable est "C:\Program Files\gs\gs910\bin\gswin64c.exe".

Les arguments de ligne de commande répertoriés ci-dessus sont également corrects dans Windows, mais voici quelques autres que j'ai trouvé utiles:

gswin64c.exe -dNOPAUSE -dBATCH -r96 -sDEVICE=jpeg -sOutputFile="<out-file.jpg>"
             -dFirstPage=1 -dLastPage=1 "<input-file.pdf>"

J'ai également créé un fichier batch qui résume bien cela et l'a publié sur mon compte GitHub. Cela facilite également la création de vignettes pour plusieurs fichiers .pdf. Vérifiez-le sur pdf2jpg.bat .

5
wasatchwizard