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

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

点点

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


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

赞赏支持
提交评论
评论信息(请文明评论)
暂无评论,快来快来写想法...
推荐
两大支付软件现在出现了重大的变革,微信和支付宝都支持转账功能,但两者之间不能直接转存,接下来教小伙伴们从微信转账给支付宝的操作方法。
微信是一款聊天交友,分享生活的一个社交软件,可以和好友聊天、支付、发朋友圈分享一些有趣的事情等,有的小伙伴在发布朋友圈的时候想改定位该怎么改呢,现在就让小编带小伙伴们来看一下吧。
智能手机的时代,微信是我们经常使用的社交软件,有时候在工作与生活中免不了的需要视频通话,如果我们的视频通话功能无法使用,接下来小编就教小伙伴们怎么解决这个问题。
安卓手机版微信软件被很多小伙伴使用,用来聊天,支付等,有的小伙伴在使用该软件时,为了节省手机内存,因此想要清空所有聊天记录,但是却不知道如何清空,那么小编就来为小伙伴介绍一下吧。
微信是小伙伴日常每天都会使用的通讯工具,涵盖了社交、支付、购物、预订等多个方面。小伙伴们可以通过微信与好友聊天、分享生活点滴、浏览公众号文章、进行在线支付、购物等。
智能手机发展越来越快,系统越来越好,内存也越来越大,小伙伴们免不了要换手机,手机内的很多东西又不想丢怎么办哪?尤其是微信与QQ这样的聊天工具,微信里的聊天记录如何来迁移到另外一部手机?其实方法很简单。接下来我说一下详细的一个操作方法,感兴趣的小伙伴可以提前收藏一下,没准哪天小伙伴们换手机就用到了。
微信小绿书功能正在内测当中,不过还是有很多的小伙伴比较好奇微信小绿书在哪呢?
在当下的时代中,微信成为了我们日常生活工作中不可或缺的工具,很多的小伙伴们对微信聊天记录的保存与导出有很大的执念,因为手机内存的问题,很多的小伙伴对聊天记录进行了备份,有的直接删除,可是发现删除后内存不会真正的减少,用不了几天又会非常的卡。有的小伙伴们会直接换新手机弄个大内存的。