Aujourd’hui, les grandes entreprises et administrations publiques hésitent entre continuer à utiliser des logiciels propriétaires ou basculer vers les Logiciels Libres. Pourtant, la plupart des logiciels libres sont capables de bien traiter les données issues des logiciels propriétaire, et parfois avec une meilleur compatibilité.
C’est alors la barrière de la prise en main qui fait peur, et pourtant...
Les logiciels libres
L’aspect « Logiciel Libre » permet une évolution rapide et une plus grande participation des utilisateurs. Les aides et tutoriels foisonnent sur Internet ou sont directement inclus dans le logiciel lui-même.
Enfin, les concepteurs sont plus proches des utilisateurs, ce qui rend les logiciels libres plus agréable à utiliser et conviviaux.
Grâce à la disponibilité des logiciels libres, vous trouverez facilement des services de support techniques et la licence n’est plus un frein à l’utilisation de ces logiciels par votre personnel.
Notre support technique concerne essentiellement les logiciels libres, que ce soit sous forme de services ponctuels ou de tutoriels.
- Décembre 2023 -
convert est un outil en ligne de commande utilisé pour convertir des formats d’image ou redimensionner des images et effectuer d’autres manipulations d’image. Il fait parti de la suite d’outils de traitement d’images ImageMagick.
C’est un outil de manipulation d’images extrêmement puissant qui offre de nombreuses options de géométrie.
Vous avez besoin de convertir des images en ligne de commandes sur Linux ?
Ce tutoriel vous apprends à la commande convert pour convertir ou redimensionner des images avec des exemples.
Comment convertir des images sur Linux avec convert
La suite imagemagick n’est probablement pas installée par défaut dans votre distribution Linux.
Pour l’installer :
sudo apt-get install imagemagick
Voici la syntaxe :
convert <options> <sourceimage> <imageconvertie>
Par exemple pour convertir le fichier Linux.png en JPEG :
convert Linux.png Linux.jpg
En cas de doute sur le format de l’image, utilisez la commande file :
Comment redimensionner des images sur Linux avec convert
L’utilitaire convert vous donne aussi la possibilité de modifier la taille d’une image.
Mais surtout elle propose une gamme d’options très large faisant de lui, un outil puissant de manipulation d’images.
Pour redimensionner une image, on utilise l’option -resize en spécifiant l’image source et la destination.
Ainsi l’image originale n’est pas altérée mais une version modifiée est créée.
convert -resize <argument> image-source.png image-redimensionnee.jpg
Vous pouvez spécifier directement les tailles en pixel ou hauteur-x-largeur.
Par exemple, pour redimensionner une image à 50% :
convert -resize 50% image-source.png image-redimensionnee.jpg
Pour redimensionner une image en spécifiant la taille de l’image :
convert image-source.png -resize 200x100 image-redimensionnee.jpg
De nombreux opérateurs sont disponibles.
Si vous le souhaitez, vous pouvez forcer “-resize” à ignorer le rapport hauteur/largeur et à déformer l’image de manière à ce qu’elle génère toujours une image ayant exactement la taille spécifiée. Pour ce faire, il suffit d’ajouter le caractère ! à la taille.
convert image-source.gif -resize 64x64\ ! image.gif
Vous pouvez également ajouter ^ aux dimensions pour indiquer à ImageMagick que vous souhaitez redimensionner l’image pour qu’elle remplisse les dimensions, avec éventuellement un chevauchement d’un côté.
L’une des deux dimensions (largeur ou hauteur) sera mise à l’échelle exactement, tandis que l’autre sera mise à l’échelle proportionnellement et pourra se chevaucher :
convert image-originale.png -resize 100x100^ nouvel-image.png
Une autre option couramment utilisée consiste à réduire les images que pour les adapter à la taille indiquée. Jamais d’agrandissement. Il s’agit de l’option de redimensionnement “>”. Pensez qu’elle n’applique le redimensionnement qu’aux images “supérieures” à la taille indiquée (c’est un peu contre-intuitif).
convert image-source.gif -resize 64x64> image.gif
Le symbole @ redimensionne une image pour qu’elle ne contienne pas plus que le nombre de pixels donné. Cette fonction peut être utilisée, par exemple, pour donner à une collection d’images de tailles différentes une taille à peu près identique. Par exemple, nous redimensionnons nos deux images à une taille approximative de 64×64, soit 4096 pixels.
convert image-source.gif -resize 4096@ image.gif
Voici un résume des options de géométrie que vous pouvez utiliser.
La liste complète est disponible sur ce lien : https://legacy.imagemagick.org/script/command-line-options.php?#geometry
Taille | Description |
---|
échelle% | La hauteur et la largeur sont mises à l’échelle selon le pourcentage spécifié. |
échelle-x%échelle-y% | La hauteur et la largeur sont mises à l’échelle individuellement en fonction des pourcentages spécifiés. (Un seul symbole % est nécessaire.) |
largeur | Largeur donnée, hauteur sélectionnée automatiquement pour préserver le rapport hauteur/largeur. |
xheight | Hauteur donnée, largeur sélectionnée automatiquement pour préserver le rapport hauteur/largeur. |
largeurxhauteur | Les valeurs maximales de la hauteur et de la largeur sont données, le rapport d’aspect est préservé. |
largeurxhauteur^ | Les valeurs minimales de la largeur et de la hauteur sont données, le rapport d’aspect est préservé. |
largeurxhauteur! | La largeur et la hauteur sont indiquées avec insistance, le rapport d’aspect original n’est pas pris en compte. |
largeurxhauteur> | Réduit une image dont les dimensions sont supérieures aux paramètres de largeur et/ou de hauteur correspondants. |
largeurxhauteur< | Agrandit une image dont les dimensions sont inférieures aux paramètres de largeur et/ou de hauteur correspondants. |
zone@ | Redimensionne l’image pour qu’elle ait la surface spécifiée en pixels. Le rapport d’aspect est préservé. |
x:y | Ici, x et y représentent un rapport d’aspect (par exemple, 3:2 = 1,5). |
{taille}{offset} | Spécification du décalage (la valeur par défaut est +0+0). Ci-dessous, {taille} fait référence à l’une des formes ci-dessus. |
{taille}{+-}x{+-}y | Décalages horizontal et vertical x et y, spécifiés en pixels. Les signes sont nécessaires pour les deux. Les décalages sont affectés par le paramètre -gravité. Les décalages ne sont pas affectés par % ou d’autres opérateurs de taille. Notez que les décalages X et Y positifs sont dans la direction intérieure vers le centre de l’image pour toutes les options -gravité, à l’exception de “centre”. Pour l’Est, +X est à gauche. Pour le Sud, +Y est vers le haut. Pour Sud-Est, +X est à gauche et +Y est en haut. Pour le centre, la convention normale de direction X et Y est utilisée (+X est à droite et +Y est en bas). |
Les arguments géométrie de la commande -resize de convert
Vous pouvez avoir besoin de recadrer l’image pour qu’elle ne se chevauche pas.
convert original.png -resize 100x100^ -gravity center -extent 100x100 nouveau.png
Options de géométrie | Description |
-scale | Réduire / agrandir l’image avec la moyenne des blocs de pixels et la réplication des pixels, respectivement Modifier la taille de l’image en remplaçant simplement des pixels en faisant la moyenne des pixels lors de la réduction ou en remplaçant des pixels lors de l’agrandissement |
-crop | Découpe une ou plusieurs régions rectangulaires de l’image |
-gravity | Définit la suggestion de gravité actuelle pour divers autres paramètres et options |
-extent | Définir la taille et le décalage de l’image |
| |
Les options de géométrie de convert
Comment convertir ou redimensionner des images par lot sur Linux
Avec xargs
xargs vous permet de construire et exécuter des lignes de commandes à partir de l’entrée standard.
On peut l’utiliser pour récupérer une liste de nom de l’image en entrée et fournir le nom de l’image avec le format souhaité à convert.
Ici la principale difficulté est de récupérer le nom de l’image en argument mais en retirant l’extension de départ.
Par exemple, pour convertir des images par lot de PNG vers JPG :
ls -1 *.png | xargs -n 1 bash -c 'convert "$0" "${0%.png}.jpg"'
La même chose mais pour convertir des images par lot de JPG en PNG :
ls -1 *.jpg | xargs -n 1 bash -c 'convert "$0" "${0%.jpg}.png"'
Les explications :
- La commande ls liste les images png ou jpg. L’option -1 permet de les lister une image par ligne
- Puis on passe la liste à xargs qui permet de l’utiliser comme argument : L’option -n – spécifie le nombre maximum d’arguments, qui est de 1 dans le cas présent
- On passe les arguments à la commande bash. L’option -c – demande à bash d’exécuter la commande donnée
- Enfin ${0%.png}.jpg – définit le nom de la nouvelle image convertie, le signe % permet de supprimer l’ancienne extension de fichier
Avec la boucle for
La boucle for itère sur une liste d’éléments et exécute l’ensemble des commandes données.
On peut donc l’utiliser pour boucler sur une liste de fichiers images que l’on passe à convert pour changer le format d’image.
Pour convertir des images PNG en JPG :
bash -c 'for image in *.png; do convert "$image" "${image%.png}.jpg"; echo “image $image converted to ${image%.png}.jpg ”; done'
Pour convertir des images JPG en PNG :
bash -c 'for image in *.jpg; do convert "$image" "${image%.jpg}.png"; echo “image $image converted to ${image%.jpg}.png ”; done'
Voici les explications :
- -c permet d’exécuter l’instruction de la boucle for entre guillemets simples
- La variable image est un compteur du nombre d’images dans le répertoire
- Pour chaque opération de conversion, la commande echo informe l’utilisateur qu’une image png a été convertie au format jpg et vice-versa dans la ligne $image convertie en ${image%.png}.jpg“
- “${image%.png}.jpg” crée le nom de l’image convertie, où % supprime l’extension de l’ancien format d’image
Avec Parallel
GNU Parallel est un outil shell qui vous permet d’exécuter plusieurs commandes ou scripts en parallèle sur plusieurs ressources informatiques. Cela peut améliorer considérablement les performances des tâches qui peuvent être divisées en unités indépendantes, telles que le traitement de grands ensembles de données ou la copie de fichiers.
La syntaxe pour l’utiliser avec convert est la suivante :
parallel convert '{}' '{.}.<extension destination>' ::: *.<extension source>
- {} – ligne d’entrée qui est une chaîne de remplacement substituée par une ligne complète lue à partir de la source d’entrée
- {.} – ligne d’entrée moins l’extension
- :: : – spécifie la source d’entrée, c’est-à-dire la ligne de commande pour l’exemple ci-dessus où *png ou *jpg est l’argument.
Pour convertir des images par lot de PNG vers JPG :
parallel convert '{}' '{.}.jpg' ::: *.png
Pour convertir des images par lot de JPG vers PNG :
parallel convert '{}' '{.}.png' ::: *.jpg
L’article Convert Linux : convertir, redimensionner des images est apparu en premier sur malekal.com.
site informatique Windows 11, Windows 10, Virus et Linux (Ubuntu, Debian)
Utiliser Tmux sur Linux avec des exemples
- 16 août -
Les administrateurs système doivent souvent travailler sur plusieurs consoles et apprécient donc de pouvoir passer de l’une à l’autre en un clin (...)
Installer VirtualBox sur Ubuntu ou Debian
- 13 janvier -
VirtualBox est un gestionnaire de machines virtuelles open source.Il est donc disponible dans la plupart des distributions Linux et notamment (...)
Les notifications d’Ubuntu : les afficher, les désactiver
- 7 janvier -
Ubuntu, comme tout système d’exploitation moderne, possède un mécanisme de notification.Le système ou des applications peuvent afficher des (...)
ACPI BIOS Error dans Ubuntu
- 6 janvier -
Lors du démarrage de votre PC en Ubuntu, vous pouvez apercevoir un message d’erreur : ACPI BIOS Error (bug) : Could not resolve sympbol, (...)
Linux : redimensionner des images
- Décembre 2023 -
Vous avez besoin de redimensionner des images sous Linux mais vous ne savez pas par où commencer.Que vous soyez en graphique ou en terminal, il (...)