Hallo allerseits,
ich möchte per Script in einem Verzeichnis alle jpg's mit runden transparenten Ecken versehen und im png Format speichern. Wenn mir die Größe des Bildes bekannt ist kann ich das mit dieser Kommandozeile tun: in diesem Falle hat das Bild eine Größe von 600x401 Pixeln und heißt einfach nur bild.jpg
convert -size 600x401 xc:none -fill black -draw "roundRectangle 0,0 600,401, 15,15" bild.jpg -compose SrcIn -composite bild.png
Nun dachte ich mir das in ein Script zu packen welches dann so aussieht
#!/bin/bash for i in *.jpg; do echo "processing $i ..." # Bildgröße ermitteln SIZE=`identify -format '%wx%h' $i` # Zieldateinamen festlegen DESTNAME=`basename $i .jpg`".png" convert -size $SIZE xc:none -draw "roundRectangle 0,0 $SIZE, 15,15" $i -compose SrcIn -composite $DESTNAME done echo "done."
Die Zeilen convert... und -compose stehen in einer Zeile
Das Problem besteht nun darin, das das Script nur transparente PNGs ausspukt, welche die korrekte Größe haben :(
Was habe ich übersehen? Was nicht beachtet?
Gruß und Danke
Tilo