Agence web » Actualités du digital » Convertir un PDF en images à partir de la ligne de commande Linux –

Convertir un PDF en images à partir de la ligne de commande Linux –

Shutterstock / Tetiana Yurchenko

La conversion d’un fichier PDF en image peut être effectuée facilement à partir de la ligne de commande Linux en utilisant une seule commande. Découvrez comment installer l’utilitaire, comment l’utiliser et comment automatiser votre configuration.

Quel est poppler-utils ?

Comme indiqué dans l’introduction de cet article, nous devons installer un petit ensemble d’utilitaires nommé poppler-utils pour nous aider à convertir des fichiers PDF en images.

L’ensemble d’utilitaires poppler-utils nous permet de convertir des images en PDF et des PDF en images.

Installation poppler-utils

installation de poppler-utils

À installer poppler-utils sur votre distribution Linux basée sur Debian / Apt (comme Ubuntu et Mint), faites:

sudo apt install poppler-utils

À installer poppler-utils sur votre distribution Linux basée sur RedHat / Yum (comme RedHat et Fedora), faites:

sudo yum install poppler-utils

Conversion de PDF en images

La commande requise est simple et directe:

pdftoppm -png test.pdf test

Avec le pdftoppm commande nous pouvons convertir le PDF en images. Nous spécifions que nous voulons un fichier PNG pour le format de sortie (en utilisant -png) et que notre fichier d’entrée est test.pdf.

Le fichier de sortie que nous spécifions comme test. pdftoppm ajoutera automatiquement un suffixe de numéro de page (comme -1) et une extension (basée sur l’ancien -png option passée).

Le nom du fichier de sortie sera donc test-1.png, comme nous pouvons le vérifier ensuite:

ls test-1.png
eog test-1.png 

pdftoppm conversion d'un fichier pdf en image sur la ligne de commande Linux

Toutes les pages suivantes seraient test-2.png etc. Le eog commande (si eog est installé) ouvrira le fichier pour vous afin que vous puissiez consulter la sortie, bien que vous puissiez utiliser tout autre programme de gestion d’image que vous aimez.

Traitement par lots de fichiers PDF en images

Nous pouvons créer une commande à une ligne pour effectuer un traitement par lots de tous les fichiers PDF avec un nom donné aux images. On pourrait alors simplement ajouter cette ligne à un petit script .sh fichier et automatisez-le davantage, ou nous pouvons simplement l’utiliser en ligne de commande chaque fois que nous avons besoin de convertir une grande quantité de fichiers PDF en images.

ls --color=never test*.pdf | sed 's|.pdf||' | xargs -I{} pdftoppm {}.pdf -png {}

Dans cette commande, nous obtenons d’abord une liste de répertoires pour tous les fichiers PDF dont le nom commence par tester et se termine par .pdf, en utilisant le ls --color=never test*.pdf.

le --color=never est important, car les symboles de codage de couleur de la coque (s’ils sont actifs, comme ils le sont par défaut) peuvent parfois confondre xargs.

Ensuite, nous utilisons un simple sed commande de substitution pour remplacer un point littéral suivi de pdf par rien. En d’autres termes, nous supprimons le .pdf extension de fichier.

Cela nous donne l’avantage de le rajouter ultérieurement uniquement lorsque cela est nécessaire, c’est-à-dire lors de la spécification du fichier d’entrée pour pdftoppm, mais pas lors de la spécification du fichier de sortie pour le même pdftoppm commande, très similaire à notre exemple précédent ci-dessus.

Enfin, nous utilisons xargs pour envoyer chaque nom de fichier pdf (moins le .pdf) à pdftoppm un par un. Nous utilisons le -I option pour xargs ce qui nous permet de spécifier toute entrée reçue (c’est-à-dire les noms de fichiers pdf raccourcis) en utilisant simplement {} dans la commande qui suit.

Comme vous pouvez le voir, notre pdftoppm La commande ressemble maintenant beaucoup au premier exemple, avec chaque nom de fichier pdf individuel en entrée (re-suffixé avec .pdf), et en sortie le nom de fichier pdf sans .pdf.

Exécutons-le:

Automatin de pdftoppm convertissant plusieurs fichiers PDF en images

Cela a bien fonctionné: les trois fichiers PDF, tous d’une page chacun, ont été convertis en trois fichiers individuels .png fichiers (une image par page et dans ce cas par PDF car chaque PDF n’avait qu’une seule page), tous correctement nommés et suffixés correctement.

Comme alternative au -png option, on peut aussi utiliser -jpeg pour générer des fichiers JPEG à la place. Utilisation pdftoppm --help ou man pdftoppm pour voir une liste complète des options.

Emballer

Dans cet article, nous avons vu à quel point il peut être simple et direct de convertir des fichiers PDF en fichiers image, et cela directement depuis la ligne de commande Linux! Nous examinons également un moyen simple d’automatiser ce processus. Prendre plaisir!

★★★★★