Veille technique

Imagemagick, un utilitaire pour manipuler les images

2 novembre 2026

astuce, image

Résumé

Imagemagick est un (super) utilitaire open source en ligne de commande pour manipuler des images. Il permet de convertir des images en différents formats ou encore de les redimensionner. Grâce à cet utilitaire, il est possible de traiter la totalité d’un dossier iconographique en une seule ligne de commande ! Dans ce billet, nous présentons quelques fonctionnalités et cas d’usage courants d’Imagemagick.

Site web: https://imagemagick.org

Installation

Choisir la méthode selon votre système d’exploitation:

  1. Windows: télécharger l’exécutable https://imagemagick.org/download/#windows.
  2. MacOS: saisir les commandes suivantes brew install imagemagick, puis brew install ghostscript
  3. Linux: télécharger et installer l’AppImage https://imagemagick.org/download/#linux ou saisir la ligne de commande sudo apt install imagemagick
  4. OpenBSD: saisir la commande suivante pkg_add ImageMagick.

Note: vérifier votre installation en saisissant la commande suivante magick --version. Si la commande retourne une phrase du type command not found: magick, c’est que l’installation n’est pas réussie. Au contraire, si vous lisez un numéro de version, c’est que l’installation s’est bien déroulée ! Vous pouvez dorénavant utiliser ImageMagick pour manipuler vos images.

Anatomie des commandes magick

Les lignes de commande que l’on peut saisir avec l’utilitaire magick reprennent toutes la même structure:

$ 'Nom de l'utilitaire' 'Nom(s) du(es) fichier(s) à modifier' 'Paramètre(s) à passer à l'image' 'Nom du fichier de sortie'

Par exemple, pour une simple conversion du format .jpg au format .png, nous pouvons utiliser la commande suivante:

$ magick mon-image.jpg mon-image.png

Cette commande se lit de la manière suivante:

  1. Appel de l’utilitaire magick
  2. Prendre comme fichier d’entrée mon-image.jpg
  3. Produire en sortie mon-image.png

Grâce aux extensions des images déclarées dans la commande, magick opère la conversion du format .jpg vers le format .png.

De façon un peu plus détaillée, les commandes de magick peuvent être composées des éléments (dans l’ordre) suivant:

  1. Un ou plusieurs nom(s) de fichier en entrée (obligatoire)
  2. Zéro, un ou plusieurs paramètres d’image persistent
  3. Zéro, un ou plusieurs opérateurs d’image immédiats
  4. Zéro, un ou plusieurs opérateurs de séquence d’images
  5. Zéro, un ou plusieurs ensembles d’images isolés (entre parenthèses)
  6. Zéro ou un nom de fichier d’image de sortie

Quelques exemples

Informations préliminaires

Pour tous les exemples, nous partons du principe que le terminal est positionnée dans le répertoire où se situent les images. Pour vérifier où est-ce que votre terminal est positionnée, saisissez la commande pwd (print working directory). Le retour de la commande vous donne le chemin absolu de l’endroit où votre terminal se situe depuis la racine de l’utilisateur.

Pour vous déplacer jusqu’à votre dossier de travail contenant les images, vous pouvez utiliser la commande cd (change directory) en spécifiant le chemin pour arriver jusqu’à votre dossier.

Pour aller jusqu’à un dossier:

$ cd Documents/MonVolume/Images/

Pour revenir dans un dossier parent:

$ cd ../
# Vérifiez avec la commande pwd que le résultat vous amène bien à Documents/MonVolume/

Convertir une image d’un format à un autre

Si vous avez reçu une image au format .jpg et que vous souhaitez l’utiliser au format .png

$ magick mon-image.jpg mon-image.png

Convertir plusieurs images en une seule commande

Jusqu’à maintenant, les commandes avec magick ne permettent de ne produire qu’une seule image en sortie. Pour traiter plusieurs images en une seule fois (cela fonctionne pour autant d’images que souhaité), il faut utiliser l’utilitaire magick mogrify qui permet initialement de modifier et d’écraser directement le fichier passé en entrée sans créer un nouveau fichier une fois la transformation appliquée.

Si l’on demande à magick mogrify de changer le format de toutes les images d’un dossier, par exemple du format .png au format .jpg, il suffit de lui passer le paramètre -format jpg et d’utiliser un joker (*) pour désigner tous les fichiers *.png présents dans le dossier de travail

Petite subtilité avec cette commande, contrairement aux commandes précédentes avec magick, on remarque que dans ce cas-ci le nom du fichier produit n’est pas précisé dans la commande. En effet, la commande va reprendre les noms déjà existants des images .png et les appliquer automatiquement aux fichiers créés au format .jpg.

La commande ressemble donc à:

$ magick mogrify -format jpg *.png

Redimensionner une image

Pour plus d’informations, consulter la page https://usage.imagemagick.org/resize/

Le redimensionnement d’une image est une tâche qui peut s’avérer complexe, notamment du fait de la déformation des images lors de cette opération. Aussi, ImageMagick ne produit pas une nouvelle image à la taille souhaitée, il élargit ou réduit une image pour qu’elle rentre dans les dimensions souhaitées en respectant au mieux les ratio de l’image pour ne pas la déformer.

Pour effectuer cette opération, il suffit d’utiliser l’opérateur -resize à l’intérieur de la ligne de commande.

$ magick mon-image.png -resize 64x64  mon-image-64x64.png

Une autre option couramment utilisée consiste à limiter ImageMagick de manière à ce qu’il ne fasse que réduire les images pour les adapter à la taille indiquée. Il ne les agrandit jamais. Il s’agit de l’option de redimensionnement >. Il faut comprendre qu’elle n’applique le redimensionnement qu’aux images “supérieures à” la taille indiquée (ce qui est un peu contre-intuitif). On ajoute un anti-slash devant l’option pour échapper le caractère (pour éviter que ce caractère soit interprété d’une autre manière par le terminal).

$ magick mon-image.png -resize 64x64\>  mon-image-64x64.png

Redimensionner plusieurs images

De la même façon que pour les conversions multiples, nous utilisons mogrify pour redimensionner toutes les images contenues dans un même répertoire.

La commande suivante permet de redimensionner les images en 64x64 en écrasant toutes les images au format .png contenues dans le dossier de travail:

$ magick mogrify -resize 64x64\> *.png

Si vous souhaitez que les images redimensionnées soient positionnées dans un autre dossier (existant) il suffit d’ajouter l’option -path à la commande avec le chemin désiré:

note: si le dossier de réception n’existe pas, saisir la commande mkdir nom-de-mon-dossier (ce nom peut être changé en utilisabnt les mêmes conventions de saisie des chemin que pour les commandes cd et pwd vu précédemment.).

$ magick mogrify -resize 64x64\> -path nom-de-mon-dossier *.png

Redimensionner et convertir plusieurs images en même temps

Toutes les opérations que vous avons vu jusqu’à maintenant peuvent être combinées dans une seule ligne de commande. Vous pouvez dès lors redimensionner et convertir toutes vos images en une seule fois.

Par exemple, la commande suivante va traiter toutes les images au format .jpg, les redimensionner en 800x600 si elles sont plus grandes, les convertir au format .png et les placer dans le sous-dossier de mon répertoire de travail images-png/.

$ magick mogrify -resize 800x600\> -format png -path images-png *.jpg

Pour plus d’informations

Ces exemples ne présentent que deux opérations possibles avec ImageMagick, convertir et redimensionner les images.

Pour plus d’informations, il faut consulter les pages web d’imagemagick:

Accessibilité

Taille du texte

AccueilAstuces & veille