canvas 图片处理

暗尘掩月 2015-04-15 10:01:33



两张图片叠加 背景变为透明
...全文
176 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
暗尘掩月 2015-04-15
  • 打赏
  • 举报
回复
问题就在这里了 如果能用png 透明背景的图片 这个问题 就不存在了 ps的确可以很容易处理掉 但是照片拍下来 要用程序处理 成 透明背景的
chenyang37 2015-04-15
  • 打赏
  • 举报
回复

var c=document.getElementById("myCanvas");
var cxt=c.getContext("2d");
var img=new Image()
img.src="https://img-bbs.csdn.net/upload/201504/15/1429063235_95878.jpg"
var simg = new Image();
simg.src = "https://img-bbs.csdn.net/upload/201504/15/1429063244_425729.jpg"
cxt.drawImage(img,0,0);
cxt.drawImage(simg,0,0);
你用png图片不就是透明的了吗?
暗尘掩月 2015-04-15
  • 打赏
  • 举报
回复
求大神 求解决思路
暗尘掩月 2015-04-15
  • 打赏
  • 举报
回复
引用 4 楼 chenyang37 的回复:
通过getImageData方法可以获得一个CanvasImageData对象,它有一个属性data,里面以数组的形式保存着图片的像素信息。可以通过这个修改每一个像素点的透明度。不知道这个是否可以实现你的要求。 canvas毕竟不是ps啊。
getImageData 我知道 不过具体通道处理算法 就不大清楚了 很少做图像处理方面的内容 一般的图像处理 查查资料还能搞定 复杂的就没办法了 而且canvas 处理2张图片叠加的问题 基本上找不到资料 那换个方式 通过 c# 处理成透明图片 c# 这个图片处理有这方面的资料么
chenyang37 2015-04-15
  • 打赏
  • 举报
回复
通过getImageData方法可以获得一个CanvasImageData对象,它有一个属性data,里面以数组的形式保存着图片的像素信息。可以通过这个修改每一个像素点的透明度。不知道这个是否可以实现你的要求。 canvas毕竟不是ps啊。

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧