收藏
回答

canvasToTempFilePath生成图片模糊

为什么我的

canvasToTempFilePath

生成的图片是模糊的啊?

有大神知道怎么生成跟手机小程序显示的页面一样的吗?

回答关注问题邀请回答
收藏

8 个回答

  • zzzzz
    zzzzz
    2020-01-08

    即便输出和原图宽高一致,图片的大小几乎和原图一样,可是根本没用。因为图片的dpi被修改了,原图的dip是300,canvas导出的图片dpi是96。怎么可能清晰呢?不明白这个dpi修改的机制和原理是啥?有懂得人给科普下呗。。。

    2020-01-08
    有用 1
    回复 1
    • L
      L
      2020-10-22
      有下文吗
      2020-10-22
      回复
  • Grace Leeau
    Grace Leeau
    2017-07-25

    用了@bill lee 说的方法,把输出宽高设为3倍,小米5测试很清晰;由于是3这个数字,猜想是不是跟设备像素比有关,于是用 wx.getSystemInfoSync 获取设备像素比pixelRatio, 使 输出宽高 * pixelRatio

    2017-07-25
    有用 1
    回复
  • bill
    bill
    2017-06-29

    destWidth, destHeight 设置为canvas大小的3倍差不多就清晰了,安卓是没问题的,ios我发现还是比较模糊

    2017-06-29
    有用 1
    回复 1
    • ღT๓d๓d
      ღT๓d๓d
      2022-08-04
      我也是这样,安卓都没问题就IOS模糊的不行
      2022-08-04
      回复
  • 猹叔叔
    猹叔叔
    2023-03-14

    我发现微信开发工具里面保存图片不管怎么调参数都是失真很严重的,但是把destWidth, destHeight提高,真机生成的图片就会清晰

    2023-03-14
    有用
    回复
  • 未觧
    未觧
    2020-09-18

    如果 canvas 绘制的时候是按照低像素密度绘制的,仅导出的时候设置 destWidth destHeight 乘以 pixelRatio,输出的图片虽然变大了,但还是会模糊。

    我解决的办法是:绘制的时候就把所有的尺寸(字体大小、图片大小、边距、间距等)乘以 pixelRatio,输出图片的时候就按照绘制大小输出就可以。

    2020-09-18
    有用
    回复
  • 2017-07-27

    模拟器上图片多次修改多次保存后,高度是不变的。可是手机上,高度越来越大!有解决办法吗?

    2017-07-27
    有用
    回复
  • 凉白开
    凉白开
    2017-07-21

    你是怎么显示的啊,我都显示不出来

    2017-07-21
    有用
    回复
  • 随风
    随风
    2017-06-28

    同问,保存的出来的图片特别虚。

    2017-06-28
    有用
    回复
登录 后发表内容