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

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

点点

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


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

赞赏支持
提交评论
评论信息(请文明评论)
暂无评论,快来快来写想法...
推荐
在微信朋友圈中,有些信息对于小伙伴们来说非常重要,为了方便自己和朋友找到可以选择置顶,置顶后自己和朋友就可以第一时间看到。那么,如何实现微信朋友圈的置顶呢?
最近很多的小伙伴们都在私信小编,说是微信好友删除了怎么加回来,小编一直挺忙,没有仔细的去实践过,微信已经删除的好友怎么找回来成为了许多小伙伴们的难题,许多小伙伴们一不注意就将微信好友删除了,还不知道微信好友删除了怎么找回来的小伙伴不用着.
微信有电脑端和手机端两种,有时我们会需要将手机端微信上的文件传到电脑端微信,或是将电脑端微信上的文件传到手机端微信上,那么如何实现两者间的文件互传呢?下面小编就来为小伙伴们具体介绍。
没有真正把撤回的图片删除,而是加密后藏起来了。其实这样说并不严谨,经过后续测试,发现PC端的确如此,而手机端(Android)撤回的图片是有删除的,但是删除的不干净。
建群是为了方便小伙伴们联络,统一说些事情,但有时候也存在着不方便,比如当你上班的时,群里聊天老是让你的手机响或者震动,影响着工作。那么,微信群怎么设置静音呢?下面为小伙伴们讲解一下。
今天给小伙伴们分享一个实用小工具,微信对话生成器,除了聊天截图,还支持各种红包截图、支付截图、钱包截图、朋友圈集赞截图等等。
苹果官方现在在微信发放了龙年限定红包封面,所有用户都能免费领取,有很多的小伙伴好奇具体要怎么领取,下面就来看一下苹果龙年限定红包封面领取方法吧。
我们现在使用微信给小伙伴们打视频的时候回听见好友设置的铃声,那么这个时候就有小伙伴们好奇了,微信视频铃声怎么设置呢?