Oshkosh Geschrieben 6. Juli 2008 Geschrieben 6. Juli 2008 Huhu, ich stand heute vor dem Problem massenhaft Bilddateien mit einem Text zu beschriften. Aus diesem Umstand entstand ein Skript, welches genau dieses Problem löst. Da hier einige immer ihre Namen unter die Bilder setzen (mehr oder weniger dezent), möchte ich meine Lösung hier vorstellen/teilen. Was wird benötigt? Die Bildumwandlung wird mit der Programmbibliothek Imgemagick ausgeführt. Diese ist sehr verbreitet und u.a. auch bei a.net für die Wasserzeichen/Copyrightbalken zuständig. In meinem Fall verwende ich die Windows Binaries, welche auf dem Rechner installiert werden: Download: http://www.imagemagick.org/script/binary-releases.php#windows Imagemagick wurde installiert, was nun Ich habe das fertige Skript auf meinem Webserver abgelegt, es kann hier heruntergeladen werden: http://www.oshkosh-web.net/temp/imcopybox/imcopybox.zip Es handelt sich um ein Kommandozeilenskript für Windows PCs, getestet habe ich es unter Vista. Ok, Download fertig und das Skript wurde in dem Ordner abgelegt* - und weiter? Nun das Skript von der Kommandozeile (Start > Ausführen > CMD.EXE) im Verzeichnis der zu beschriftenden Bilder ausführen und als Parameter den neuen Dateipräfix (z.B. Datum, o.ä.) mitgeben: Nachdem das Skript abgearbeitet wurde, sind die Dateien mit dem neuen Präfix zusätzlich vorhanden. Wer möchte, kann das Skript so anpassen, das die Bilder überschrieben werden (Ohoh): * ganz Faule kopieren das einfach ins Windows Verzeichnis. Und was hat das Ganze jetzt gebracht? Aus diesem hier: ...wurde das hier: Viel Spaß und Gruß, Markus Zitieren
Oshkosh Geschrieben 6. Juli 2008 Autor Geschrieben 6. Juli 2008 Hallo, für Freunde von grauen, halbtransparenten Boxen, hier noch eine andere Variante: Einfach die Zeile mit der FOR Schleife im Skript durch diese ersetzen: for %%b in (*.%FileExt%) do convert -background "#0008" -fill white -gravity southeast -size %ImgWidth%x15 caption:%AnnoText% +size %%b +swap -gravity southeast -composite %NewFilePrefix%-%%~nb.jpg PS.: könnte einer der Mods mein Buchstabensalat im Threadtitel korrigieren? Gruß, Markus Zitieren
Oshkosh Geschrieben 6. Juli 2008 Autor Geschrieben 6. Juli 2008 Hallo, Habe alle 5 Dateien runter gezogen und installiert. Ebenfalls Dein script. von Imagemagick wird eigentlich nur eine Datei zur Installation benötigt: ImageMagick-6.4.2-1-Q16-windows-static.exe Dies ist die Version für 32bit Windows und 16bit Farbtiefe. Zum "Laufen" bringe ich es allerdings nur, wenn ich Dein File im (Bild-) Ordner doppelklicke. Das Skript funktioniert "nur" in einer Kommandozeile, d.h. START > AUSFÜHREN > CMD.EXE. In diesem Fenster in das Verzeichnis wechseln und dort das Skript ausführen. Dabei nicht vergessen, den Präfix für die generierten Dateinamen einzugeben (siehe Screenshots). Zudem, wie kann ich das script an meine Vorstellungen anpassen? Anpassen muss man nur den Text, der in die Bilder kopiert werden soll. Hierfür kann man das Skript mit dem Windows Editor (notepad.exe) editieren. Der Text für die Bilder ist als Variable definiert (AnnoText) und kann einfach angepasst werden - dabei bitte die "" Zeichen nicht löschen. Gruß, Markus Zitieren
Oshkosh Geschrieben 8. Juli 2008 Autor Geschrieben 8. Juli 2008 Hallo, Farbverlauf gefällig? Einfach die Zeile mit der FOR Schleife im Skript durch diese ersetzen: for %%b in (*.%FileExt%) do convert -size %ImgWidth%x20 gradient:none-black -gravity southeast -stroke black -strokewidth 2 -annotate 0 %AnnoText% -channel RGBA -blur 0x3 -stroke none -fill white -annotate 0 %AnnoText% +size %%b +swap -gravity southeast -geometry +0+0 -composite %NewFilePrefix%-%%~nb.jpg Die beiden fettgedruckten Farbwerte sind Ende und Anfang des Farbverlaufs, hier können (geschmacklich) beliebige Farben verwendet werden (z.B. yellow-limegreen für ganz mutige). Gruß, Markus Zitieren
totomagic Geschrieben 8. Juli 2008 Geschrieben 8. Juli 2008 Vielen Dank hierfür, habe ich auch direkt schon ausprobiert, klappt wunderbar ;) Zitieren
Oshkosh Geschrieben 9. Juli 2008 Autor Geschrieben 9. Juli 2008 Hallo, so langsam bekomme ich die Schriften in den Griff - ist aber nicht so trivial? Einfach die Zeile mit der FOR Schleife im Skript durch diese ersetzen: for %%b in (*.%FileExt%) do convert -size %ImgWidth%x25 gradient:none-#29699C -gravity southeast -stroke black -strokewidth 2 -font Helvetica-Bold -pointsize 20 -annotate 0 %AnnoText% -channel RGBA -blur 0x3 -stroke none -fill white -annotate 0 %AnnoText% +size %%b +swap -gravity southeast -geometry +0+0 -composite %NewFilePrefix%-%%~nb.jpg Gruß, Markus Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.