Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
imagemagick [Le 23/07/2023, 16:44]
bcag2 [Convert] -colorspace Grey
imagemagick [Le 06/10/2025, 09:13] (Version actuelle)
bcag2 [Installation] en appimage (pour avoir la version 7)
Ligne 12: Ligne 12:
  
 ===== Installation ===== ===== Installation =====
 +==== Dépôts officiels APT ====
 Il vous suffit, pour cela, d'​[[:​tutoriel:​comment_installer_un_paquet|installer le paquet]] **[[apt>​imagemagick]]**. Il vous suffit, pour cela, d'​[[:​tutoriel:​comment_installer_un_paquet|installer le paquet]] **[[apt>​imagemagick]]**.
 +
 +==== Appimage ====
 +
 +Pour disposer d’une version plus récente, vous pouvez installer son **[[:​Appimage]]** référez-vous avant tout au [[:​appimage#​installer_un_appimage|chapitre dédié]] au sujet.
 +
 +En résumé téléchargez le fichier [[https://​imagemagick.org/​archive/​binaries/​magick]],​ puis [[:​permissions#​modifier_les_permissions|rendez-le exécutable]] (clic droit sur le fichier -> //​Propriétés//​ -> //​Permissions//​ -> //Autoriser l’exécution//​). Finalement lancez-le en double-cliquant dessus.\\ ​
 +Vous pouvez utiliser un service tel que **[[:​appimage#​go_appimageappimaged|appimaged]]** pour créer automatiquement un [[:​raccourci-lanceur|lanceur]].
 +
 +Dans le texte au regard du lien de téléchargement,​ il est recommandé de mettre en place des règles (//​police//​) de sécurité.
 +<code bash>
 +# vérification de la police de sécurité (dans le répertoire où se trouve le fichier magick :
 +./magick -list policy
 +# doit retourner un texte comprenant :
 +Policy: Undefined
 +    rights: None
 +</​code>​
 +
 +Le fichier de police doit être déposé dans ///​home/​$USER/​.config/​ImageMagick//​.\\
 +Créer d'​abord le répertoire pour recevoir ce fichier :
 +<code bash>
 +mkdir /​home/​$USER/​.config/​ImageMagick
 +</​code>​
 +Différentes versions sont disponibles à [[https://​imagemagick.org/​script/​security-policy.php|la page de détails sur les polices de sécurité]].
 +Puis, faire un click-droit sur celle qui vous convient (par exemple //​secure//​),​ puis //​enregistrer la cible du lien sous// puis sélectionner le chemin vers le répertoire créé précédemment.\\
 +Il faut enfin le renommer
 +<code bash>
 +mv /​home/​$USER/​.config/​ImageMagick/​policy-secure.xml /​home/​$USER/​.config/​ImageMagick/​policy.xml
 +</​code>​
 +
 +
  
 ===== Les différents outils ===== ===== Les différents outils =====
Ligne 72: Ligne 102:
   * découper une image comme avec un emporte-pièce. Les paramètres largeur et hauteur servent à fixer la largeur et la hauteur de l'​image finale (dans la limite des dimensions de l'​image originale), les paramètres //x// et //y// servent à localiser le coin supérieur gauche de l'​image finale par rapport au coin supérieur gauche de l'​image initiale. Pour découper une image de 50 px de largeur et de 100 px de hauteur, située à 10 px du bord gauche et à 20 px du bord supérieur de « initial.png » : <code bash>​convert -crop 50x100+10+20 ​ initial.png ​ final.jpg</​code>​   * découper une image comme avec un emporte-pièce. Les paramètres largeur et hauteur servent à fixer la largeur et la hauteur de l'​image finale (dans la limite des dimensions de l'​image originale), les paramètres //x// et //y// servent à localiser le coin supérieur gauche de l'​image finale par rapport au coin supérieur gauche de l'​image initiale. Pour découper une image de 50 px de largeur et de 100 px de hauteur, située à 10 px du bord gauche et à 20 px du bord supérieur de « initial.png » : <code bash>​convert -crop 50x100+10+20 ​ initial.png ​ final.jpg</​code>​
   * découper une image de dimensions ​ 55 × 110 en 18 morceaux, 10 morceaux de 20 × 20, 2 morceaux de 20 × 10, 5 morceaux de 15 × 20 et 1 morceau de 15 × 10. En effet, si //x// et //y// sont omis, l'​image est intégralement découpée en morceaux de dimensions hauteur×largeur,​ la découpe se faisant de gauche à droite et de haut en bas, à partir du coin supérieur gauche (il est possible de remplacer hauteur×largeur et //x// et //y// par un % de la largeur. //x// et //y// peuvent être négatifs, dans ce cas le point de départ de la découpe se fera en dehors de l'​image d'​origine,​ seule la partie correspondant à des pixels de l'​image d'​origine étant restituée). Les parties les plus à droite et les plus en bas peuvent être de dimensions inférieures à la taille de la découpe pour s'​adapter à la dimension de l'​image initiale : <code bash>​convert -crop 20x20 initial.jpg final.jpg </​code>​   * découper une image de dimensions ​ 55 × 110 en 18 morceaux, 10 morceaux de 20 × 20, 2 morceaux de 20 × 10, 5 morceaux de 15 × 20 et 1 morceau de 15 × 10. En effet, si //x// et //y// sont omis, l'​image est intégralement découpée en morceaux de dimensions hauteur×largeur,​ la découpe se faisant de gauche à droite et de haut en bas, à partir du coin supérieur gauche (il est possible de remplacer hauteur×largeur et //x// et //y// par un % de la largeur. //x// et //y// peuvent être négatifs, dans ce cas le point de départ de la découpe se fera en dehors de l'​image d'​origine,​ seule la partie correspondant à des pixels de l'​image d'​origine étant restituée). Les parties les plus à droite et les plus en bas peuvent être de dimensions inférieures à la taille de la découpe pour s'​adapter à la dimension de l'​image initiale : <code bash>​convert -crop 20x20 initial.jpg final.jpg </​code>​
-  * convertir une image couleur en niveau de gris : <code bash>​convert -colorspace ​Grey initial.jpg final.jpg</​code>​+  * convertir une image couleur en niveau de gris : <code bash>​convert -colorspace ​Gray initial.jpg final.jpg</​code>​
   * transformer un dossier d'​images : <code bash>​convert *.BMP -set filename:f '​%t.png'​ +adjoin '​%[filename:​f]'</​code>​   * transformer un dossier d'​images : <code bash>​convert *.BMP -set filename:f '​%t.png'​ +adjoin '​%[filename:​f]'</​code>​
   * créer une image unie (par exemple pour y superposer des images de dimensions différentes) : <code bash>​convert -size 2450x4780 xc:blue image.png</​code>​   * créer une image unie (par exemple pour y superposer des images de dimensions différentes) : <code bash>​convert -size 2450x4780 xc:blue image.png</​code>​
 +  * créer une image transparente (par exemple pour y coller d'​autres éléments) : <code bash>​convert -size 840x600 ​ -colorspace RGB xc:none image-transp.png</​code>​
 +<note tip>​Fixer l'​espace de couleur par -colorspace peut se révéler utile pour ultérieurement coller cette image transparente dans des images au profil de couleur différent, à défaut l'​espace de couleur est en niveaux de gris qui peut être incompatible avec des images colorées.</​note>​
 ==== Mogrify ==== ==== Mogrify ====
  
Ligne 414: Ligne 446:
 Donc **[[apt>​librsvg2-bin]]** pour le support des images svg. Donc **[[apt>​librsvg2-bin]]** pour le support des images svg.
  
-==== J'​obtiens une erreur de cache ====+==== J'​obtiens une erreur de cache, width or height ​====
 Erreur du type: Erreur du type:
 <​code>​convert-im6.q16:​ DistributedPixelCache '​127.0.0.1'​ @ error/​distribute-cache.c/​ConnectPixelCacheServer/​244</​code>​ <​code>​convert-im6.q16:​ DistributedPixelCache '​127.0.0.1'​ @ error/​distribute-cache.c/​ConnectPixelCacheServer/​244</​code>​
Ligne 430: Ligne 462:
 sudo sed -i '​s/​name="​memory"​ value="​256MiB"/​name="​memory"​ value="​512MiB"/'​ /​etc/​ImageMagick-6/​policy.xml sudo sed -i '​s/​name="​memory"​ value="​256MiB"/​name="​memory"​ value="​512MiB"/'​ /​etc/​ImageMagick-6/​policy.xml
 sudo sed -i '​s/​name="​disk"​ value="​1GiB"/​name="​disk"​ value="​2GiB"/'​ /​etc/​ImageMagick-6/​policy.xml sudo sed -i '​s/​name="​disk"​ value="​1GiB"/​name="​disk"​ value="​2GiB"/'​ /​etc/​ImageMagick-6/​policy.xml
 +</​code>​
 +
 +Pour une erreur //width or height// (j'​avais une image de 7803x19208) ((https://​askubuntu.com/​a/​1484930/​385361)):​
 +<file - /​etc/​ImageMagick-6/​policy.xml>​
 +<policy domain="​resource"​ name="​width"​ value="​24KP"/>​ <!-- default 16KP -->
 +<policy domain="​resource"​ name="​height"​ value="​24KP"/>​ <!-- default 16KP -->
 +</​file>​
 +j'ai eu ensuite l'​erreur cache et j'ai dû monter "​disk"​ à 3GiB (cf. ci-dessus)
 +
 +==== Quelle est ma version d'​imagemagick ? ====
 +Pour connaître sa version d'​Imagemagick,​ saisir en console :
 +<​code>​
 +$ identify -version
 +</​code>​
 +ou (pour imagemagick 7) :
 +<​code>​
 +$ magick identify -version
 </​code>​ </​code>​
 ===== Voir aussi ===== ===== Voir aussi =====
  
-  * [[http://​www.imagemagick.org/​script/​command-line-tools.php|Site officiel]] **(en)**+  * [[https://​legacy.imagemagick.org/​|Site officiel imagemagick LEGACY]] **(en)** 
 +  * [[https://​www.imagemagick.org/​script/​command-line-tools.php|Site officiel]] **(en)** 
 +  * [[https://​legacy.imagemagick.org/​Usage|De nombreux exemples LEGACY]] **(en)**
   * [[http://​www.imagemagick.org/​Usage|De nombreux exemples]] **(en)**   * [[http://​www.imagemagick.org/​Usage|De nombreux exemples]] **(en)**
   * [[http://​www.fmwconcepts.com/​imagemagick/​multicrop2/​index.php|Pour aller plus loin : de nombreux scripts pour Imagemagick]] **(en)**   * [[http://​www.fmwconcepts.com/​imagemagick/​multicrop2/​index.php|Pour aller plus loin : de nombreux scripts pour Imagemagick]] **(en)**
  • imagemagick.1690123495.txt.gz
  • Dernière modification: Le 23/07/2023, 16:44
  • par bcag2