楕円を描画するこの方法は、クリーンでエレガントに見えます: http://www.williammalone.com/briefs/how-to-draw-ellipse-html5-canvas/
ただし、テストしたところ、結果の楕円が引き伸ばされていることがわかりました。幅と高さを等しく設定すると、幅よりも高さが約 20% 高い楕円が得られました。の結果は次のwidth = height = 50
とおりです。
問題がメソッド自体にあることを確認するために、ベジエ曲線に使用されるすべてのポイントが 90 度回転するようにアルゴリズムを変更してみました。結果:
繰り返しますが、どちらの場合も、50x50 の円を期待していました。How to draw an oval in html5 canvas? でarc
説明されている方法を使用しますか? 正常に動作し、完全な 50x50 の円が生成されます (その後、 を使用して楕円に引き伸ばすことができます)。scale
どうしたの?