我已经在服务器上以乱码形式存储了一个图像,然后我将其显示给用户。我想使用Javascript在客户端动态解扰图像。
有办法做到这一点吗?我想我需要一些方法来操作图像作为二进制对象来解扰它。
答案 0 :(得分:3)
您可以使用JavaScript对其进行加扰和解扰,然后获取生成的base64并将其插入到html中的img
标记中:
<img alt="Embedded Image"
src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIA..." />
然而,您的加扰算法仍可供用户使用 - 无论您隐藏它还是缩小它,专业的JS程序员都可以了解发生了什么。无论如何。
答案 1 :(得分:1)
您可以将像素数据复制到画布中并在那里进行操作。这里有一个可靠的答案:Get image data in JavaScript?
答案 2 :(得分:1)
你可以使用画布。
var can = document.getElementById('canvas');
var ctx = can.getContext('2d');
加载图像并在画布中绘制:
var img = new Image();
img.onload = function(){
can.width = img.width;
can.height = img.height;
ctx.drawImage(img, 0, 0, img.width, img.height);
}
img.src = 'toto.jpg';
然后,您可以使用上下文的方法来操作图像: