在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML5/ canvas 重繪圖片特別模糊,有沒有辦法提升一下畫質(zhì)呢

canvas 重繪圖片特別模糊,有沒有辦法提升一下畫質(zhì)呢

圖片合成文字,but圖片生成出來掃不出二維碼。有沒有大佬知道怎么解決啊
clipboard.png

回答
編輯回答
空白格

canvas寬高是怎么寫的呢?

    canvas.width = '300px'
    canvas.height = '300px'

canvas設(shè)置高度不需要用attr的,直接修改width或者h(yuǎn)eight,你試試

2017年5月27日 22:56
編輯回答
何蘇葉

canvas渲染模糊可能是因為對retina的適應(yīng)需要做一下。

可以參考一下這個: https://github.com/PengJiyuan...

還有在繪制之前,試試加上ctx.translate(0.5, -0.5)試試

2017年3月24日 20:59
編輯回答
骨殘心

不知道用的是不是離屏Canvas,注意下Canvas盡量用原生的width和height屬性設(shè)置寬高,不要用CSS,也不要一起用。另外像二維碼這種其實(shí)是屬于需要邊緣銳利且?guī)в惺噶匡L(fēng)格的圖片,輸出時盡量采用PNG,而不要用有損壓縮方式的JPEG,尤其是當(dāng)你圖片很小的時候,會比較容易糊。

另外如果二維碼內(nèi)內(nèi)容比較多的時候,可以適當(dāng)降低誤碼率(好多默認(rèn)的就是40%,可以調(diào)整到更低一些),使二維碼內(nèi)的方塊更大更清晰,也會部分抵消圖片模糊所帶來的影響。

2018年6月11日 14:36
編輯回答
尕筱澄

想到解決方法了。因為是要生成圖片。
$('#main').attr("width", $("#starImg").width()*2.5);
$('#main').attr("height", $("#starImg").height()*2.5);

直接設(shè)置了給canvas放大。隱藏。
再給圖片設(shè)置自適應(yīng)寬高。出來的圖片畫質(zhì)基本跟原來的沒什么區(qū)別了

2017年11月23日 00:43