canvas转图片,图片如何镜像翻转-

  canvas转图片,图片如何镜像翻转?

  1.通过帆布自带的画布方法进行翻转

  var img=new Image();//这个就是图片标签的数字正射影像图对象img.src= ./sy。png ;img.onload=function () { //图片加载完成后,执行此方法ctx.drawImage(img,posx,posy,210,80);};play.addEventListener(click ,function () { ctx.clearRect(0,0,canvas.width,canvas。身高);//清除画布//位移来做镜像翻转ctx.translate(210 posx * 2,0);ctx.scale(-1,1);//左右镜像翻转//ctx.translate(0,160 posy * 2);//ctx.scale(1,-1);//上下镜像翻转ctx.drawImage(img,0,0,210,80);});2.像素点的镜像翻转方法

  //竖向像素反转函数imageDataVRevert(sourceData,newData) { for (var i=0,h=sourceData.heightI hi ) { for (var j=0,w=source data . width j w;j){新数据。data[I * w * 4j * 4 0]=sourcedata。数据[(h-I)* w * 4j * 4 0];新数据。data[I * w * 4j * 4 1]=sourcedata。数据[(h-I)* w * 4j * 4 1];新数据。data[I * w * 4j * 4 2]=sourcedata。数据[(h-I)* w * 4j * 4 ^ 2];新数据。data[I * w * 4j * 4 3]=sourcedata。数据[(h-I)* w * 4j * 4 3];} }返回newData} //横向像素反转函数imageDataHRevert(sourceData,newData) { for (var i=0,h=sourceData.heightI hi ) { for (j=0,w=source data . width j w;j){新数据。data[I * w * 4j * 4 0]=sourcedata。data[I * w * 4(w-j)* 4 0];新数据。data[I * w * 4j * 4 1]=sourcedata。data[I * w * 4(w-j)* 4 1];新数据。data[I * w * 4j * 4 2]=sourcedata。data[I * w * 4(w-j)* 4 2];新数据。data[I * w * 4j * 4 3]=sourcedata。data[I * w * 4(w-j)* 4 3];} }返回new data } " var img=new Image();//这个就是图片标签的数字正射影像图对象img.src= ./sy。png ;img.onload=function () { //图片加载完成后,执行此方法ctx.drawImage(img,0,0,210,80);};//像素点操作var imgData=ctx.getImageData(0,0,210,80);var newImgData=CTX。getimagedata(0,0,210,80);//var newImgData=CTX。getimagedata(0,0,w,h);CTX。putimagedata(imageDataVRevert(新ImgData,img data),0,0);//上下翻转//CTX。putimagedata(imageDataHRevert(新ImgData,img data),0,0);//左右翻转~~~~到此这篇关于帆布实现图片镜像翻转的2种方式的文章就介绍到这了,更多相关帆布图片镜像翻转内容请搜索以前的文章或继续浏览下面的相关文章,希望大家以后多多支持!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: