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

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

点点

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


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

赞赏支持
提交评论
评论信息(请文明评论)
暂无评论,快来快来写想法...
推荐
现如今微信是一个很火的社交软件,可以用来聊天,也可以用来支付,转账发朋友圈分享自己的生活等;给好友发消息发不出去是什么原因,现在就让小编带小伙伴们来看一下吧。
每年苹果发布会过后,应该都会有部分使用安卓手机的小伙伴转到iPhone的阵营里,手机中很多的资料都需要转移到新手机上,尤其是当下的微信聊天记录,珍贵的相片等,那当购买新iPhone后,如何将Android的资料转移到iOS上呢?相信小伙伴们也很好奇,不同系统也可以转移吗?现在小编就来教小伙伴们如果把Android的资料转移到iOS里,跟小编一起看看吧!
微信是我们现在最常用的社交软件,但是在我们使用的时候,会产生非常多的垃圾,让我们的手机和电脑运行的内存越来越少,速度越来越慢,我们该怎样操作可以使我们的手机和电脑变快哪?重点来了!
微信现在最新版本,推出了个人信息的浏览和导出功能,但是很多小伙伴们不知道微信个人信息怎么导出?很多小伙伴想要导出自己的信息,那么下面就让小编给小伙伴们介绍一下具体的导出教程。
现如今,手机已然成为我们工作生活必须的一件物品,不管是朋友之间的聊天,工作上的交流,亦或是私密伙伴之间的隐秘对话,都通过手机,通过微信聊天功能得以实现。
随着智能化时代的来临,智能手机人手一个,手机内有很多的APP但是微信确实是现在十分常用的一款社交软件,有些新用户不知道手机微信如何创建群相册?
手机版微信软件被很小伙伴使用,用来聊天,支付等,有的用户在使用该软件时,为了防止被他人打扰,因此想要打开仅能通过手机号添加为好友功能,但是却不知道如何打开,那么小编就来为小伙伴们介绍一下吧。
今天给小伙伴们分享一个实用小工具,微信对话生成器,除了聊天截图,还支持各种红包截图、支付截图、钱包截图、朋友圈集赞截图等等。