などのような数字canvas
を処理することができますか?または、これは内部的に整数に丸められます(はいの場合、どのように?)。double
0.5, 10.4
キャンバス上の要素はピクセルとして表現されていると思うので、私は尋ねています。
また、ピクセルは常にサイズである1x1
ため(間違っている場合は修正してください)、double
キャンバス関数に値を指定するのではなく、より正確に描画できるという利点はありinteger
ますか?
などのような数字canvas
を処理することができますか?または、これは内部的に整数に丸められます(はいの場合、どのように?)。double
0.5, 10.4
キャンバス上の要素はピクセルとして表現されていると思うので、私は尋ねています。
また、ピクセルは常にサイズである1x1
ため(間違っている場合は修正してください)、double
キャンバス関数に値を指定するのではなく、より正確に描画できるという利点はありinteger
ますか?
ブラウザは分率座標を使用してピクセルレベルで物事を補間できるため、分率座標が可能です。アウトラインの場合、これはアンチエイリアシングになりますが、内部ピクセルの場合、この補間によって少しあいまいになる可能性があります。特に、オブジェクトが個々のピクセルで形成されているのではなく、円などのかなり滑らかなものである場合、サブピクセルレベルでレンダリングすると、アンチを認識した方法により、実際に物理的に可能な解像度よりも高い解像度の印象をユーザーに与えることができます。 -エイリアスのアウトライン。
しかし、raina77owがあなたの質問へのコメントで述べたように、これはブラウザによる追加の作業という点でコストがかかり、パフォーマンスの低下を引き起こします。したがって、これらのガイドラインを使用して決定を下します。
あなたの質問もjavaとタグ付けされているので:を見てくださいRenderingHints
。ストローク制御設定は、座標が丸められるかどうかを制御しますが、アンチエイリアシングと補間の設定は、最初はベクターアウトライン用、2番目はラスターイメージ用の小数位置のレンダリング方法に影響します。
いいえ、キャンバスがダブルポイントを渡すことができるとは思いません。ただし、回避策は、doubleをintにキャストすることです。このように、数値はintのように扱われ、通常どおりに機能します。キャスティングは次のよう
db.drawImage(image, (int) x, (int) y;
になります。これをゲームで使用すると、うまく機能します。