Saturday, January 27, 2007

ImageMagickで角丸グラデーションの四角を描画する

ImageMagickで角丸グラデーションの四角を描画するには、
以下のようなコマンドで実行できます。

rem 環境によって変えてね
set im=C:\Progra~1\ImageMagick-6.3.0-Q16
%im%\convert.exe -size 200x150 gradient:#ccddff-#ffffff ( -size 200x150 xc:none -matte -channel RGBA -fill #ffffffff -draw "roundrectangle 0,0 199,149 20,20" ) -compose dst_in -composite sample54.png

出力画像(sample54.png)



関連項目
ImageMagickで画像を角丸四角に切り取って文字入れをする (Convertコマンド)
ImageMagickで透明なスリットの入ったグラデーションの角丸四角を描画する (Convertコマンド)
ImageMagickで任意の2色の上下グラデーションの角丸四角を描画する (Convertコマンド)
ImageMagickとPHPで、グラデーションの四角・角丸四角を描画する (PHP&Imagick)

Monday, January 22, 2007

ImageMagickで雲模様を描画する

中心点が同じで大きさが異なる円を複数描画することで
ImageMagickでコミカルな雲模様を描画することもできます。

rem 環境によって変えてね
set im=C:\Progra~1\ImageMagick-6.3.0-Q16
%im%\convert.exe -size 200x130 xc:none -matte -channel RGBA -fill #fad759 -draw "ellipse 50,50 40,40 0,360 ellipse 80,40 30,30 0,360 ellipse 110,60 50,50 0,360 ellipse 140,40 30,30 0,360 ellipse 160,50 30,30 0,360 ellipse 150,80 30,30 0,360 ellipse 40,80 30,30 0,360 ellipse 80,80 40,40 0,360" -fill #fef779 -draw "ellipse 50,50 30,30 0,360 ellipse 80,40 20,20 0,360 ellipse 110,60 40,40 0,360 ellipse 140,40 20,20 0,360 ellipse 160,50 20,20 0,360 ellipse 150,80 20,20 0,360 ellipse 40,80 20,20 0,360 ellipse 80,80 30,30 0,360" sample53a.gif
rem ついでに影つけ
%im%\convert.exe -size 200x130 xc:white sample53a.gif ( +clone -background #000000 -shadow 40x2+3+3 ) +swap -mosaic sample53b.jpg

出力画像(sample53a.gif)

出力画像(sample53b.gif)

Sunday, January 21, 2007

ImageMagickで端折(ドッグイアー)風の描画をする

ImageMagickで端折(ドッグイアー)風の描画をするには
以下のような手順で行うこともできます。

rem 環境によって変えてね
set im=C:\Progra~1\ImageMagick-6.3.0-Q16
rem マスクを作って
%im%\convert.exe -size 40x40 xc:none -matte -channel RGBA -fill #ffffffff -draw "roundrectangle 0,0 60,60 20,20" -fx "(i+j)>40?0:u" mask.png
rem グラデーションを作って
%im%\convert.exe -size 60x60 gradient:#ffffff-#d0d0d0 -rotate -45 -crop 40x40+20+20 grad1.png
rem 重ね合わせ+厚み表現のための線を描画
%im%\convert.exe -size 40x40 grad1.png mask.png -compose dst_in -composite -stroke #ffffffff -fill none -draw "roundrectangle 0,0 60,60 20,20" dogear.png
rem 角丸四角から右下を削って折り曲がった部分を重ねる
%im%\convert.exe -size 200x150 xc:none -matte -channel RGBA -fill #ddddff -draw "roundrectangle 0,0 199,149 20,20" -fx "(i+j)>(180+130)?0:u" dogear.png -geometry +160+110 -compose atop -composite sample52a.gif
rem ついでに影つけ
%im%\convert.exe -size 200x150 xc:white sample52a.gif ( +clone -background #000000 -shadow 40x2+3+3 ) +swap -mosaic sample52b.jpg

出力結果(sample52a.jpg)


出力結果(sample52b.jpg)