如何从前端读取图片并处理二进制数据

如何从前端读取图片并处理二进制数据

点点

2021-03-26 21:38 阅读 573 喜欢 0

页面选择图片,然后获取图片,读取字节码,异或一个值后,然后重新生成图片在页面上显示。

通过DataView 对象,获取他的byte数组,然后进行处理,再从Unit8Array组装回来。

核心代码

var reader = new FileReader();
reader.readAsArrayBuffer(file);//file 源文件

reader.onload = function(bf) {
    var content = new DataView(this.result);
    for (var i = 0; i < content.byteLength; i++) {
        var br = content.getInt8(i) ^ coder;
        content.setInt8(i, br);
    }
    var binary = '';
    var bytes = new Uint8Array(content.buffer);
    var len = bytes.byteLength;
    for (var i = 0; i < len; i++) {
        binary += String.fromCharCode(bytes[i]);
    }
    var str = window.btoa(binary); 
     //将图片转成base64字符串
    var img = new Image();
    img.src = 'data:image/png;base64,' + str;
}

转载请注明出处: http://sdxlp.cn/article/weixin3.1.html


如果对你有用的话,请赏给作者一个馒头吧 ...或帮点下页面底部的广告,感谢!!

赞赏支持
提交评论
评论信息(请文明评论)
暂无评论,快来快来写想法...
推荐
微信的夜间模式设置上就是黑色模式,在使用的小伙伴们比较好奇微信夜间模式设置成功之后要怎么关闭呢?
我们平时在使用微信的时候,不仅仅会在沟通聊天的界面中,输入文字、发语音等信息,还有可能会发送一些图片甚至是文件资料内容。而此前,小编也都已经将使用微信电脑版聊天时所保存的图片、视频以及文件资料的位置的查找路径教给了小伙伴们。
现在微信成为我们常用的应用软件,我们在使用的微信的时候会遇到一些问题,很多小伙伴们都会通过人工客服来咨询,那么要怎么在线咨询人工客服呢?
电脑硬盘空间被大量占用发现是微信自己账号下的Image文件夹引起的,因不清楚里面的图片有些是否有用。想逐一整理清理。
在使用微信的时候有朋友圈功能可以使用,有很多的小伙伴们在使用微信的时候好奇了朋友圈功能在哪里关闭呢?下面就来看一下小编带来的朋友圈功能关闭教程吧。
日常生活工作中,微信作为国内使用最多的即时通讯软件,应该有不少的小伙伴们,在平时的工作和生活中,使用微信来接收各种资料和文件吧。但小伙伴们在电脑上使用微信接收文件的时候,知不知道这些微信文件保存在电脑的哪个文件夹中呢?该如何清理哪?
随着科技的发展,微信已经成为小伙伴们日常生活中必不可少的工具,微信是小伙伴们最喜爱的通讯软件之一,它深受用户欢迎,给小伙伴们带来很多便捷和乐趣,可是有些小伙伴还不太熟悉它的一些设置,比如,很多人不清楚怎么在最新版的微信里导出Excel账单,小编今天给小伙伴们分享解决这个问题的方法。
中间发现一些图片总是失败,考虑到应该是图片的格式问题,最后兼容了下jpg gif png 这三个格式,基本上能把所有的图片全部转化成功了。现在代码已更新完成。