vue图片转file文件类型
vue图片转为File文件类型
供参考,欢迎指教
文章目录
- vue图片转为File文件类型
- 图片转为base64格式
- base64格式转为File文件类型
- 使用
- File文件转base64格式
- 使用
- 返回格式效果图
步骤:
- 先把
图片路径
转为base64
格式 - 再把
base64
转为File文件
图片转为base64格式
这里把方法定义js文件中,根据需要自行调整
export const imageToBase64 = (img) => {// Vue.prototype.$imageToBase64 = img => { //定义全局var canvas = document.createElement("canvas");canvas.width = img.width;canvas.height = img.height;var ctx = canvas.getContext("2d");ctx.drawImage(img, 0, 0, img.width, img.height);var ext = img.src.substring(img.src.lastIndexOf(".") + 1).toLowerCase();var dataURL = canvas.toDataURL("image/jpeg" + ext);return dataURL;
};
base64格式转为File文件类型
export const base64ToFile = (urlData, fileName) => {let arr = urlData.split(',');let mime = arr[0].match(/:(.*?);/)[1];let bytes = atob(arr[1]); // 解码base64let n = bytes.lengthlet ia = new Uint8Array(n);while (n--) {ia[n] = bytes.charCodeAt(n);}return new File([ia], fileName, { type: mime });
}
使用
- 引入
js
文件
import { imageToBase64, base64ToFile } from "@/api/commonApi";created() {//调用方法 【url仅参考】let url = 'https://testwq.jk.net/uploads/20200701/111fa8095def5bd296332f7eac01e400.jpg';this.handleImgToBase64(url, (res) => {// 接收回调结果console.log('回调结果', res);});
},methods: {/*** url: 图片路径* cb: callback*/handleImgToBase64(url, cb) {let that = this;var image = new Image();image.crossOrigin = '';image.src = url;image.onload = function () {let base64 = imageToBase64(image); //图片转base64let file = base64ToFile(base64, 'file'); //base64转File// 根据自身需求调整【因个人项目逻辑不一样,这里使用回调函数】cb && typeof cb == 'function' && cb(file);return file;}},
}
File文件转base64格式
通过
FileReader
对象读取存储文件内容。
说明:
readAsDataURL
方法会读取指定的 Blob
或 File
对象。读取操作完成的时候,readyState
会变成已完成DONE
,并触发 loadend
事件,同时 result
属性将包含一个data:
URL格式的字符串(base64编码)以表示所读取文件的内容
/**
* file: file文件
*/
base64(file) {return new Promise(function(resolve, reject) {let reader = new FileReader();let imgResult = "";reader.readAsDataURL(file);reader.onload = function() {imgResult = reader.result;};reader.onerror = function(error) {reject(error);};reader.onloadend = function() {resolve(imgResult);};});
}
使用
<input type="file" @change="previewFile">
var file = e.target.files[0];
this.base64(file);
返回格式效果图
vue图片转file文件类型相关推荐
- vue中前端实现图片压缩 file文件
项目中遇到上传图片需要在前端进行图片压缩,将我的实现思路记录一下.(我已经拿到上传的file文件的前提下) 先创建一个公用的js,这里我的是api.js,里面封装一些常用的方法 将图片压缩的方法写到这 ...
- 【前端图片转化】 base64格式 转为 File文件类型
下面的函数能将base664格式 用于已知bseae64 转File格式上传 求点赞!! 关注!! 收藏 !! base64格式的图片不能直接上传到oss图片服务器的,需要转换成file文件流的形式上 ...
- 【JS实战】base64转换为file文件类型(上传头像为例子)
base64转换为file类型 点击头像,选择文件 点击选取时,获取base64文件 这里使用了Vue-ImgCut插件(后续博客介绍) 代码讲解 function base64toFile(data ...
- 网络图片转换为文件类型(File)
以下的图片转文件如果涉及跨域的问题,需要服务端支持图片跨域(常见的就是用了OSS存储图片的,需要在控制台开启允许跨域请求) 如果oss控制台已经开了允许跨域依然是偶尔出现报错的话,可以在图片后面带一个 ...
- 前端将base64图片转换成file文件
1.base64转成file具体代码 // base64图片转file的方法(base64图片, 设置生成file的文件名)function base64ToFile(base64, fileName ...
- 网络图片转换为文件类型
文章目录 普通图片连接转化为文件实现 1.图片链接转base64 1. 利用`canvas`转换 2. 利用ajax转换 3. 利用fetch转换 2.base64转化为文件类型 以下的图片转文件如果 ...
- .NPT 扩展名格式文件类型及打开方式分析:首次渗入 XR 内容领域
文件扩展名 NPT 有多种文件类型,并且也与多种不同的软件程序相关联.NPT 文件主要归类为 Data Files.Settings Files 类型.AR/VR技术普及以后,NPT 也有了 XR 内 ...
- js判断file是否为空_JS - 获取文件后缀,判断文件类型(比如是否为图片格式)...
1,获取文件后缀 有时候我们需要通过文件名或者路径,得到该文件的后缀名(扩展名),可以通过如下方式进行截取: //文件路径 var filePath = "file:///storage/e ...
- 上传file时accept限制文件类型pdf、doc、docx、 jpg、 png、xls 、xlsx等格式
<input type="file" accept="image/*" /> accept表示可以上传文件类型,image表示图片,*表示所有支持的 ...
最新文章
- 实验三 循环结构设计
- 最全面的 python 字符串拼接总结(带注释版)
- 键盘按下某键 停止运行java_实现按下一个键执行操作/松开一个键停止操作
- 如何在 Github 工作流文件里引用自定义实现的 action
- 丁腈橡胶自然老化时间_东莞元耀:解析抗UV老化试验箱正确的操作流程步骤
- 深度学习《VAE-GAN》
- LeetCode003-无重复字符的最长子串(Length of longest substring)-Rust语言实现
- 3 矩阵运算_小白学PyTorch——pytorch常见运算详解
- 计算机等级考试无纸化模拟软件(免费版)
- onreadystatechange 事件
- 厦门大学计算机系录取分数线贵州,贵州省多少名可以进厦门大学?附厦门大学近三年录取分数线...
- React简介--尚硅谷react全家桶笔记总结
- 美通企业日报 | 广州塔开业至今迎游客近1557万人次;居然之家成功借壳上市
- MySQL最全整理(面试题+笔记+导图),面试大厂不再被MySql难倒
- linux网卡的配置文件是双引号,Linux修改网卡ens33为eth0以及centos7下修改动态IP为静态IP地址...
- C语言编程Amn,amn(cmn和amn的公式)
- 专注于速度的公司对混乱一无所知
- 《曾文正公嘉言钞》读书笔记
- 国外邮箱哪家好?好用的公司邮箱怎么申请?
- 2020年4月西安葡萄城挂经
热门文章
- 【Scratch考级99图】图20-等级考试scratch绘制复杂图形5个正方形 少儿编程 scratch画图案例教学
- 小众Android桌面,几款小众的APP推荐~ 超级宝藏的哦~
- html 图片缩小后模糊,css图片缩放失真出现锯齿的如何解决呢?
- ipqc的工作流程图_品质部各人员工作流程图
- 进入知识储备期的通知
- 中望3D 2021 轴类零件灵活自动螺纹收尾
- 对币圈假冒科学家骗子盗取私钥的分析
- python cpu count_Python multiprocessing.cpu_count方法代码示例
- 《真实的幸福》读书总结
- 世界读书日之所思所想