|
|

楼主 |
发表于 2022-3-6 10:12
|
显示全部楼层
本帖最后由 马黑黑 于 2022-3-6 12:29 编辑
上楼代码及解释:
<input id="load" type="button" value=" 加载图片 " /><br><br>
<canvas id="gImg" width="800" height="800" style="position:relative;left:-21px;"></canvas>
<script language="javascript">
//按钮点击事件
document.getElementById('load').onclick = function(){
var dh = 0; //高度监测变量
var step = 1; //步进变量:为1等于逐行扫描和作画
var gpic = new Image; //创建图像对象
var cc = document.getElementById('gImg'); //画布标识
var ct = cc.getContext('2d'); //画笔标识
gpic.onload = function(){ //图片加载后事件
var tt = setInterval(function(){ //定时器匿名函数
ct.clearRect(0, 0, 800, 800); //清除画布上的一切
/* 下面一句是画图,每次都:
① 从原始图像{0,0}处截取800像素宽度、dh像素高度的图像;
② 在画布上从{0,0}处画到画布上的800px的宽度、dh像素的高度
*/
ct.drawImage(gpic, 0, 0, 800, dh, 0, 0, 800, dh);
dh = dh + step; //行高步进
if(dh > 800){ //若 行高 > 800 则
clearInterval(tt); //关闭定时器
}
},1)
}
gpic.src = "/data/attachment/forum/202203/06/082517mir1rxiwvzqvxqfd.jpg"; //图像对象地址
}
</script>
|
|