JavaScriptで濃度変換
1pxごとに何らかの関数を与えて, 明るさなどを変える。セピアやグレースケールもこの類だと思います。
IronRubyのやつ http://d.hatena.ne.jp/arikui/20070918/1190050541
ガンマ補正
var _f = function(n){ return function(x){ return 255 * Math.pow(x / 255, n) }; }; var f = _f(1/4);
その他
Firefoxの話
ブックマークのコメントで知ったんですが、FirefoxでもPixel操作できるそうです。
http://delicious.com/url/6a01bd77fc64fe07c27100fae4d89e37
http://www.html5.jp/canvas/ref/method/getImageData.html
var imageData = ctx.getImageData(x, y, 1, 1); alert(imageData.data); // [r, g, b, a]で出力 (ただし、aは0から255)
こっちの方が使いやすい感じはするけど、アルファがCanvasっぽくない。.NETなんかとは一緒みたいだけど。