ImageMagick est un utilitaire de ligne de commande polyvalent et largement utilisé pour convertir des images d'un format à un autre. Il prend en charge plus de 200 formats d'image, notamment JPEG, JPG PNG, GIF, PDF, BMP, SVG, etc. ImageMagick peut être utilisé à diverses fins telles que la rotation d'une image, la transformation d'images, le recadrage d'images, l'ajout de légendes, la modification des couleurs de l'image, l'ajout d'effets spéciaux aux photos et le dessin de lignes, de polygones et d'autres formes dessus. Cet article couvre les commandes de manipulation d'images ImageMagick les plus largement utilisées.
Installer ImageMagick
Exécutez la commande suivante pour installer ImageMagick package pour commencer à convertir des images en plusieurs formats différents :
sudo apt -y install imagemagick
Utiliser ImageMagick
Convertir est un utilitaire de ligne de commande qui fait partie de "ImageMagick ” paquet.
Une fois les packages ImageMagick installés, assurez-vous que l'utilitaire de conversion a également été installé :
convert --version
Liste des formats d'images
ImageMagick peut aider à convertir le format d'image d'un format à un autre, et c'est l'une des tâches les plus précieuses.
Pour répertorier tous les formats pris en charge, utilisez la commande suivante :
convert -list format | more
En plus des formats les plus couramment utilisés tels que BMP (image bitmap dans Microsoft Windows), Graphics Interchange Format (GIF), JPG (format d'image JPEG) et PNG (Progressive Network Graphics), ImageMagick prend en charge une large gamme de types de fichiers supplémentaires, y compris tous les principaux formats vidéo (MKV, MP4, AVI, MOV).
Il peut également convertir EPSF (Encapsulated Postscript) et PDF (Portable Document Format), ce qui est utile dans certaines situations.
Conversion du format d'image
La conversion d'une image d'un format à un autre est simple.
Spécifiez le format dans lequel vous souhaitez convertir votre image :
convertir WindowsImages-016.png Output_Image.jpeg
Vous pouvez convertir tous les *.png
images au format JPEG en utilisant mogrify :
mogrify -format jpeg *.png
Maintenant, essayons avec un dossier contenant plusieurs images .jpeg, et voyons ce qui se passe :
Redimensionner l'image
L'option Redimensionner vous aidera à redimensionner votre image ou à créer rapidement une vignette, par exemple.
Supposons que je souhaite redimensionner mon image avec des dimensions de 25 %, cela générera une nouvelle image avec 25 % de taille :
convert -resize 25% '1. Loops in Python - Flow diagram - for loop.png' '1. Loops in Python - Flow diagram - for loop.png'
Alternativement, vous pouvez également spécifier les dimensions au lieu du pourcentage pour redimensionner votre image :
convert -resize 1024x768 '1. Loops in Python - Flow diagram - for loop.jpg' '1. Loops in Python - Flow diagram - for loop - Resized.jpg'
La commande ci-dessus a redimensionné l'image à 1024 × 768 pixels et l'a enregistrée sous 1. Loops in Python - Flow diagram - for loop - Resized.jpg
fichier.
Recadrer l'image
Si vous avez besoin de supprimer quelque peu du haut ou des côtés de votre image, vous pouvez la recadrer en exécutant la commande ci-dessous :
convert 'Conditionals in Python.png' -crop 640x360+320+180 'Conditionals in Python - Cropped.png'
Ici, pour l'image recadrée Conditionals in Python - Cropped.png
nous avons spécifié des dimensions cibles de 640×480 pixels et le décalage +320+180 pour identifier où le recadrage doit commencer.
Voici une explication graphique de l'opération de recadrage :
Rotation de l'image
Vous pouvez faire pivoter l'image avec l'horloge et dans le sens inverse des aiguilles d'une montre.
Utilisez la commande suivante pour faire pivoter Conditionals in Python - Cropped.png
image dans le sens des aiguilles d'une montre à 90 degrés et enregistrez-la sous Conditionals in Python - Rotated.png
fichier :
convert 'Conditionals in Python - Cropped.png' -rotate 90 'Conditionals in Python - Rotated.png'
Ajouter des légendes à l'image
Vous pouvez ajouter la légende à l'image et définir la couleur, la taille de la police et les options de style du texte.
Utilisez le -dessin possibilité de spécifier la légende entre guillemets simples ou doubles :
convert 'Terminal.png' -pointsize 64 -font helvetica -fill yellow -draw 'text 512,512 "Welcome to ImageMagick"' 'Terminal with text.png'
Combiner plusieurs commandes
Vous pouvez exécuter plusieurs opérations à l'aide d'une seule commande en spécifiant l'orientation, les pixels et la taille de l'image au lieu d'effectuer toutes ces actions séparément si nécessaire :
convert 'Terminal.png' -rotate 90 -crop 1000x600 -resize 25% 'Terminal transformed.png'
Traitement d'images par lots
L'une des opérations les plus courantes consiste à traiter toutes les images d'un répertoire spécifique.
Voyons comment nous pouvons appliquer l'opération de redimensionnement en bloc à toutes les images.
Créez un répertoire nommé "redimensionné".
mkdir resized
Maintenant, vous pouvez exécuter la commande suivante pour redimensionner tous les .jpg
fichiers dans votre répertoire actuel à 25 % de leur taille d'origine et placez les fichiers de résultats dans le resized
sous-répertoire :
find . -name '*.jpg' -print0 | while read -d $'\0' file; do; do convert "$file" -resize 25% resized/"$file"; done
Résumé
ImageMagick est un puissant utilitaire de ligne de commande pour convertir des images d'un format à un autre prenant en charge une large gamme de formats. Il s'agit d'une plate-forme multiplateforme qui fonctionne sur macOS, Linux et Windows. ImageMagick peut vous aider dans diverses tâches, y compris la conversion d'images d'un format à un autre (par exemple :png, jpeg, pdf, gif, MP4, etc.), redimensionner l'image, flouter l'image, ajouter des couleurs et insérer une légende à une image. En outre, la rotation d'une image dans le sens de l'horloge ou dans le sens inverse des aiguilles d'une montre, le recadrage d'images, l'ajout d'effets et bien d'autres fonctionnalités sont disponibles. Dans ce guide, nous avons illustré comment les images manipulent avec Imagemagick pour convertir d'un format à un autre.