//这处需要注意图像合成是针对整张图片的,而且放大镜的效果,就是用arc画的圆,把一个图片加在另一个图片上,通过mousemove来实现,这个在不同浏览器上的效果是不一样的
context.canvas.onmousemove = function(e) {
var loc = windowToCanvas(context.canvas, e.clientX, e.clientY);
context.clearRect(0, 0, context.canvas.width, context.canvas.height);
drawText();
context.save();
context.globalCompositeOperation = document.getElementById("compositingSelect").value;
context.beginPath();
context.arc(loc.x, loc.y, 100, 0, Math.PI*2, false);
context.fillStyle = 'orange';
context.stroke();
context.fill();
context.restore();
}
//下面是canvas中所有的图片合成效果
<select id='compositingSelect' size='11'>
<option value='source-atop'>source-atop</option> //显示旧图表与重叠部分的新图形,新图形显示在上层
<option value='source-in'>source-in</option> //只显示新图形重叠部分的图形
<option value='source-out'>source-out</option> //只显示新图形中不重叠部分的图形
<option value='source-over'>source-over (default)</option> //新旧图形都显示,新图开显示在上层
<option value='destination-atop'>destination-atop</option> //只显示新图形,重叠部分做加色处理
<option value='destination-in'>destination-in</option> //和source-in效果一样
<option value='destination-out'>destination-out</option> //只显示旧图形,重叠部分变成透明色
<option value='destination-over'>destination-over</option> //新旧都显示,重叠部分以旧图形为主
<option value='lighter'>lighter</option> //新旧图形都显示,重叠部分作加色处理
<option value='copy'>copy</option> //新图形会被保留,其它都被清除掉
<option value='xor'>xor</option> //新旧图形都显示,重叠部分会变成透明
</select>
图像合成效果14
原创
©著作权归作者所有:来自51CTO博客作者生而为人我很遗憾的原创作品,请联系作者获取转载授权,否则将追究法律责任
上一篇:编辑贝塞尔曲线13

提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
After Effects 2020中,针对预合成添加某个效果后,对合成中的各个图层有影响吗?
本文回答After Effects 2020中,针对预合成添加某个效果后对合成中的各个图层的问题。
AE After Effect 2020 预合成 合成 图层 -
HarmonyOS NEXT鸿蒙开发:图像效果:shadow阴影
设置图片阴影
控件 偏移量 阴影效果 -
文本到图像合成
本次提出了一种新的范式,使用大视觉和基于语言的文本到图像合成框架,为对象检测和分割任务生成大规模标记数据
人工智能 数据 数据集 背景图 -
opencv golang开发环境
作为一个理想的开发工具,可以设定对其的期望,具体如下: ·支持语法高亮的文本编辑 ·支持Unicode编码,便于在代码中直接使用非英文字符串 ·支持工程构建 ·直接执行构建结果 ·单元测试 ·支持执行性能测试 &nbs
opencv golang开发环境 Go 开发工具 vim 语法高亮