Tuesday, December 26, 2006

ImageMagickでフィルム風の枠をつける

ImageMagickでフィルム風の枠をつけるには、
フィルムの穴の部分の画像を作成して、
-tileで左右分の画像を作成することで実現できます。

rem 環境によって変えてね
set im=C:\Progra~1\ImageMagick-6.3.0-Q16
%im%\convert.exe -size 15x8 xc:#302520 -fill #ffffff -stroke #ffffff -draw "roundrectangle 3,1 9,3 2,2" margin.png
%im%\convert.exe -size 15x79 tile:margin.png margin2.png
%im%\convert.exe -size 130x79 xc:black margin2.png -geometry 15x79+0+0 -composite -flop margin2.png -geometry 15x79+0+0 -composite sample3.jpg -geometry 100x75+15+2 -composite sample42.jpg

元画像(sample3.jpg)


出力画像(sample42.jpg)

Sunday, December 24, 2006

ImageMagickで楕円を描画する

ImageMagickで楕円を描画するにはellipseやarcを
使用します。

rem 環境によって変えてね
set im=C:\Progra~1\ImageMagick-6.3.0-Q16
%im%\convert.exe -size 100x100 xc:#fffe99 -fill #fad759 -stroke #f4a729 -draw "ellipse 50,50 30,40 0,360" sample42a.jpg

出力画像(sample42a.jpg)


%im%\convert.exe -size 100x100 xc:#ffe9e7 -fill #fbdfdc -stroke #e1bfbd -draw "arc 10,20 89,79 0,360" sample42b.jpg

出力画像(sample42b.jpg)


rem 楕円描画+ぼかし+画像重ね合わせ
%im%\convert.exe -size 100x110 xc:#fffeee -fill #d9d4ce -stroke #d9d4ce -draw "arc 20,93 79,99 0,360" -blur 3x3 sample2.png -composite sample42c.jpg

出力画像(sample43c.jpg)

Thursday, December 21, 2006

ImageMagickで吹き出しを作成する - その3

ImageMagickで影付き吹き出しを作成するには
以下のバッチファイルを実行します。

set im=C:\Progra~1\ImageMagick-6.3.0-Q16
%im%\convert.exe -size 200x150 xc:none -fill #fce769 -stroke #f6b739 -strokewidth 4 -draw "roundrectangle 5,5 194,99 20,20" -stroke #fce769 -draw "polygon 70,99 50,149 80,99" -stroke #f6b739 -draw "polyline 60,99 70,99 50,149 80,99 89,99" ( +clone -background #707070 -shadow 97x4+4+4 ) +swap -background #ffffff -mosaic sample44a.gif



影を斜めにつけるには、縦方向をaffine&transformで縮めて、
shearで傾けます。

set im=C:\Progra~1\ImageMagick-6.3.0-Q16
%im%\convert.exe -size 200x150 xc:none -fill #fce769 -stroke #f6b739 -strokewidth 4 -draw "roundrectangle 5,5 194,99 20,20" -stroke #fce769 -draw "polygon 70,99 50,149 80,99" -stroke #f6b739 -draw "polyline 60,99 70,99 50,149 80,99 89,99" ( +clone -background #d0d0d0 -shadow 97x4+4+4 -affine 1,0,0,0.5,0,75 -transform -shear 30x0 ) +swap -background #ffffff -mosaic sample44b.gif



関連項目
ImageMagickで、半透明グラデーションの吹き出しを描画する
ImageMagickで、明度を変えた吹き出しを描画する

Wednesday, December 20, 2006

ImageMagickで枠をつける

ImageMagickで枠をつけるには、以下のバッチファイルのように
-borderで幅・高さ、-bordercolorで枠の色を指定することで
できます。

rem 環境によって変えてね
set im=C:\Progra~1\ImageMagick-6.3.0-Q16
%im%\convert.exe sample2bg.jpg -bordercolor #e2dcce -border 10x10 sample37a.jpg
%im%\convert.exe sample2bg.jpg -bordercolor #fbfaf7 -border 10x10 -bordercolor #918164 -border 5x5 sample37b.jpg

元画像(sample2bg.jpg)


出力画像(sample37a.jpg)


出力画像(sample37b.jpg)


関連項目
ImageMagickとPHPで、画像に枠をつける
im4javaで画像に枠をつける

Tuesday, December 19, 2006

ImageMagickでグラデーションの斜線を重ね合わせる

ImageMagickでグラデーションの斜線を重ね合わせるには
以下のようなバッチファイルで実行できます。

rem 環境によって変えてね
set im=C:\Progra~1\ImageMagick-6.3.0-Q16
rem マスク作成
%im%\convert.exe -size 100x100 xc:#ff0000ff -channel RGBA -fx "(i+j)%%5==0?u:0" mask.png
rem 半透明グラデーション
%im%\convert.exe -size 100x100 mask.png -channel A -fx "(i+j)%%5==0?((h-j)/h)*0.9:0" mask2.png
rem 重ね合わせ
%im%\convert.exe -size 100x100 sample2bg.jpg -matte -channel RGBA mask2.png -compose atop -composite sample36.jpg

元画像(sample2bg.jpg)


マスク(mask.png)


グラデーションのかかったマスク(mask2.png)


出力結果(sample36.jpg)

Monday, December 18, 2006

ImageMagickで斜線を重ね合わせる

ImageMagickで斜線を重ね合わせるには、
以下のバッチファイルのように斜線のマスクを作成してから
重ね合わせます。
-fxの式のシンボルの意味は以下の通りです。
i : カラムオフセット
j : 行オフセット
u : 最初のイメージシーケンス

set im=C:\Progra~1\ImageMagick-6.3.0-Q16
%im%\convert.exe -size 100x100 xc:#ffff00ff -channel RGBA -fx "(i+j)%%5==0?u:0" mask.png
%im%\convert.exe -size 100x100 sample2bg.jpg -matte -channel RGBA -antialias mask.png -compose atop -composite sample35.jpg

元画像(sample2bg.jpg)


出力結果(sample35.jpg)

Sunday, December 17, 2006

ImageMagickで半透明の文字を描画する

ImageMagickで半透明の文字を描画するには、
fill-opacityで透明度を指定します。

サンプルバッチファイル
set im=C:\Progra~1\ImageMagick-6.3.0-Q16
%im%\convert.exe -size 200x150 xc:#f2ede9 -fill #74a2c3 -pointsize 30 -draw "fill-opacity 0.3 text 20,100 Sample text 25,90 Transparent" sample34.jpg

出力画像(sample34.jpg)

Thursday, December 14, 2006

ImageMagickで画像に影をつける

ImageMagickで画像に影をつけるには、
文字と同様に+cloneでコピーして-shadowで影をつけます。

set im=C:\Progra~1\ImageMagick-6.3.0-Q16
%im%\convert.exe -size 200x150 sample1.jpg sample2.png ( +clone -background #000000 -shadow 40x2+3+3 ) +swap -mosaic sample33a.jpg

元画像1(sample1.jpg)


元画像2(sample2.png)


出力結果(sample33a.png)

Wednesday, December 13, 2006

ImageMagickで文字に影をつける

ImageMagickで文字に影をつけるには
+cloneでコピーしてから-shadowで影をつけます。

サンプル
set im=C:\Progra~1\ImageMagick-6.3.0-Q16
%im%\convert.exe -size 200x150 xc:none -fill #000000 -pointsize 30 -draw "text 20,100 Sample" ( +clone -background #000000 -shadow 40x2+3+3 ) +swap -background #ffffff -mosaic sample32a.jpg
%im%\convert.exe -size 200x150 xc:none -fill #ffffff -pointsize 30 -draw "text 20,100 Sample" ( +clone -background #80c0ff -shadow 97x4+0+0 ) +swap -background #304050 -mosaic sample32b.jpg

出力結果1(sample32a.jpg)


明るい色で影をつけると、文字の裏側から光源で
照らしたような感じになります。
出力結果2(sample32b.jpg)

Tuesday, December 12, 2006

ImageMagickで吹き出しを作成する - その2

想像などのセリフの吹き出しを作成するには、
以下のようにroundrectangleとcircleで描画できます。

set im=C:\Progra~1\ImageMagick-6.3.0-Q16
%im%\convert.exe -size 200x150 xc:none -fill white -stroke black -draw "roundrectangle 0,0 199,99 20,20 circle 70,110 77,117 circle 60,128 65,133 circle 50,140 53,143" sample27a.gif

出力画像(sample27a.gif)


%im%\convert.exe -size 200x150 xc:none -fill #fce769 -stroke #f6b739 -strokewidth 4 -draw "roundrectangle 5,5 194,99 20,20 circle 70,110 77,117 circle 60,128 65,133 circle 50,140 53,143 " sample27b.gif

出力画像(sample27b.gif)


関連項目
ImageMagickで、半透明グラデーションの吹き出しを描画する
ImageMagickで、明度を変えた吹き出しを描画する

Monday, December 11, 2006

ImageMagickで吹き出しを作成する - その1

ImageMagickで吹き出しを作成するには、
以下のようなバッチファイルで作成することもできます。

吹き出し部分はroundrectangleで描画し、吹き出し線部分はpolylineで描画。
set im=C:\Progra~1\ImageMagick-6.3.0-Q16
%im%\convert.exe -size 200x150 xc:none -fill white -stroke black -draw "roundrectangle 0,0 199,99 20,20 polyline 70,99 50,149 80,99" sample26a.gif

出力結果(sample26a.gif)


色をつけて太く描画する場合は、以下のバッチファイルを実行します。
set im=C:\Progra~1\ImageMagick-6.3.0-Q16
%im%\convert.exe -size 200x150 xc:none -fill #fce769 -stroke #f6b739 -strokewidth 4 -draw "roundrectangle 5,5 194,99 20,20" -stroke #fce769 -draw "polygon 70,99 50,149 80,99" -stroke #f6b739 -draw "polyline 60,99 70,99 50,149 80,99 89,99" sample26b.gif

出力結果(sample26b.gif)


関連項目
ImageMagickで、半透明グラデーションの吹き出しを描画する
ImageMagickで、明度を変えた吹き出しを描画する
ImageMagickで吹き出しを作成する - その4
ImageMagickで吹き出しを作成する - その3
ImageMagickで吹き出しを作成する - その2

Sunday, December 10, 2006

ImageMagickで網掛けをする

ImageMagickで画像に対して網掛けするには、
-fxオプションで偶数の縦・横ラインで明るさを変更することで
実現できます。

サンプルバッチファイル
rem 環境によって変えてね。
set im=C:\Progra~1\ImageMagick-6.3.0-Q16
%im%\convert.exe sample1.jpg -fx 'i%%2*j%%2?p:p*1.7' sample25a.jpg
%im%\convert.exe sample1.jpg -fx 'i%%2*j%%2?p:p*0.7' sample25b.jpg

元画像(sample1.jpg)


明るく網目を掛けた場合(sample25a.jpg)


暗く網目を掛けた場合(sample25b.jpg)


関連項目
ImageMagickとPHPで画像に網掛けをする

Thursday, December 07, 2006

ImageMagickで鏡面写りこみを作成する - その1

ImageMagickで鏡面写りこみを作成するには、
半透明グラデーションを適用して上下反転させることで
表現できます。

rem 環境によって変えてね
set im=C:\Progra~1\ImageMagick-6.3.0-Q16
rem 半透明グラデーションをかけて
%im%\convert.exe -size 100x100 -matte -channel A gradient:#000000ff-#00000000 sample2.png -compose multiply -composite -flip sample2d.png
rem 重ね合わせ
%im%\convert.exe -size 100x200 xc:#1a87b0 -matte sample2d.png -geometry +0+100 -compose screen -composite sample2.png -geometry +0+10 -compose atop -composite sample24.jpg

元画像(sample2.png)


出力結果(sample24.jpg)

Wednesday, December 06, 2006

ImageMagickで半透明グラデーションをかけて重ね合わせする

ImageMagickで半透明のグラデーションをかけて
画像を重ね合わせするには、以下のコマンドを実行します。

rem 環境によって変えてね
set im=C:\Progra~1\ImageMagick-6.3.0-Q16
rem 半透明グラデーションをかけて
%im%\convert.exe -size 100x100 -matte -channel A gradient:#000000ff-#00000000 sample2.png -compose multiply -composite sample2.png -compose dst_in -composite sample2b.png
rem 重ね合わせ
%im%\convert.exe sample1.jpg -matte sample2b.png -geometry +15+20 -compose screen -composite sample23.jpg

元画像1(sample1.jpg)


元画像2(sample2.png)


うっすらと黄色い花の画像が重ねられています。
出力結果(sample23.jpg)


12/11訂正
間違えてました。。。
透明色以外の所にalphaチャンネルに対し-fxで
グラデーションをつけて、atopで重ねたほうが
良いです。

rem 環境によって変えてね
set im=C:\Progra~1\ImageMagick-6.3.0-Q16
rem 半透明グラデーションをかけて
%im%\convert.exe -size 100x100 sample2.png -channel A -fx "u!=0?j/h:0" sample2a.png
rem 重ね合わせ
%im%\convert.exe sample1.jpg -matte sample2a.png -geometry +15+20 -compose atop -composite sample23b.jpg

出力結果(sample23b.jpg)

Tuesday, December 05, 2006

ImageMagickで画像を半透明にして重ね合わせる

ImageMagickで画像を半透明にして重ね合わせるには
-dissolveオプションを使用します。

rem 環境によって変えてね
set im=C:\Progra~1\ImageMagick-6.3.0-Q16
%im%\composite.exe -dissolve 25% sample2.png sample1.jpg -geometry +15+20 -matte sample22a.jpg
%im%\composite.exe -dissolve 50% sample2.png sample1.jpg -geometry +15+20 -matte sample22b.jpg
%im%\composite.exe -dissolve 75% sample2.png sample1.jpg -geometry +15+20 -matte sample22c.jpg

元画像1(sample1.jpg)


元画像2(sample2.png)


出力結果-dissolve 25%(sample22a.jpg)


出力結果-dissolve 50%(sample22b.jpg)


出力結果-dissolve 75%(sample22c.jpg)


通常の重ね合わせはこちら

Monday, December 04, 2006

ImageMagickで2つの画像を重ね合わせる

ImageMagickで2つの画像を重ね合わせるには
以下のコマンドのように-compositeオプションを使用します。

rem 環境によって変えてね
set im=C:\Progra~1\ImageMagick-6.3.0-Q16
%im%\convert.exe sample1.jpg sample2.png -geometry +15+20 -composite sample21.jpg

元画像1(sample1.jpg)


元画像2(sample2.jpg)


出力結果(sample21.jpg)


関連項目
Java2Dで画像を重ね合わせる
JMagickで、画像を重ね合わせる
WindowsでImageMagickをPHPから使用するための設定 (Imagickによる重ね合わせ例)
ImageMagickで重ね合わせの位置を指定する
ImageMagickで重ね合わせの位置を指定する - その2

Thursday, November 30, 2006

ImageMagickで、ビデオ風の画像を作成する

ImageMagickで、ビデオ風の画像を作成するには、
以下のように-fxオプションを使用して、1ラインごとに
明るさを変更します。

(バッチファイルなんで%が%%にしてます)
set im=C:\Progra~1\ImageMagick-6.3.0-Q16
%im%\convert.exe sample1.jpg -fx 'j%%2?p:p/0.6' sample19.jpg

元画像(sample1.jpg)


変換後(sample19.jpg)


以下のように角を丸くするとより昔のビデオっぽくなります。
set im=C:\Progra~1\ImageMagick-6.3.0-Q16
rem マスクを作って。。。
%im%\convert.exe -size 200x150 -matte -channel RGBA xc:none -background none -fill white -stroke white -draw "roundrectangle 0,0 199,149 20,20" -negate mask.png
rem ビデオ風処理+画像を切り抜く+枠線描画。
%im%\convert.exe -size 200x150 sample1.jpg -fx 'j%%2?p:p/0.6' -matte mask.png -compose screen -composite -fill none -stroke #808080 -draw "roundrectangle 0,0 199,149 20,20" sample20.jpg

変換後(sample20.jpg)


関連項目
ImageMagickで画像を角丸四角に切り取って文字入れをする

Wednesday, November 29, 2006

ImageMagickでコントラストを変更する

ImageMagickでコントラストを変更するには、以下のコマンドを実行します。

rem 環境によって変えてね
set im=C:\Progra~1\ImageMagick-6.3.0-Q16
rem コントラストを変更
%im%\convert.exe sample1.jpg -contrast sample18a.jpg
%im%\convert.exe sample1.jpg -contrast -contrast sample18b.jpg
%im%\convert.exe sample1.jpg -contrast -contrast -contrast sample18c.jpg
%im%\convert.exe sample1.jpg +contrast sample18d.jpg
%im%\convert.exe sample1.jpg +contrast +contrast sample18e.jpg
%im%\convert.exe sample1.jpg +contrast +contrast +contrast sample18f.jpg

元画像(sample1.jpg)


コントラストを上げた画像(sample18a.jpg)


2回コントラストを上げた画像(sample18b.jpg)


3回コントラストを上げた画像(sample18c.jpg)


コントラストを下げた画像(sample18d.jpg)


2回コントラストを下げた画像(sample18e.jpg)


3回コントラストを下げた画像(sample18f.jpg)


関連項目
ImageMagickでコントラストを落とす