html5 两个canvas重叠放在一个div里面,每个canvas各填充一张图片,代码怎么写?

上面canvas1比下面的canvas2小,就可以看出重叠效果

1、首先素材准备,基本框架的建立。这里让一个有字的图片从左到右运动起来。

2、将图片素材引入网页,定义canvas标签,获取canvas的上下文。定义一个画图片的函数,使用canavs绘图API里面的drawImage来完成。

3、写一个更新的函数,因为我们要让他动起来,所以每时刻绘制的地方都不一样。注意:这里要用clearRect,这个函数,主要是为了清空画布。

4、写定时函数,每隔0.2秒就更新一次,重新绘制。

5、最后来看看最终的效果,就完成了。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-07-23
指定两个canvas的postion:absolution,然后设置者两个canvas的left与top属性,需要注意的是建议把小的canvas放到上面,方法是设置两个canvas的z-index为不同的值,值大的在上面。
绘图的过程可以参考一下代码:
var mycanvas=document.getElementByIdx_x_x_x("mycanvas");
var context = mycanvas.getContext("2d");
var imageObj = new Image();
imageObj.onload = function(){

// draw cropped image
var sourceX = 350;
var sourceY = 50;
var sourceWidth = 350;
var sourceHeight = 350;
var destWidth = sourceWidth;
var destHeight = sourceHeight;
var destX = mycanvas.width / 2 - destWidth / 2;
var destY = mycanvas.height / 2 - destHeight / 2;
context.drawImage(imageObj, sourceX, sourceY, sourceWidth, sourceHeight, destX, destY, destWidth, destHeight);本回答被网友采纳
第2个回答  2017-07-18
这个需求可以用一个canvas完成,用canvas的drawImage分别画两张图就可以了。
相似回答