时间:2021-05-08
先来理解canvas的这几个宽度和高度
canvas.width是画布的大小,而canvas.style.width是浏览器渲染的canvas的尺寸
第一个问题:画布的高度和宽度
画布的宽和高一定要在canvas标签中设置,如果是在css样式中设置,则不起作用,画布会按照默认尺寸width:300px,height:150px显示
//在标签中设置宽和高<canvas id="canvas" width="324" height="622" >除了直接在canvas标签设置,还可以在绘制的时候设置,注意画布的宽高不需要单位
canvas.width = 324;canvas.height = 622;第二个问题:绘制的图形被放大,图像模糊
这是由于手机的设备独立像素和物理像素不一致,设备像素比=物理像素/设备独立像素,大部分手机的设备像素比为2,这意味着100px的图像要放在200px中才可以正常显示
用devicePixelRatio可以获取到设备像素比,获取到像素比后,我们就可以控制图形的缩放比例
scale = window.devicePixelRatio;刚刚说了,canvas.style.width是浏览器渲染的canvas的尺寸,那要想你画的图形正确且清楚的显示在画布中,你需要设置正确的style.width和style.height,如下图,注意加上单位。
canvas.style.width = canvas.width / scale + 'px';canvas.style.height= canvas.height/ scale + 'px';上面我们设置了画布的宽度为324,如果不设置style.width,则画的图形会被放大到2倍显示。
到此这篇关于canvas画图被放大且模糊的解决方法的文章就介绍到这了,更多相关canvas图被放大且模糊内容请搜索以前的文章或继续浏览下面的相关文章,希望大家以后多多支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
ps图片放大模糊的解决方法是: 1、打开ps,选择一张需要修改的图片,打开这张图片。 2、在ps上方,找到并点击菜单中的“图像”、“图像大小”,点击“重定图
自制投影仪模糊的解决方法如下: 1、试着用两个放大镜,把鞋盒涂成黑色,在全黑的屋子里投影,把屏幕亮度调到最强; 2、加菲镜调焦距,还就是要想解决图像
接上一篇canvas画线条教程上次我们讲到,canvas有时候会出现1像素的线条模糊不清且好像更宽的情况,如下图:这样的线条显然不是我们想要的。这篇文章的目的就
本文实例分析了Android编程画图之抗锯齿解决方法。分享给大家供大家参考,具体如下:在画图的时候,图片如果旋转或缩放之后,总是会出现那些华丽的锯齿。其实And
本文实例为大家分享了canvas实现画图、滤镜效果的具体代码,供大家参考,具体内容如下1、用canvas来实现画图的代码如下:Titlebody{backgro