canvas绘制图片模糊,canvas放大失真

  canvas绘制图片模糊,canvas放大失真

  我们先来了解一下画布的这些宽度和高度。

  Canvas.width是画布的大小,canvas.style.width是浏览器渲染的画布的大小。

  第一个问题:画布的高度和宽度

  画布的宽度和高度必须在画布标签中设定。如果是以css样式设置,就不行。画布将按照默认尺寸显示:宽度300像素,高度150像素。

  //设置标签canvas ID= canvas width= 324 height= 622 中的宽度和高度。除了直接在画布标签中设置,还可以在绘图时设置。注意画布的宽度和高度不需要单位。

  canvas.width=324canvas.height=622第二个问题:绘制的图形被放大,图像模糊

  这是因为手机的设备无关像素和物理像素不一致,设备像素比=物理像素/设备无关像素。大部分手机的设备像素比为2,也就是说100px的图像只有放在200px才能正常显示。

  使用devicePixelRatio,可以获得设备的像素比。得到像素比例后,我们就可以控制图形的缩放比例了。

  scale=window . devicepixelrratio;刚才说了,canvas.style.width是浏览器渲染的画布大小。如果您希望您的绘图在画布中正确清晰地显示,您需要设置正确的style.width和style.height,如下所示。注意加单位。

  canvas . style . width=canvas . width/scale px ;canvas . style . height=canvas.height/标度 px ;我们将画布的宽度设置为上面的324。如果不设置style.width,绘制的图形会放大2倍。

  这篇关于放大模糊画布绘制的解决方法的文章到此为止。更多相关放大虚化画布图,请搜索之前的文章或者继续浏览下面的相关文章。希望你以后能支持我!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: