Friday, September 14, 2007

ImageMagickで透明なラインが入った円を描画する

同心円の透明なラインが入った円を描画するには、以下のバッチファイルを実行します。

rem 環境によって変えてね
set im=C:\Progra~1\ImageMagick-6.3.5-Q16
%im%\convert.exe -size 200x200 xc:none -channel rgba -fx "(i-90)^2+(j-130)^2<=70^2&&floor(sqrt((i-90)^2+(j-130)^2))%%4>1?#C9BFAAFF:#00000000" sample222a.png

出力画像(sample222a.png)


rem 重ねあわせ例
%im%\convert.exe sf.jpg sample222a.png -composite sample222b.jpg

重ね合わせ例(sample222b.jpg)


関連項目
ImageMagickで、グラデーションのかかった同心円を描画する

Thursday, September 13, 2007

ImageMagickでだんだん小さくなっていく水玉模様を描画する

ImageMagickでだんだん小さくなっていく水玉模様を描画するには、
以下のバッチファイルを実行します。

rem 環境によって変えてね
set im=C:\Progra~1\ImageMagick-6.3.5-Q16
%im%\convert.exe -size 200x200 xc:none -fx "(i%%20-10)^2+(j%%20-10)^2<=(8-floor(i/20)*0.6)^2?#7090E0:#E0E0F0"
sample221a.jpg

出力画像(sample221a.jpg)


関連項目
ImageMagickで、グラデーションのかかった水玉模様を描画する

ImageMagickで半透明グラデーションの放射ストライプを描画する

ImageMagickで半透明グラデーションの放射ストライプを描画するには、以下のバッチを実行します。

rem 環境によって変えてね
set im=C:\Progra~1\ImageMagick-6.3.5-Q16
%im%\convert.exe -size 200x200 xc:white -channel rgb -fx "floor((atan2(50-i,170-j)+2*pi)/(pi/24))%%2==0?#F8C749:#FCE769" -channel a -fx "0.5-sqrt((50-i)^2+(170-j)^2)/200" -channel rgba sample218a.png

rem 重ねあわせ例
%im%\convert.exe sf.jpg sample218a.png -composite samples218b.jpg

出力画像(sample218a.png)


重ねあわせ例(sample218b.jpg)


2008/01/04追記
ver6.3.7では、以下のように-matteを追加します。
rem 環境によって変えてね
set im=C:\Progra~1\ImageMagick-6.3.7-Q16
%im%\convert.exe -size 200x200 xc:white -channel rgb -fx "floor((atan2(50-i,170-j)+2*pi)/(pi/24))%%2==0?#F8C749:#FCE769" -matte -channel a -fx "0.5-sqrt((50-i)^2+(170-j)^2)/200" -channel rgba sample218a.png
rem 重ねあわせ例
%im%\convert.exe sf.jpg sample218a.png -composite samples218b.jpg

Wednesday, September 12, 2007

ImageMagickで半透明の放射ストライプを画像に重ねあわせる

ImageMagickで半透明の放射ストライプを画像に重ねあわせるには、
以下のバッチファイルを実行します。

rem 環境によって変えてね
set im=C:\Progra~1\ImageMagick-6.3.5-Q16
%im%\convert.exe sf.jpg ( -size 200x200 xc:none -channel rgba -fx "floor((atan2(100-i,170-j)+2*pi)/(pi/24))%%2==0?#7090E050:#00000000" ) -composite sample219a.jpg

元画像(sf.jpg)


出力画像(sample219a.jpg)


関連項目
ImageMagickで半透明グラデーションの放射ストライプを描画する

Monday, September 10, 2007

ImageMagickで任意の位置を中心とした放射ストライプを描画する

ImageMagickで任意の位置を中心とした放射ストライプを描画するには、
以下のバッチファイルを実行します。

rem 環境によって変えてね
set im=C:\Progra~1\ImageMagick-6.3.5-Q16
%im%\convert.exe -size 200x200 xc:white -fx "floor((atan2(50-i,170-j)+2*pi)/(pi/24))%%2==0?#F8C749:#FCE769" sample218a.png
上の例では7.5度ごとに2色のストライプを描画します。

出力画像(sample218a.png)


下の例では30度ごとに2色のストライプを描画します。
%im%\convert.exe -size 200x200 xc:white -fx "floor((atan2(100-i,100-j)+2*pi)/(pi/6))%%2==0?#808080:#D0D0D0" sample218b.png

出力画像(sample218b.jpg)


関連項目
ImageMagickで半透明グラデーションの放射ストライプを描画する

ImageMagickで円状に透明スリットが広がるように加工する

ImageMagickで円状に透明スリットが広がるように加工するには、
以下のバッチファイルを実行します。

rem 環境によって変えてね
set im=C:\Progra~1\ImageMagick-6.3.5-Q16
%im%\convert.exe -size 200x200 xc:none sf.jpg -channel rgba -fx "dp=sqrt((120-i)^2+(150-j)^2); dp<20||(dp-20)%%15>floor((dp-20)/15)?v.p:#00000000" sample217a.png

元画像(sf.jpg)


出力画像(sample217a.png)


2008/01/04追記
ver6.3.7では、以下のように-matteを追加します。
rem 環境によって変えてね
set im=C:\Progra~1\ImageMagick-6.3.7-Q16
%im%\convert.exe -size 200x200 xc:none sf.jpg -matte -channel rgba -fx "dp=sqrt((120-i)^2+(150-j)^2); dp<20||(dp-20)%%15>floor((dp-20)/15)?v.p:#00000000" sample217a.png