html5中不同图片资源跨域画布污染如何解决
发表于:2024-11-26 作者:千家信息网编辑
千家信息网最后更新 2024年11月26日,这篇文章主要介绍了html5中不同图片资源跨域画布污染如何解决的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇html5中不同图片资源跨域画布污染如何解决文章都会有所收获,
千家信息网最后更新 2024年11月26日html5中不同图片资源跨域画布污染如何解决
这篇文章主要介绍了html5中不同图片资源跨域画布污染如何解决的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇html5中不同图片资源跨域画布污染如何解决文章都会有所收获,下面我们一起来看看吧。
我们要绘制一张图片,内容包括一张背景图和一个动态生成的二维码,前提是背景图是项目本身的静态资源,二维码是服务端动态生成的,二者不在同一域名下。
解决办法:把所有图片都重定向同一个域名下:
let count = 0;let bgImg = document.creatElement('img');let qrImg = document.creatElement('img');bgImg.src = redirectUrl('x.png');qrImg.src = redirectUrl('y.png');[bgImg, qrImg].forEach((e) => { e.onload = () => { count ++; if (count === 2) { drawerImg(bgImg, qrImg); } }})function redirectUrl (url) { return 'https://xxx/view?fileUrl=' + encodeURIComponent(url);}function drawerImg (imgContent, qrContent, scaleBy = 2) { let {bgImgW, bgImgH} = {375, 800}; let {qrx, qry, qrw, qrh} = {20, 700, 50, 50}; let Canvas = document.createElement('canvas'); let ctx = Canvas.getContext("2d"); Canvas.width = bgImgW * scaleBy; Canvas.height= bgImgH * scaleBy; ctx.drawImage(imgContent, 0, 0, bgImgW * scaleBy, bgImgH * scaleBy); ctx.drawImage(qrContent, qrx * scaleBy, qry * scaleBy, qrw * scaleBy, qrh * scaleBy); let nodeI = document.createElement("img"); nodeI.src = Canvas.toDataURL(); document.body.appendChild(nodeI)}
关于"html5中不同图片资源跨域画布污染如何解决"这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对"html5中不同图片资源跨域画布污染如何解决"知识都有一定的了解,大家如果还想学习更多知识,欢迎关注行业资讯频道。
图片
资源
不同
图片资源
画布
污染
内容
知识
动态
域名
篇文章
背景
二维
二维码
生成
价值
内容包括
前提
办法
操作简单
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
X网络安全事件
软件开发买卖合同模板
语音对讲软件开发的品牌
为保障网络安全购物时要关
云计算网站后台数据库
服务器虚拟化公司经营范围
网络安全 cto
王者荣耀转服务器显示邮箱有东西
自由网络安全
上海学生网络技术开发计划表
discuz更改数据库
access数据库2g
数据库连接池大小
服务器自动生产线专业定制
华为核心网络技术标准
网络平台如何解决网络安全
机房里面的服务器有什么用
金融行业软件开发资质
私募软件开发待遇
数字人民币网络安全概念
华为服务器技术支持
安全保密网络安全测试卷
华为服务器远程安装kvm
校园网络安全先进个人事迹
access简单数据库开发
上海工业软件开发怎么用
上海海智网络技术有限公司
网络安全 cto
软件开发和编程一样吗
u8数据库转换