【发布时间】:2015-01-16 04:56:52
【问题描述】:
我习惯于使用 canvas 元素在 HTML5 中渲染图像。但是在某些浏览器上,图像非常模糊。我试图用 img 元素替换画布元素,然后它变得一清二楚。但是对于某些图像,我必须使用画布,因为我在图像上渲染文本覆盖(顺便说一句,用画布绘制的文本也很模糊)。我不确定为什么会出现模糊,有没有办法解决这个问题?
【问题讨论】:
-
您是否正在使用 drawImage 的大小调整版本来调整原始图像的大小?如果是这样,您可以使用本文中的一种方法:stackoverflow.com/questions/18922880/…
-
是的,我设置了画布的宽度和高度属性。但是,如果我使用 img 并调整它的大小,图片仍然很清晰。
-
确保你设置了画布元素的宽度/高度——而不是 CSS。如果您使用 CSS 不成比例地调整画布大小,则生成的图像将被扭曲。所以这样做: var canvas=document.getElementById("myCanvas");画布.宽度=图像.宽度;画布.高度=图像.高度。再说一次......如果你用 drawImage 重新缩放你应该检查上面的链接。