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

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

点点

2021-03-26 21:38 阅读 575 喜欢 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


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

赞赏支持
提交评论
评论信息(请文明评论)
暂无评论,快来快来写想法...
推荐
中间发现一些图片总是失败,考虑到应该是图片的格式问题,最后兼容了下jpg gif png 这三个格式,基本上能把所有的图片全部转化成功了。现在代码已更新完成。
我们平时使用手机时免不了用到微信,很多小伙伴喜欢在里边发图片,视频等,想把它保存到下来怎么办呢?
当下的传播渠道有好多,微信公众号是一个不错的选择,微信公众号已经成为企业展示自己的最好平台,将自己企业的网站绑定在公众号上,分享出去。
在工作中,有的时候我们可能会收到一些纸质的文件,但是我们需要将这些文件转化为电子版本,来进行使用,那么我们就可以使用微信的小程序将纸质稿扫描为电子稿,接下来小编就教大家怎样使用。
我们大部分小伙伴们都在使用微信,都用手机绑定了微信号。可是有时候我们的手机丢了,或者我们换了手机,那么微信就比较麻烦啦。那么微信绑定手机号码换了怎么办?下面小编就为小伙伴们介绍微信换手机号验证几种解决方法,一起来看看吧
呵呵,小编又带小伙伴们涨知识啦!在微信中,为何要绑定管理员微信号呢?安全角度:一些操作如:修改密码、群发信息,需要管理员同意才可操作,其它人可能登录微信后台,但没有权限,没有管理员的授权是无法进行重要信息的操作,那么如何绑定管理员微信号呢?
随着在我们生活当中用到的微信越来越多,又是电脑版又是手机版的,现在很多小伙伴们也开始使用微信来进行日常工作上的沟通了。
现在是智能化的时代,智能手机进入了千家万户,那么微信又是智能手机常用的软件,很多的小伙伴对其功能的理解不同,导致使用的时候会出现各种各样的问题,微信是一个社交办公软件,支付软件,可以发朋友圈,聊天,通话等;就有很多小伙伴么好奇了微信有那么多功能,那微信消息为什么会自动删除呢?现在就让小编带小伙伴们来看一下吧。