Canvas 避免画布元素中的抗锯齿

Canvas 避免画布元素中的抗锯齿,canvas,antialiasing,Canvas,Antialiasing,我知道为了避免直线中的抗锯齿效应,我必须在x和y坐标中平移0.5 px,但这在二次曲线中不起作用。 我需要画一条二次曲线而不受抗锯齿的影响。 我需要用坐标x、y和属性lineTo()和quadraticCurveTo()绘制字母,但我不希望这些字母具有抗锯齿效果。遗憾的是,您当前无法关闭抗锯齿。 上次我检查whatWG时仍在考虑添加此选项,但到目前为止,没有建议和浏览器实现关闭抗锯齿功能 我们得到的最接近的结果是在绘制图像时: context.imageSmoothingEnabled=fals

我知道为了避免直线中的抗锯齿效应,我必须在x和y坐标中平移0.5 px,但这在二次曲线中不起作用。 我需要画一条二次曲线而不受抗锯齿的影响。
我需要用坐标x、y和属性lineTo()和quadraticCurveTo()绘制字母,但我不希望这些字母具有抗锯齿效果。

遗憾的是,您当前无法关闭抗锯齿。

上次我检查whatWG时仍在考虑添加此选项,但到目前为止,没有建议和浏览器实现关闭抗锯齿功能

我们得到的最接近的结果是在绘制图像时:

context.imageSmoothingEnabled=false;  // see description below
也许你可以用drawImage()来绘制字母曲线。我在某个地方读到three.js使用这种方法来绘制更平滑的曲线——但内存无法确定在哪里

imageSmoothingEnabled的说明

  • 返回是否填充图案,如果图像的像素与显示不完全对齐,drawImage()方法将尝试平滑图像。可以设置,以更改图像是否平滑(真)或不平滑(假)。见()