需求是选择左侧的图案和颜色以及输入文字,右边显示合成的图案。点击下面的按钮让用户输入邮箱地址,把右侧生成的图案通过附件发送给用户。要求附件大小是2000*2000以上超大图。目前我用canvas实现的,点击左侧选项的时候用canvas在右侧绘图,提交的时候用canvas生成图片发送给后台,用php发送邮件给用户。问题在于生成图片再放大到要求的尺寸后,图片变得非常模糊。左侧的图案是150*150组合的精灵图,请教大佬们,有没有方法实现,把生成的图片放大到指定的尺寸,而保持图片不失真。

解决方案 »

  1.   

    想了下,好像不用那么麻烦,你直接把你原图画到2000*2000的canvas上,然后把每个有颜色的像素点的颜色都重新画一下。因为就算模糊的话,对应点也是有颜色的,只是有的深有的浅,你要做的就是把每个点都设置成选的颜色。
      

  2.   

    我试过了,把生成的图片比如200*150,画到2000*1500的canvas上,得到的图片效果跟直接放大这张200*150的图片一样,非常模糊。
      

  3.   


    我试过了,把生成的图片比如200*150,画到2000*1500的canvas上,得到的图片效果跟直接放大这张200*150的图片一样,非常模糊。
      

  4.   

    最简单有效的办法是把图片转成svg,有很多工具可以转的