• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] ImageMagick und der Text

durin

Member
Hallo Forum,
ich hab in einem Verzeichniss 100 Bilder. Nun möchte ich in jedes einen Text unten einfügen. Die URL meiner Hp.

Nun geh ich mit der Konsole in das Verzeichniss und schreib:

Code:
convert  dsc01.jpg -font Courier -pointsize 30 -gravity south -annotate 0 ' testfest ' hans.jpg

Dann erstellt der mir aus meinem dsc01.jpg ein Bild namens hans.jpg mit dem Text unten testfest

Nun zum Problem. Ich komm nicht drauf, was ich schreiben muss, dass ich alle Bilder den Text einfüge und der mir nicht nochmal jedes Bild schreibt?

Mit:
Code:
convert  * -font Courier -pointsize 30 -gravity south -annotate 0 ' testfest ' *

gehts jedenfalls nicht....

Lieber Gruss
Durin[/code]
 
OP
D

durin

Member
ich kann das anhand meines problems leider nicht für mich umlegen
mein fakt ist der
ich hab hier in dem order bilder 100 stück
da soll nur unten ein text rein der sagt testfest
mehr schon nicht
die bilder sind alle 400px x 300px und unten soll das in Courier stehen
das was da auf deinem link folgt, kann ich mir leider so nicht zusammenbauen?
hast du noch einen tipp?
lieber gruss
durin

Code:
durin@linux:~> ls -l *.jpg do convert -font Courier -pointsize 30 -fill white -draw "text 100,100 'test.url'" "$file" "*"$file"'"; done
bash: syntax error near unexpected token `done'

geht z.b. nicht.
ich weiss auch nicht das das $file bedeutet? hm?
 

cero

Guru
Wechsel mal auf der Konsole in das Verzeichnis mit den Bildern und
probier es mal so:
Code:
ls -1 *.jpg | while read file; do convert -font Courier -pointsize 30 -fill white -draw "text 100,100 'testfest'" "$file" "`basename Wasserzeichen_"$file"`"; done

Mach vorher aber ein Backup deiner Bilder, fals mal etwas schief gehen sollte.
 
OP
D

durin

Member
gut ich versuch das gleich mal.
vorab aber was, was ist das mit dem basename Wasserzeichen_ ? ich hab nix mit wasserzeichen?

lieber gruss
durin
 
OP
D

durin

Member
Code:
durin@linux:~/Desktop/Neuer Ordner/thumbs> ls -1 *.jpg |while read file; do convert -font Courier -pointsize 30 -fill white -draw "text 100,100 'testfest'" "$file" "`basename Wasserzeichen_"$file"`"; done
durin@linux:~/Desktop/Neuer Ordner/thumbs>

so ist das nun gegangen aber stopp
jetzt hab ich alle bilder doppelt. er hat aus bild1 quasi wasserzeichen_bild1 gemacht
was nun? ich will ja keine neuen files?
der soll mir ja die schrift in die vorhandenen machen?
lieber gruss
durin
 
OP
D

durin

Member
Code:
durin@linux:~/Desktop/Neuer Ordner/thumbs> ls -1 *.jpg |while read file; do convert -font Courier -pointsize 30 -fill black -draw "text 0,10 'raumgod'" "$file" "`basename "$file"`"; done
durin@linux:~/Desktop/Neuer Ordner/thumbs>

so gehts
hab das wasserzeichen_ weggelassen
das ergebniss wollte ich
ist dann doch so richtig?
lieber gruss und danke
durin
 

cero

Guru
Schön, wenn es jetzt klappt :)

Das mit dem Wasserzeichen_ ist nur eine Vorsichtsmaßnahme, falls
mal jemand sowas auf seine Originale losläßt. Hinterher weiß man
anhand des vorgestelltem Wasserzeichen_ welche Bilder den Text
enthalten.
 
Oben