Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/386.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/90.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将绘制到画布上的所有内容偏移0.5像素的好方法?_Javascript_Html_Canvas - Fatal编程技术网

Javascript 将绘制到画布上的所有内容偏移0.5像素的好方法?

Javascript 将绘制到画布上的所有内容偏移0.5像素的好方法?,javascript,html,canvas,Javascript,Html,Canvas,我希望画布在默认情况下绘制真实像素。我希望我可以添加一个css道具来偏移0.5像素,但是你知道,一个不能 有什么好办法吗?只需转换上下文本身: context.translate(0.5, 0.5); 接下来绘制的所有内容都将偏移半像素。只需变换上下文本身即可: context.translate(0.5, 0.5); 接下来绘制的所有内容现在都将偏移半像素。不应该是-0.5,因为您要再绘制0.5px。@Derek朕會功夫 默认情况下,像素在画布上的位置为0.5,该位置表示其中心。因此,通过

我希望画布在默认情况下绘制真实像素。我希望我可以添加一个css道具来偏移0.5像素,但是你知道,一个不能


有什么好办法吗?

只需转换上下文本身:

context.translate(0.5, 0.5);

接下来绘制的所有内容都将偏移半像素。

只需变换上下文本身即可:

context.translate(0.5, 0.5);

接下来绘制的所有内容现在都将偏移半像素。

不应该是
-0.5
,因为您要再绘制0.5px。@Derek朕會功夫 默认情况下,像素在画布上的位置为0.5,该位置表示其中心。因此,通过添加0.5,您将得到隐藏的另一半(如果在边框处)以显示。如果您使用负值,第一个像素将不会显示。它不应该是
-0.5
,因为您要将它再画0.5倍。@Derek朕會功夫 默认情况下,像素在画布上的位置为0.5,该位置表示其中心。因此,通过添加0.5,您将得到隐藏的另一半(如果在边框处)以显示。如果使用负值,第一个像素将不会显示。