私はRaphaelJSライブラリで遊んでいますが、それが非常にピクセル指向であることに気づきました。ビューポートに合わせて拡大縮小するものを描きたいのですが。キャンバスの座標系を0から1に再定義することは可能ですか?[0.5、0.5]を中心に円を描くと、コンテナのサイズが変わってもコンテナの中央に残りますか?
これはSVG/VMLの問題である可能性があります。これは、Raphaelにこれを行う方法がない場合でも、基になるsvg要素にいつでも直接アクセスできるためです。
これが最良の答えかどうかはわかりませんが、探していたもののいくつかを入手する方法を見つけました。幅/高さのパラメータを無視するか、「100%」を使用する場合は、setViewBoxコマンドを使用して独自の座標系を設定できます。
var canvas = Raphael("container");
canvas.setViewBox(0, 0, 1, 1, true);
もちろん問題は、これがストロークや背景などを含むすべてをスケーリングすることです。これにより、1px以外のストローク幅などを使用することが困難になります。