Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 20/05/2023, à 16:17

hibiki.tokay

[Résolu] Comment insérer le nom d'un fichier dans une image

Bonjour
J'aimerais insérer le nom du fichier dans une image. j'ai pu constater sur internet que imagemagik savait le faire mais je n'arrive pas à trouver la commande.
Sachant que j'ai environ 6000 photos à traiter comme ça j'aimerais que ça soit automatisable.
Peut-être connaissez-vous une autre méthode qui me permettrait de faire cette action.
Merci

Dernière modification par hibiki.tokay (Le 21/05/2023, à 19:13)


Cooler Master MasterBox Q300L, ASRock B550M Steel Legend, AMD Ryzen 5 5600 , GTX 1050 Ti WINDFORCE, DDR4 32go (Ub22.10)
Portable Lenovo Ideapad Gaming 3 15IHU6 ram32Go, Mvne 2To + 4To + SSD 8To (Ub24.04LTS)
Syno DS1819+ 8x6To (SHR2) et Syno DS1512+ 5x8To (SHR1)

Hors ligne

#2 Le 20/05/2023, à 18:15

ar barzh paour

Re : [Résolu] Comment insérer le nom d'un fichier dans une image

pas testé , date de plusieurs années donc aucune idée de savoir si ça fonctionne
https://forum.ubuntu-fr.org/viewtopic.p … 3#p2513043
[EDIT]
je viens de tester sur une image et ça marche !
[/EDIT]
le script que j'ai utilisé

#!/bin/bash
for each in *.jpg
do
    convert $each -size 10x20 xc:White -background White -append -gravity SouthEast -font NewCenturySchlbk-Italic -pointsize 18 -draw "text 5,5 $each" $each
done

le script inscrit en bas à droite en petits caractères et en italique le nom du fichier !!

Dernière modification par ar barzh paour (Le 20/05/2023, à 19:04)


PC          : B760M DS3H DDR4,  12th Gen Intel(R) Core(TM) i3-12100, RAM DDR4 8GiB -2400 Ubuntu 20.04, 22.04, 24.04 (en test )
Portable1 : ThinkPad P50 I7-6820HQ, 16G0 Ram Ubuntu 22.04 Ubuntu 24.04 , W10-PRO( en voyage )
Portable2 : T5750  @ 2.00GHz RAM 1GiB DDR2 667 Mhz Ubuntu 20.04 ( batterie HS )
stourm a ran war bep tachenn (Angela Duval) ( Je combats sur tous les fronts )

Hors ligne

#3 Le 20/05/2023, à 20:32

jeange

Re : [Résolu] Comment insérer le nom d'un fichier dans une image

Bonsoir,

hibiki.tokay a écrit :

J'aimerais insérer le nom du fichier dans une image

désolé, je comprend pas. hmm


CLEVO W670SZQ  SSD 480Go  i3  Ram 12Go Ubuntu 22.04.4 et 24.04.1 LTS 64bit
Thinkpad X270 nvme 128Go i5 Ram 8Go Ubuntu 24.04 LTS 64bit et W10
Merci de donner les retours avec les balises < > et les allers avec les valises, et toujours pas de raton laveur.
%NOINDEX%

Hors ligne

#4 Le 20/05/2023, à 21:24

cqfd93

Re : [Résolu] Comment insérer le nom d'un fichier dans une image

Bonjour,

En m'inspirant de cette page https://stackoverflow.com/questions/410 … or-similar, j'ai mis un petit script que j'ai appelé annoter.sh dans mon dossier /home/moi/.config/caja/scripts/, le l'ai rendu exécutable et je l'utilise en sélectionnant le paquet de jpgs que je veux annoter et en choisissant scripts/annoter.sh dans le menu contextuel (clic droit).
Le script :

for img in *.jpg; do

   convert                   \
      "${img}"               \
     -fill white             \
     -undercolor '#000000'   \
     -pointsize 36           \
     -gravity southeast      \
     -annotate +0+5 "${img}" \
      "annotee-${img}"

done

cqfd93

Hors ligne

#5 Le 21/05/2023, à 14:18

hibiki.tokay

Re : [Résolu] Comment insérer le nom d'un fichier dans une image

ar barzh paour a écrit :

pas testé , date de plusieurs années donc aucune idée de savoir si ça fonctionne
https://forum.ubuntu-fr.org/viewtopic.p … 3#p2513043
[EDIT]
je viens de tester sur une image et ça marche !
[/EDIT]
le script que j'ai utilisé

#!/bin/bash
for each in *.jpg
do
    convert $each -size 10x20 xc:White -background White -append -gravity SouthEast -font NewCenturySchlbk-Italic -pointsize 18 -draw "text 5,5 $each" $each
done

le script inscrit en bas à droite en petits caractères et en italique le nom du fichier !!

Bonjour et merci pour ton aide.
J'ai testé ce script mais il ne me fait pas ce que tu dis.
En premier j'ai fais l'erreur de ne pas supprimer les espaces donc ça m'a fait un truc bizarre. Puis après avoir remplacé les espaces c’était bien mieux.
J'ai adapté (en tâtonnant car je ne comprend pas tous ce qu'il y a dedans), ça me donne ça

#!/bin/bash
for each in *.jpg
do
    convert $each -size 10x60 xc:White -background White -append -gravity South -font NewCenturySchlbk-Italic -pointsize 40 -draw "text 0,-50 $each" $each
done

Ce qui me permet d'avoir le nom du fichier dans la bande blanche de 60 pixel de haut en bas au centre.
Mais est il possible d'avoir le nom sans l’extension?  et c'est quoi l'argument "-append"?
merci


Cooler Master MasterBox Q300L, ASRock B550M Steel Legend, AMD Ryzen 5 5600 , GTX 1050 Ti WINDFORCE, DDR4 32go (Ub22.10)
Portable Lenovo Ideapad Gaming 3 15IHU6 ram32Go, Mvne 2To + 4To + SSD 8To (Ub24.04LTS)
Syno DS1819+ 8x6To (SHR2) et Syno DS1512+ 5x8To (SHR1)

Hors ligne

#6 Le 21/05/2023, à 14:40

MicP

Re : [Résolu] Comment insérer le nom d'un fichier dans une image

Bonjour

… est il possible d'avoir le nom sans l’extension?  …

#!/bin/bash
for each in *.jpg
do
    convert $each -size 10x60 xc:White -background White -append -gravity South -font NewCenturySchlbk-Italic -pointsize 40 -draw "text 0,-50 ${each%.*}" $each
done

Dernière modification par MicP (Le 21/05/2023, à 14:40)

Hors ligne

#7 Le 21/05/2023, à 14:42

hibiki.tokay

Re : [Résolu] Comment insérer le nom d'un fichier dans une image

MicP a écrit :

Bonjour

… est il possible d'avoir le nom sans l’extension?  …

#!/bin/bash
for each in *.jpg
do
    convert $each -size 10x60 xc:White -background White -append -gravity South -font NewCenturySchlbk-Italic -pointsize 40 -draw "text 0,-50 ${each%.*}" $each
done

Merci
Dernière question (je pense) certain de mes noms de fichier ont une virgule, est il possible de l’intégrer ou dois-je les supprimer?


Cooler Master MasterBox Q300L, ASRock B550M Steel Legend, AMD Ryzen 5 5600 , GTX 1050 Ti WINDFORCE, DDR4 32go (Ub22.10)
Portable Lenovo Ideapad Gaming 3 15IHU6 ram32Go, Mvne 2To + 4To + SSD 8To (Ub24.04LTS)
Syno DS1819+ 8x6To (SHR2) et Syno DS1512+ 5x8To (SHR1)

Hors ligne

#8 Le 21/05/2023, à 14:50

MicP

Re : [Résolu] Comment insérer le nom d'un fichier dans une image

… certain de mes noms de fichier ont une virgule …

Essaye comme ça :

#!/bin/bash
for each in *.jpg
do
    convert $each -size 10x60 xc:White -background White -append -gravity South -font NewCenturySchlbk-Italic -pointsize 40 -draw "text 0,-50 '${each%.*}'" $each
done

Hors ligne

#9 Le 21/05/2023, à 15:21

hibiki.tokay

Re : [Résolu] Comment insérer le nom d'un fichier dans une image

Merci beaucoup.
Je suis toujours obligé de remplacer les espaces mais ça correspond a ce que je voulais. Avant d'appliquer le script je passerais par l'étape renommage en remplaçant les espace par des underscor.

Encore merci

EDIT:  si le nom est long est-il possible du lui faire faire un retour a la ligne?

Dernière modification par hibiki.tokay (Le 21/05/2023, à 16:18)


Cooler Master MasterBox Q300L, ASRock B550M Steel Legend, AMD Ryzen 5 5600 , GTX 1050 Ti WINDFORCE, DDR4 32go (Ub22.10)
Portable Lenovo Ideapad Gaming 3 15IHU6 ram32Go, Mvne 2To + 4To + SSD 8To (Ub24.04LTS)
Syno DS1819+ 8x6To (SHR2) et Syno DS1512+ 5x8To (SHR1)

Hors ligne