SVG 要素のストローク幅を「ピクセル対応」に設定できるようにしたいと考えています。これは、適用されている現在のスケーリング変換に関係なく、常に 1 ピクセル幅です。SVG の全体的なポイントはピクセルに依存しないことであるため、これは不可能である可能性があることを認識しています。
コンテキストは次のとおりです。
viewBox 属性と preserveAspectRatio 属性が設定された SVG 要素があります。こんな感じです
<svg version="1.1" baseProfile="full"
viewBox="-100 -100 200 200" preserveAspectRatio="xMidYMid meet"
xmlns="http://www.w3.org/2000/svg" >
</svg>
これは、その要素を拡大縮小すると、その要素内の実際の形状がそれに応じて拡大縮小されることを意味します (これまでのところ非常に良好です)。
ご覧のとおり、原点が中央になるようにviewBoxを設定しました。その要素内に x 軸と y 軸を描画したいので、次のようにします。
<line x1="-1000" x2="1000" y1="0" y2="0" />
繰り返しますが、これはうまくいきます。ただし、理想的には、この軸の幅は常に 1 ピクセルのみです。親のsvg要素をスケーリングすると、軸が太くなることに興味はありません。
それで私はめちゃくちゃですか?