在html中如何使用canvas实现图片镜像翻转
发表于:2025-11-07 作者:千家信息网编辑
千家信息网最后更新 2025年11月07日,这篇文章给大家分享的是有关在html中如何使用canvas实现图片镜像翻转的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。1. 通过canvas自带的画布方法进行翻转 va
千家信息网最后更新 2025年11月07日在html中如何使用canvas实现图片镜像翻转
这篇文章给大家分享的是有关在html中如何使用canvas实现图片镜像翻转的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
1. 通过canvas自带的画布方法进行翻转
var img = new Image(); //这个就是 img标签的dom对象 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.height);//清除画布 //位移来做镜像翻转 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.像素点的镜像翻转方法
//竖向像素反转 function imageDataVRevert(sourceData, newData) { for (var i = 0, h = sourceData.height; i < h; i++) { for (var j = 0, w = sourceData.width; j < w; j++) { newData.data[i * w * 4 + j * 4 + 0] = sourceData.data[(h - i) * w * 4 + j * 4 + 0]; newData.data[i * w * 4 + j * 4 + 1] = sourceData.data[(h - i) * w * 4 + j * 4 + 1]; newData.data[i * w * 4 + j * 4 + 2] = sourceData.data[(h - i) * w * 4 + j * 4 + 2]; newData.data[i * w * 4 + j * 4 + 3] = sourceData.data[(h - i) * w * 4 + j * 4 + 3]; } } return newData; } //横向像素反转 function imageDataHRevert(sourceData, newData) { for (var i = 0, h = sourceData.height; i < h; i++) { for (j = 0, w = sourceData.width; j < w; j++) { newData.data[i * w * 4 + j * 4 + 0] = sourceData.data[i * w * 4 + (w - j) * 4 + 0]; newData.data[i * w * 4 + j * 4 + 1] = sourceData.data[i * w * 4 + (w - j) * 4 + 1]; newData.data[i * w * 4 + j * 4 + 2] = sourceData.data[i * w * 4 + (w - j) * 4 + 2]; newData.data[i * w * 4 + j * 4 + 3] = sourceData.data[i * w * 4 + (w - j) * 4 + 3]; } } return newData; }``var img = new Image(); //这个就是 img标签的dom对象 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(newImgData, imgData), 0, 0); //上下翻转 // ctx.putImageData(imageDataHRevert(newImgData, imgData), 0, 0);//左右翻转~~~~感谢各位的阅读!关于"在html中如何使用canvas实现图片镜像翻转"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
镜像
图片
像素
上下
内容
对象
就是
方法
更多
标签
此方法
画布
篇文章
j++
不错
实用
文章
横向
看吧
知识
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
无锡掘金网络技术有限公司
16核服务器qps
sql2005数据库添加库
数据库创建表的图片
服务器怎样看硬盘
跨平台工业实时数据库
怎样用开票软件开发票
国士无双下载软件开发
服务器管理内容
云数据库选型必读如何梳理需求
用于关闭数据库对象
公司内网服务器如何配置公网地址
云服务器可以布置成集群吗
全球大学生网络安全研究
全国服务器托管网站建设网站模板
服务器组建的方式
网吧要服务器吗
新罗县网络安全交易日
山景方案用什么软件开发
数据库连接配置怎么看
金丝雀网络安全
德化租房网络安全
公司内网服务器如何配置公网地址
全球大学生网络安全研究
阅读软件开发需求
网络安全审查员工资
中山慧源通网络技术有限公司
数据库 何玉洁
宝山区高科技网络技术哪家强
服务器搬运找哪家