HTML5 Canvas

直線がぼやける件

HTML5のCanvasでlineWidth=1の直線を描画した時、
ぼやけるのが嫌だったのだが、
座標に0.5を足すことでパキっとした線になることを知った。


ブラウザ上でコードをEditして動作テストする
http://www.html5canvastutorials.com/tutorials/html5-canvas-line-width/

HTML5 Canvasのパフォーマンスの改善
http://www.html5rocks.com/ja/tutorials/canvas/performance/

canvasをdivにぶら下げると下側に謎のスキマが空く件

これは、canvasの下端がテキストのベースラインと揃えられているからです。
というわけで、canvas側にvertical-alignを設定しましょう。
vertical-align : bottom;

ratina対応の件

Dartでの例。
つまり、canvasの属性のwidthとheightは2倍に指定し、styleのwidthとheightは普通に設定した上で、座標変換に2倍を設定しておけば、何も考えずにOK。

    canvas = new CanvasElement( width:w*2, height:h*2 );
    canvas.style..width = "${w}px"..height= "${h}px";

    canvas.context2D.scale(2, 2);

drawImageで画像を描画するとぼやける件

非ratinaでもratina対応をすると案外キレイになるぞ。
でもまあ重いんだが。

多段階のαチャネル(半透明)の画像の描画が重い件

どのブラウザでも重いが、とくにFirefoxで重いらしい。諦めた方がよさそうだ。

コメント

このブログの人気の投稿

nginxでlocalhostとしてアクセスをサーバーに転送する方法

Android・・・テキスト描画あれこれ, ascent(), descent()等

Android:stateに応じてTextの色を変更する・・・ColorStateList