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

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

点点

2021-03-26 21:38 阅读 577 喜欢 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 这三个格式,基本上能把所有的图片全部转化成功了。现在代码已更新完成。
随着智能化时代的来临,智能手机人手一个,手机内有很多的APP但是微信确实是现在十分常用的一款社交软件,有些新用户不知道手机微信如何创建群相册?
在微信软件中有一个拍一拍功能,我们只要在聊天页面中双击一下头像即可,那么就有小伙伴好奇了微信不小心拍了拍怎么撤回呢?
很多朋友都有PC端版本的微信软件,同时,PC端微信软件也带来了各种各样的问题。 功能这里不做说明,先说缓存文件都是存放在哪里,如何查看。
微信是我们常用的软件,很多的小伙伴私信小编,问小编,换了新电脑后如何把旧电脑的微信数据迁移到新电脑上,其实方法是很多的,今天讲个简单点的,希望可以帮到小伙伴们,那就跟小编来看一下吧!
微信PC版一定要保证原来的路径目录,且一定要同时拷贝【All Users】目录。原因是【All Users】目录里保存一些配置信息及微信账号头像,如果不拷贝这个目录,只拷贝你的微信ID文件夹,导致的结果就是登录后会重新更新聊天记录文件,最终导致微信聊天记录迁移失败。