2010-09-11 4 views
6

Je souhaite créer des miniatures à partir de fichiers PDF afin de pouvoir afficher un aperçu du fichier PDF sur un site Web.Comment créer des vignettes/captures d'écran de fichiers PDF sur mon serveur Linux?

Je l'ai essayé en utilisant ImageMagick. Malheureusement, les résultats ne sont pas très agréables. Les images résultantes sont très floues.

Exemple Miniature (floue):

Bildschirmfoto 2010-09-11 um 22.57.49.png

PDF d'origine: (voir le commentaire)

Commande: convert -thumbnail x800 k.pdf[0] test.png

est mon commande convert misconfigured Ou connaissez-vous une meilleure façon la réalisation mon but?

+0

PDF Original: http://cl.ly/2aaeab1848c0fc5db5ce – Norwald2

Répondre

5

Votre fichier PDF d'origine est plus petit que la miniature que vous créez. Imagemagick met à l'échelle l'image pour correspondre aux dimensions demandées. Utilisez les paramètres suivants:

convert -scale '800x800+0+0>' -colorspace rgb -strip in.pdf[0] out.png 

Le > de fuite dans le paramètre d'échelle indique Imagemagick de ne pas redimensionner l'image à une plus grande que l'original.

Édition: Imagemagick utilise Ghostscript pour générer des fichiers PDF. Vous pouvez utiliser Ghostscript directement si vous avez besoin de définir certains paramètres, comme la résolution pour obtenir une meilleure image. La résolution par défaut est 72 DPI, ce qui signifie qu'un papier A4 a une taille de 595 x 841 pixels. Avec 150 DPI vous aurez deux fois le nombre de pixels. Par exemple.

gs -q -dBATCH -dNOPAUSE -sDEVICE=pngalpha -dMAxBitmap=500000000 -dAlignToPixles=0 -dGridFitTT=0 -r150x150 -sOutputFile=out.png in.pdf 

La commande ci-dessus est presque identique à celle utilisée par Imagemagick. Notez le paramètre -r qui définit la résolution de 150 DPI. Vous pouvez utiliser ImageMagick pour redimensionner l'image résultante à une taille plus petite.

L'utilisation d'une résolution plus élevée réduit le flou lors du redimensionnement de l'image.

+0

Merci! Mais il y a toujours une énorme différence. PDF: http://cl.ly/2aafb79d30d263fe783b Image: http://cl.ly/f76642c45fbd45532789 – Norwald2

+0

J'ai mis à jour la réponse avec la commande GS pour obtenir une meilleure résolution de votre pdf. Notez que la capture d'écran PDF et l'image résultante sont de taille différente. Si je convertis la première image à la même largeur que la deuxième image, l'image résultante est également floue. Vous pouvez réduire le flou (certains) en utilisant une image source de plus haute résolution. Il est également utile si vous créez des images de 800 pixels de large, car A4 à 72 DPI est de 595 pixels. – jmz

3

Vous pouvez simplement utiliser Google Docs.

https://docs.google.com/viewer?a=bi&pagenumber=1&url=http://.../sample.pdf 
+0

très cool, fonctionne aussi avec les fichiers rtf/doc –

Questions connexes