51 votes

Conversion d'un fichier PDF à une série d'images avec Python

Je suis d'essayer d'utiliser Python pour convertir un PDF multi-pages en une série d'images au format Jpeg. Je peux diviser le fichier PDF en pages individuelles assez facilement avec les outils disponibles, mais je n'ai pas été en mesure de trouver quelque chose qui pouvez convertir des Pdf en fichiers images.

PIL ne fonctionne pas, qu'il ne peut pas lire les fichiers Pdf. Les deux options que j'ai trouvé sont soit en utilisant GhostScript ou ImageMagick à travers la coquille. Ce n'est pas une option viable pour moi, étant donné que ce programme doit être multi-plateforme, et je ne peux pas être sûr que l'un de ces programmes seront disponibles sur les machines, il est installé et utilisé sur.

Toutes les bibliothèques Python sont là-bas qui peut faire cela?

21voto

Adam Rosenfield Points 176408

ImageMagick est bindings Python.

4voto

Franz Points 652

Vous ne pouvez pas éviter l'Ghostscript dépendance. Même Imagemagick s'appuie sur Ghostscript pour ses fonctions de lecture de PDF. La raison pour cela est la complexité du format PDF: un fichier PDF n'est pas seulement contenir des informations d'image bitmap, mais surtout des formes vectorielles, transparents, etc. En outre, il est assez complexe à comprendre lequel de ces objets apparaissent sur la page.

Donc la bonne de rendu d'une Page PDF est clairement hors de portée pour un pur bibliothèque Python.

La bonne nouvelle est que Ghostscript est pré-installé sur de nombreux systèmes windows et Linux, car il est également nécessaire de toutes ces Imprimantes PDF (à l'exception de Adobe Acrobat).

1voto

Jay Points 6999

Si vous utilisez linux, quelques versions viennent avec un utilitaire de ligne de commande appelé "pdftopbm" hors de la boîte. Découvrez netpbm

1voto

mattbasta Points 7377

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X