[转] js实现对图片的二进制流md5计算
2023-09-11 14:14:15 时间
//计算图片md5 function img_MD5(img_path,callback) { plus.io.resolveLocalFileSystemURL(img_path, function(entry) { var fileReader = new plus.io.FileReader(); fileReader.readAsDataURL(entry); fileReader.onloadend = function(evt) { var format="image/jpeg"; //抽取DataURL中的数据部分,从Base64格式转换为二进制格式 var bin = atob(evt.target.result.split(',')[1]); //创建空的Uint8Array var buffer = new Uint8Array(bin.length); //将图像数据逐字节放入Uint8Array中 for (var i = 0; i < bin.length; i++) { buffer[i] = bin.charCodeAt(i); }; //利用Uint8Array创建Blob对象 blob = new Blob([buffer.buffer], {type : format}); var fileReader1 = new FileReader(); fileReader1.readAsBinaryString(blob); fileReader1.onload = function(evt) { if (evt.target.readyState == FileReader.DONE) { var imgblob = evt.target.result; var sparkMD5 = new SparkMD5(); sparkMD5.appendBinary(imgblob); var MD5 = sparkMD5.end(); console.log("MD5:" + MD5); callback(MD5) } }; } }, function(e) { console.log("Resolve file URL failed: " + e.message); }); } //使用方法 var url=document.getElementById("ID").src; img_MD5(url,function (md5){ console.log(md5) })
对二进制流进行md5加密需要用spark-md5.js
最新发现本地图片nativeObj 里的bitmap.toBase64Data();拿到Base64是经过压缩的,拿到的是jepg;所以要用本地io把图片Base64读出来。
相关文章
- js 实现几分钟前、几小时前、几天前,以及几分钟后、几小时后、几天前后
- JS+CSS3 360度全景图插件 - Watch3D.js
- JS框架_(JQbar.js)柱状图动态百分比进度条特效
- JS框架_(JQuery.js)点赞按钮动画
- JS框架_(JQuery.js)图片相册掀开切换效果
- A2D JS框架 - DES加密解密 与 Cookie的封装(C#与js互相加密解密)
- Node.js处理I/O数据之Buffer模块缓冲数据
- baguetteBox.js响应式画廊插件(纯JS)
- js获取字符串最后一个字符代码
- js 位掩码
- [Node.js] Set the Node.js Project to ECMAScript Modules (ESM)
- [Node.js] Initialize a LoopBack Node.js Project through the CLI
- Atitit 研发体系 codelib 代码库的建设 目录 1. 概念与组成2 1.1. Java代码2 1.2. Js代码2 1.3. H5 代码 js+css+htm+txt2 1.4.
- Atitit. 获取cpu占有率的 java c# .net php node.js的实现
- 华为OD机试 - 演唱会、计算最多能观看几场演出(Java & JS & Python)
- 华为OD机试 - 计算网络信号、信号强度(Java & JS & Python)
- JS推断浏览器类型与版本号
- Node.js:knex.js数据库MySQL query builder
- JS:使用Mock.js生成随机数据,拦截 Ajax 请求
- Appium基础 — 补充:Node.js介绍
- 主流前端框架对比:Vue.js , React, Angular.js
- 【JS高级】js面向对象三大特性之多态_07
- 华为校招机试 - 分积木(Java & JS & Python)
- js计算时间差(小时和分钟)demo效果