位置: IT常识 - 正文

vue 图片转base64格式的方法

编辑:rootadmin
vue 图片转base64格式的方法 require的方式

推荐整理分享vue 图片转base64格式的方法,希望有所帮助,仅作参考,欢迎阅读内容。

vue 图片转base64格式的方法

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

用vue引入图片的require方式获取的值可以直接生成base64格式,但是该方法只适用于5kb大小以下的图片

const path = require('@/assets/images/test.png')canvas.toDataURL()

该方法canvas.toDataURL(`image/${ext}`)传入的图片类型是什么生成后的base64数据前缀就是什么类型,如果传入的类型和生成的类型不同,则表示该方法不支持该类型的图片,例如gif图片转换后是png

imgUrlToBase64(url) { return new Promise((resolve, reject) => { if (!url) { reject('请传入url内容') } if (/\.(png|jpe?g|gif|svg)(\?.*)?$/.test(url)) { // 图片地址 const image = new Image() // 设置跨域问题 image.setAttribute('crossOrigin', 'anonymous') // 图片地址 image.src = url image.onload = () => { const canvas = document.createElement('canvas') const ctx = canvas.getContext('2d') canvas.width = image.width canvas.height = image.height ctx.drawImage(image, 0, 0, image.width, image.height) // 获取图片后缀 const ext = url.substring(url.lastIndexOf('.') + 1).toLowerCase() // 转base64 const dataUrl = canvas.toDataURL(`image/${ext}`) resolve(dataUrl || '') } } else { // 非图片地址 reject('非(png/jpe?g/gif/svg等)图片地址'); } }) },FileReader.readAsDataURL()getBase64(imgUrl) { return new Promise((resolve, reject) => { if (!imgUrl) { reject('请传入imgUrl内容') } if (/\.(png|jpe?g|gif|svg)(\?.*)?$/.test(imgUrl)) { window.URL = window.URL || window.webkitURL var xhr = new XMLHttpRequest() xhr.open('get', imgUrl, true) xhr.responseType = 'blob' xhr.onload = function() { if (this.status == 200) { // 得到一个blob对象 var blob = this.response const oFileReader = new FileReader() oFileReader.onloadend = function(e) { const base64 = e.target.result resolve(base64 || '') } oFileReader.readAsDataURL(blob) } } xhr.send() } else { // 非图片地址 reject('非(png/jpe?g/gif/svg等)图片地址') } }) },
本文链接地址:https://www.jiuchutong.com/zhishi/295686.html 转载请保留说明!

上一篇:【HTML】HTML网页设计----动漫网站设计(html的网址)

下一篇:基于RuoYi框架自动生成后端代码及前端界面(ruoyi框架快速入门)

  • 增值税金税盘开票的结论
  • 应纳所得税额的税率
  • 进口关税计算公式 案例
  • 入账成本会计分录
  • 附加税费计税依据
  • 发票二维码只有一半可以收吗
  • 实际发生应收账款坏账时的会计处理
  • 关联方债务豁免需要缴纳所得税吗
  • 租赁合同交税一般交多少钱
  • 利率与股价的计算方法
  • 分公司如何缴纳企业所得税
  • 小规模纳税人按1%征收增值税
  • 机械租赁增值税税率2022年
  • 机票行业一定要开发票吗?
  • 合同无效后还能主张违约责任吗
  • 转账支票存根属于银行回单吗
  • 一般户有没有开户许可证
  • 注册了店面没有营业执照
  • 抵扣联复印件可以做账吗
  • 怎么处理有问题的货物
  • 营改增后一般纳税人税率是多少
  • 银行承兑电子汇票到期要怎么操作
  • 合同终止后发生的效果包括
  • 交易性金融资产包括哪些项目
  • 喀拉拉邦地理位置
  • php操作mysql的特点
  • 商业折扣影响入账金额吗
  • 阿根廷圣克鲁斯省
  • 个人纪录简称
  • 公司缴纳残保金怎么做账
  • code alignment
  • php示例代码大全
  • php文本统计访问量
  • 基建项目招标流程
  • web防盗链
  • 知识图谱实现方案
  • ts类型声明 要为某个文件里的变量声明吗
  • php考试时间倒计时
  • 企业如何利用期货对冲风险怎么操作
  • 11个点的是什么星座
  • 返还教育费附加、地方教育费附加代征手续费的请示
  • 食堂增值服务有哪些
  • 个人股东借款给公司涉及个税么
  • 简述SQL server管理器的功能
  • 贴现业务受理该怎么做
  • 新成立的小公司财务怎么管理
  • 税控系统如何清卡
  • 固定资产减少当月计提吗
  • 企业销售已使用的车辆
  • 收到的成本票怎么做账
  • 物业所在地是指物业住所地吗
  • 进项税额可以抵扣会计分录
  • 用于研发的材料如何入账
  • 银行回单模板
  • 多开税票的钱怎么算
  • 其他综合收益不影响当期损益
  • 在企业中的应用
  • sql如何截取字段
  • sql必会知识
  • 笔记本上安装软件怎么弄
  • win7安装无法将windows配置为在此计算机上运行
  • winxp如何将两个分区合并成一个分区
  • ssms.exe是什么进程
  • win10无法收到wifi
  • centos6.5配置静态ip地址
  • win10显示win8
  • linux一键安装软件
  • win8系统打不开exe
  • win10系统附件在哪里
  • chm文件打不开的解决方法
  • unity shader lod
  • python怎么输出日志
  • 怎么用unity做游戏
  • 骨骼动画程序设计
  • python中matplotlib绘制曲线
  • 编写高性能代码时以下哪种技术可用于减少内存访问延迟
  • c# hashtable 用法
  • 山东中信银行电话
  • 烟台市独生子女费 打什么电话咨询
  • 城建税教育费附加怎么做分录
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设