[DE] Für die Erstellung musst natürlich ImageMagick herhalten. Unter den Beispielen ist ein Tipp, wie Knöpfe / Buttons erstellt werden können. Dieses Verfahren war der Ausgangspunkt und endete mit folgendem Script make-smiley. Es muss mit der gewünschten Breite und Höhe des Smiley aufgerufen werden.

[EN] For generating this smiley I used ImageMagick. Under the ImageMagick excamples is a tip how to create different buttons. I used this tip for the following script make-smiley. It's called with the desired width and height of the smiley.

make-smiley WIDTH HEIGHT

Excample: make-smiley 40 40


#!/bin/sh
# usage make-smiley WIDTH HEIGHT
# 
if [ $# -ne 2 ]
then 
	echo "usage $0 WIDTH HEIGHT"
	echo "WIDTH is the width of the smiley and"
	echo "HEIGHT is the height of the smiley in pixel."
fi

W=$1
H=$2

create_bullet () {

INPUT=$1
COLOR=$2
OUTPUT=$3

convert $INPUT -matte \
        \( +clone -channel A -separate +channel -negate \
           -bordercolor black -border 5  -blur 0x2 -shade 120x30 \
           -normalize -blur x1  -fill $COLOR -tint 100 \) \
        -gravity center -compose Atop -composite \
        $OUTPUT
}

create_smiley () {

SMILEY=$1
SNAME=$2

convert smiley_bullet.gif \
	-family "Candice" -pointsize $((H*7/16)) \
	-fill red -stroke black -gravity center \
	-draw 'text 0,'$((-H/16))'"'$SMILEY'"' \
	-rotate 90 \
	smiley-${W}x${H}-$SNAME.gif

}

convert -size ${W}x${H} xc:none \
	-fill black -draw "circle $((W/2)),$((H/2)) $((W*3/16)),$((H*3/16))" \
	face.gif

create_bullet face.gif Red smiley_bullet.gif

create_smiley ':-)' laecheln
create_smiley ';-)' zwinkern
create_smiley ':-D' baeh
create_smiley ':-(' traurig
# Here you can add more create_smiley statements

# -- End of script ---

[DE] Der animierte Smiley wird mit folgendem Befehl erzeugt:

[EN] Create the animated smiley with followin command:

convert -delay 100 \
   smiley-laecheln.gif \
   smiley-traurig.gif \
   smiley-zwinkern.gif \
   -loop 0 my-smiley.gif

or 
convert -delay 100 smiley-*.gif -loop 0 my-smiley.gif