ImageMagick – eine Einführung
Abgerundete Ecken
In diesem Beispiel wird eine Maske erzeugt, die anschließend über das Bild gelegt wird.
$ convert -size 512x340 xc:white -fill black -stroke black -draw "roundrectangle 0,0 512,340 40,40" Maske.png
Wie im vorigen Textbeispiel wird die Grafik neu erzeugt. Dazu wird mit -size
die Größe des zu erzeugenden Bildes angegeben (mittels identify ermittelt). Mit xc:white
wird ein Bild mit weißem Hintergrund erzeugt. Anschließend werden Füll- und Malfarbe auf schwarz gesetzt und in -draw
wird ein Zeichenbefehl, hier ein abgerundetes Rechteck, angegeben. Das Bild wird nun als PNG-Datei gespeichert (um keinen Qualitätsverlust zu erleiden). Im nächsten Schritt wird das Foto entsprechend der gerade erzeugten Maske verändert:
$ convert Pinguine.jpg Maske.png -compose lighten -composite Pinguine-abgerundet.jpg
Dazu erhält convert erst einmal beide Bilder. Anschließend werden sie mit -composite
verschmolzen. Wie die Verschmelzung vorgenommen wird, ist vorher mit -compose
angegeben, lighten bedeutet, dass das Bild entsprechend der Maske aufgehellt wird, die weißen Stellen aus der Maske werden im Bild entsprechend weiß.
Das Erzeugen einer temporären Masken-Datei ist nicht nötig, sie hilft aber beim Nachvollziehen der einzelnen Schritte. Die Maske kann direkt in einem Befehlsblock erzeugt werden:
$ convert Pinguine.jpg \( -size 512x340 xc:white -fill black -stroke black -draw "roundrectangle 0,0 512,340 40,40" \) -compose lighten -composite Pinguine-abgerundet.jpg
Ein Befehlsblock wird mit runden Klammern definiert, der Backslash wird für die Shell benötigt. Der Block in den runden Klammern wird für sich ausgeführt, das Resultat wird wie ein Bild weiterverarbeitet.
In diesem Beispiel wird ein weißer Hintergrund verwendet. Stattdessen kann auch mit Transparenz gearbeitet werden, dann wird allerdings ein Grafikformat benötigt, das Transparenz unterstützt, zum Beispiel PNG.