Saturday, April 21, 2007

ImageMagickで任意の2色の上下グラデーションの角丸四角を描画する

ImageMagickで任意の2色の上下グラデーションの角丸四角を描画するには、
以下のバッチファイルを実行します。

rem 環境によって変えてね
set im=C:\Progra~1\ImageMagick-6.3.3-Q16
%im%\convert.exe -size 150x150 xc:none -fill white -draw "roundrectangle 0,0 149,149 15,15" ( xc:#e0ff80 xc:#80ffff +append -resize 2x1 ) -fx "s.p==0?0:v.p{(1-sin(pi*j/h)),1}" -matte sample150a.gif

出力画像(sample150a.gif)

関連項目

ImageMagickで彩度が変化するGIFアニメーションを作成する

ImageMagickで彩度が変化するGIFアニメーションを作成するには、
以下のバッチファイルを実行します。

rem 環境によって変えてね
set im=C:\Progra~1\ImageMagick-6.3.3-Q16
rem 彩度を変更(明るさはそのまま)
%im%\convert.exe sample4.jpg -modulate 100,100 f1.png
%im%\convert.exe sample4.jpg -modulate 100,90 f2.png
%im%\convert.exe sample4.jpg -modulate 100,80 f3.png
%im%\convert.exe sample4.jpg -modulate 100,70 f4.png
%im%\convert.exe sample4.jpg -modulate 100,60 f5.png
%im%\convert.exe sample4.jpg -modulate 100,50 f6.png
%im%\convert.exe sample4.jpg -modulate 100,40 f7.png
%im%\convert.exe sample4.jpg -modulate 100,30 f8.png
%im%\convert.exe sample4.jpg -modulate 100,20 f9.png
%im%\convert.exe sample4.jpg -modulate 100,10 f10.png
%im%\convert.exe sample4.jpg -modulate 100,0 f11.png

%im%\convert.exe f1.png f2.png f3.png f4.png f5.png f6.png f7.png f8.png f9.png f10.png f11.png -set delay 20 -loop 0 sample146.gif

元画像(sample4.jpg)


出力画像(sample146.gif)

Friday, April 20, 2007

ImageMagickで画像を銭湯タイル風に変換する

ImageMagickで画像を銭湯タイル風に変換するには、
以下のバッチファイルを実行します。

rem 環境によって変えてね
set im=C:\Progra~1\ImageMagick-6.3.3-Q16
rem モザイク画像の生成と縦線描画
%im%\convert.exe -size 100x100 xc:none -channel RGBA ( sample4.jpg -resize 10x10 ) -fx "i%%10<9?v.p{ceil((i+1)/10)-1,ceil((j+1)/10)-1}:0" sample143a.png
rem 横格子線のついたモザイク画像の生成
%im%\convert.exe sample143a.png -channel RGBA -fx "j%%10<9?p:0" sample143b.png
rem 立体化してタイル風に。
%im%\convert.exe sample143b.png -threshold 1 -shade 135x20 -blur 0x1 -normalize sample143b.png -compose overlay -composite sample143c.png

元画像(sample4.jpg)


出力画像(sample143b.png)


出力画像(sample143c.png)


Thursday, April 19, 2007

ImageMagickでクレヨン風の文字列を描画する

ImageMagickでクレヨン風の文字列を描画するには、
以下のバッチファイルを実行します。

rem 環境によって変えてね
set im=C:\Progra~1\ImageMagick-6.3.3-Q16
%im%\convert.exe -size 120x40 xc:white -stroke #fad759 -fill #f6b739 -font Tahoma -draw "font-size 30 text 2,30 'Sample'" -spread 1 sample145a.jpg

sample145a.jpg

Tuesday, April 17, 2007

ImageMagickで閾値を使用して切り取った画像に影付けする

ImageMagickで閾値を使用して切り取った画像に影付けするには、
以下のバッチファイルを実行します。

rem 環境によって変えてね
set im=C:\Progra~1\ImageMagick-6.3.3-Q16
%im%\convert.exe sample5.jpg -threshold 53000 -negate -channel A -fx p.r==1?1:0 sample5.jpg -compose src_in -composite sample142a.png
%im%\convert.exe sample142a.png ( +clone -background #000000 -shadow 40x2+3+3 ) +swap -background white -mosaic sample142b.png

元画像(sample5.jpg)


出力画像(sample142b.png)

2008/01/04追記
ver6.3.7では、以下のバッチファイルのように-matteを追加します。
rem 環境によって変えてね
set im=C:\Progra~1\ImageMagick-6.3.7-Q16
%im%\convert.exe sample5.jpg -threshold 53000 -negate -matte -channel A -fx p.r==1?1:0 sample5.jpg -compose src_in -composite sample142a.png
%im%\convert.exe sample142a.png ( +clone -background #000000 -shadow 40x2+3+3 ) +swap -background white -mosaic sample142b.png

Monday, April 16, 2007

ImageMagickで画像をトリムする

ImageMagickを-trimと-fuzzオプションを使用して
以下のように画像をトリムすることができます。

rem 環境によって変えてね
set im=C:\Progra~1\ImageMagick-6.3.3-Q16
%im%\convert.exe sample11.jpg -fuzz 8%% -trim sample137a.jpg
%im%\convert.exe sample11.jpg -fuzz 15%% -trim sample137b.jpg

元画像(sample11.jpg)


出力画像(sample137a.jpg) -fuzz=8%


出力画像(sample137b.jpg) -fuzz=15%

Sunday, April 15, 2007

ImageMagickで左上と右下が角丸の四角を描画する

ImageMagickで左上と右下が角丸の四角を描画するには、
以下のバッチファイルを実行します。

rem 環境によって変えてね
set im=C:\Progra~1\ImageMagick-6.3.3-Q16
rem M moveto(x, y)
rem L lineto(x, y)
rem A elliptical arc(rx ry x-axis-rotation large-arc-flag sweep-flag x y)+
rem 単色
%im%\convert.exe -size 100x100 xc:none -fill #BBDDFF -draw "path 'M 0,10 A 10,10 0 0,1 10,0 L 99,0 L99,90 A 10,10 0 0,1 90,99 L 0,99 Z" sample140a.png

出力画像(sample140a.png)


rem グラデーション
%im%\convert.exe -size 100x100 xc:none -tile gradient:#BBDDFF-#E0F0FF -draw "path 'M 0,10 A 10,10 0 0,1 10,0 L 99,0 L99,90 A 10,10 0 0,1 90,99 L 0,99 Z" sample140b.png

出力画像(sample140b.png)


rem 切り取り
%im%\convert.exe -size 100x100 xc:none -channel RGBA -fill #ffffffff -draw "path 'M 0,10 A 10,10 0 0,1 10,0 L 99,0 L99,90 A 10,10 0 0,1 90,99 L 0,99 Z" sample2bg.jpg -compose src_in -composite sample140c.png

元画像(sample2bg.jpg)


出力画像(sample140c.png)