Saturday, December 19, 2009

PyWin32とImageMagickで、画像の端をかすれたように処理する

PyWin32とImageMagickで、画像の端をかすれたように処理するには、以下のコードを実行します。


# coding=UTF-8
import win32com.client

im = win32com.client.Dispatch("ImageMagickObject.MagickImage.1")
im.convert("-size", "300x225", "xc:none", "-alpha", "activate",
"-channel", "rgba", "-fill", "white", "-draw",
"rectangle 20,20,279,204", "-blur", "0x1", "-spread", "2",
"sf2.jpg", "-compose", "src_in", "-composite",
"sample1398a.png")


元画像(sf2.jpg)


出力画像(sample1398a.png)
PyWin32とImageMagickで画像の端をかすれたように加工した画像

動作環境
Python3.1.1, Python for Windows Extensions (Build 214), ImageMagick6.5.5

Friday, December 18, 2009

PyWin32とImageMagickで、任意の色でぼかして縁取られた文字を描画する

PyWin32とImageMagickで、任意の色でぼかして縁取られた文字を描画するには、以下のコードを実行します。


# coding=UTF-8
import win32com.client

im = win32com.client.Dispatch("ImageMagickObject.MagickImage.1")
im.convert("-size", "300x80", "xc:#4060B0", "-alpha", "activate",
"-channel", "rgba", "-font", "Comic-Sans-MS-Bold", "-gravity",
"center", "-fill", "#BBDDFF", "-draw",
"font-size 40 text 0,0 'ImageMagick'", "-blur", "0x2", "(",
"-size", "300x80", "xc:none", "-fill", "white", "-draw",
"font-size 40 text 0,0 'ImageMagick'", ")", "+swap",
"-compose", "src_in", "-composite",
"sample1397a.png")

# 影付け例
im.convert("sample1397a.png", "(", "+clone", "-background",
"#BBDDFF", "-shadow", "90x3+3+3", ")", "+swap", "-composite",
"(", "-size", "300x80", "xc:white", ")", "+swap",
"-composite", "sample1397b.png")


出力画像1(sample1397a.png)


出力画像2(sample1397b.png):影付き版


動作環境
Python3.1.1, Python for Windows Extensions (Build 214), ImageMagick6.5.5

ProcessingとJava Image Filters(pixels)を使用して画像を球面処理する

ProcessingとJava Image Filters(pixels)を使用して画像を球面処理するには、以下のコードを実行します。Java Image Filtersはhttps://pixels.dev.java.net/servlets/ProjectDocumentListから pixels-core-2.1.3-SNAPSHOT.jarをダウンロードしてSketchのフォルダのcodeサブフォルダに配置するか、 Sketch->Add FilesメニューからSketchに追加します。


// キャンバスサイズ
PImage img = loadImage("SF.JPG");
size(img.width, img.height);
// 球面処理する
SphereFilter sf = new SphereFilter();
// 屈折率
sf.setRefractionIndex(1.9f);
// 半径
sf.setRadius(80);
// 中心
sf.setCentreX(0.6f);
sf.setCentreY(0.6f);
PImage img2 = new PImage(sf.filter((BufferedImage)img.getImage(), null));
image(img2, 0, 0);
// ファイル保存
save("sample1448a.png");


元画像(sf.jpg):dataサブディレクトリに配置か、Add Filesで追加。


出力画像(sample1448a.png)
ProcessingとJava Image Filters(pixels)を使用して球面処理した画像

動作環境
Processing 1.0.7

Thursday, December 17, 2009

PyWin32とImageMagickで画像をサーモグラフィ風に加工する

PyWin32とImageMagickで画像をサーモグラフィ風に加工するには、以下のコードを実行します。


# coding=UTF-8
import win32com.client

im = win32com.client.Dispatch("ImageMagickObject.MagickImage.1")
im.convert("sf.jpg", "-fx", "lightness", "(", "-size", "1x1",
"xc:black", "xc:blue", "xc:green", "xc:yellow", "xc:red",
"xc:white", "-append", ")", "-fx", "v.p{0,p*6}",
"sample1396a.png")


元画像(sf.jpg)


出力画像(sample1396a.png)


動作環境
Python3.1.1, Python for Windows Extensions (Build 214), ImageMagick6.5.5

Wednesday, December 16, 2009

PyWin32とImageMagickで端が絞り込まれた文字列を描画する

PyWin32とImageMagickで端が絞り込まれた文字列を描画するには、以下のコードを実行します。


# coding=UTF-8
import win32com.client

im = win32com.client.Dispatch("ImageMagickObject.MagickImage.1")
im.convert("-size", "300x150", "-gravity", "center",
"-pointsize", "50", "-fill", "#bbddff",
"-font", "Tahoma", "label:ImageMagick",
"-virtual-pixel", "background", "-background", "white",
"-fx", "p{i,(j-cos(pi*i/w*2)*0.7*h/2)/(1-cos(pi*i/w*2)*0.7)}",
"sample1395a.png")


出力画像(sample1395a.png)
PyWin32とImageMagickで描画した端が絞り込まれた文字列を

動作環境
Python3.1.1, Python for Windows Extensions (Build 214), ImageMagick6.5.5

GfxBuilderで星を描画する

GfxBuilderで星を描画するには、以下のコードを実行します。


import griffon.builder.gfx.render.*

def gr = new GfxRenderer()
gr.renderToFile("sample1423a.png", 200, 200){
antialias("on")
star( cx:100, cy:100, count:5, ir:20, or:80,
fill: color("#c8c0c0"),
borderColor: color("#808080"),
borderWidth: 2,
angle:10
)
}


出力画像(sample1423a.png)
GfxBuilderで描画した星

動作環境
Groovy1.6.5, JDK6 Update16

Tuesday, December 15, 2009

PyWin32とImageMagickで画像をずらしてタイル配置する

PyWin32とImageMagickで画像をずらしてタイル配置するには、以下のコードを実行します。


# coding=UTF-8
import win32com.client

im = win32com.client.Dispatch("ImageMagickObject.MagickImage.1")
im.convert("flower1.png", "-roll", "+0+10", "flower1.png",
"+append", "-write", "mpr:t1", "+delete", "-size", "200x200",
"tile:mpr:t1", "sample1394a.png")


元画像(flower1.png)


出力画像(sample1394a.png)
PyWin32とImageMagickでずらしたタイル配置した画像

動作環境
Python3.1.1, Python for Windows Extensions (Build 214), ImageMagick6.5.5

ProcessingとJava Image Filters(pixels)を使用して光の放射を描画する

ProcessingとJava Image Filters(pixels)を使用して光の放射を描画するには、以下のコードを実行します。Java Image Filtersはhttps://pixels.dev.java.net/servlets/ProjectDocumentListから pixels-core-2.1.3-SNAPSHOT.jarをダウンロードしてSketchのフォルダのcodeサブフォルダに配置するか、 Sketch->Add FilesメニューからSketchに追加します。


// キャンバスサイズ
PImage img = loadImage("SF.JPG");
size(img.width, img.height);
// 光の放射を描画する
SparkleFilter sf = new SparkleFilter();
// 線の数
sf.setRays(25);
// きらめきの量
sf.setAmount(55);
// ランダムさ
sf.setRandomness(50);
// 色
sf.setColor(0xffffff0);
PImage img2 = new PImage(sf.filter((BufferedImage)img.getImage(), null));
image(img2, 0, 0);
// ファイル保存
save("sample1447a.png");


元画像(sf.jpg):dataサブディレクトリに配置か、Add Filesで追加。


出力画像(sample1447a.png)
ProcessingとJava Image Filters(pixels)を使用して光の放射を描画した画像

動作環境
Processing 1.0.7

Monday, December 14, 2009

PyWin32とImageMagickで1ピクセルラインごとにモーションブラーをかける

PyWin32とImageMagickで1ピクセルラインごとにモーションブラーをかけるには、以下のコードを実行します。


# coding=UTF-8
import win32com.client

im = win32com.client.Dispatch("ImageMagickObject.MagickImage.1")
im.convert("sf2.jpg", "-alpha", "activate", "-channel", "a",
"-fx", "j%2==0?1:0", "-channel", "RGBA", "(", "sf2.jpg",
"-motion-blur", "0x5+180", ")", "+swap", "-composite",
"sample1393a.png")


元画像(sf2.jpg)


出力画像(sample1393a.png)
PyWin32とImageMagickで1ピクセルラインごとにモーションブラーをかけた画像

動作環境
Python3.1.1, Python for Windows Extensions (Build 214), ImageMagick6.5.5

Processingとjsilhouetteを使用して星芒形を描画する

Processingとjsilhouetteを使用して星芒形を描画するには、以下のコードを実行します。jsilhouetteはhttp://code.google.com/p/jsilhouette/から jsilhouette-geom-0.3.1.jarをダウンロードしてSketchのフォルダのcodeサブフォルダに配置するか、 Sketch->Add FilesメニューからSketchに追加します。


// キャンバスサイズ
size(200, 200);
background(#f8f8ff);
// 描画用PGraphics作成
PGraphicsJava2D g2d=(PGraphicsJava2D)createGraphics(200, 200, JAVA2D);
g2d.beginDraw();
Graphics2D gr = g2d.g2;
gr.setColor(new Color(#ffcc00));
// 星芒形を描画
gr.fill(new Astroid(100, 100, 80, 0));
g2d.endDraw();

image(g2d, 0, 0);
// ファイル保存
save("sample1481a.png");


出力画像(sample1481a.png)
Processingとjsilhouetteを使用して描画した星芒形

動作環境
Processing 1.0.7

Sunday, December 13, 2009

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

PyWin32とImageMagickで環状に透明スリットが広がるように加工するには、以下のコードを実行します。


# coding=UTF-8
import win32com.client

im = win32com.client.Dispatch("ImageMagickObject.MagickImage.1")
im.convert("-size", "200x200", "xc:none", "sf.jpg",
"-alpha", "activate", "-channel", "rgba", "-fx",
"dp=sqrt((120-i)^2+(150-j)^2); \
dp<20||(dp-20)%15>floor((dp-20)/15)?v.p:#00000000",
"sample1392a.png")


元画像(sf.jpg)


出力画像(sample1392a.png)
PyWin32とImageMagickで環状に透明スリットが広がるように加工した画像

動作環境
Python3.1.1, Python for Windows Extensions (Build 214), ImageMagick6.5.5