2016-09-13 11 views
1

キャンバス上に単純な円を描画しようとしていますが、Chromeでは完全に機能しますがSafariでは失敗します。Safariの2Dコンテキストで円弧が描画されない

奇妙なことは、円のx位置を取得しようとすると、予想される数値が得られることです。したがって、明らかに存在しますが、正しく表示されません。

canvas.context.beginPath(); 
canvas.context.strokeStyle = 'rgba(255, 153, 0, 1)'; 
canvas.context.lineWidth = 10; 
canvas.context.arc(x, y, radius, 0, Math.PI * 2); 
canvas.context.stroke(); 
canvas.context.closePath(); 

widthheight、そしてradiusは、実行時に計算されたカスタム変数であり、そしてサンプル値が

x = 155; 
y = 155; 
radius = 25.5; 

ある。しかし、それが固定されていないですし、一定の範囲から任意の数とすることができます。

これはChromeのオレンジ色の円を描画しますが、Safariでは何も表示されません。

答えて

1

私は解決策を見つけました。問題はradiusが数をfloat型に計算されたということでした、といくつかの理由のためにSafariが25.5の半径の円弧を描画しませんので、私は基本的に私の問題を解決し

Math.floor(radius) 

をしなければなりませんでした。私はこれがなぜ起こったのか分からないが、他の誰かが同じ問題を抱えている場合の解決策がある。

関連する問題