在JavaScript IE8中将图像转换为字节代码

convert image to byte code in javascript IE8

本文关键字:转换 字节 代码 图像 JavaScript IE8      更新时间:2023-09-26

如何在Javascript中将图像(png)转换为字节码。我使用了这段代码,但在 IE8 中没有用,因为 IE8 中不支持画布元素。

function getBase64Image(){     
    p=document.getElementById("fileUpload").value;
    img1.setAttribute('src', p); 
    canvas.width = img1.width; 
    canvas.height = img1.height; 
    var ctx = canvas.getContext("2d"); 
    ctx.drawImage(img1, 0, 0); 
    var dataURL = canvas.toDataURL("image/png");alert("from getbase64 function"+dataURL );    
    return dataURL;
} 

是在IE8中获取图像字节码的任何其他方法。我需要从 html 页面中的图像到 base64 字节代码或任何图像网址 base64 字节代码。

我的图像网址是这样的,还有其他方法可以在javascript中获取图像字节代码。

简单的答案是不幸的是你不能 - 开箱即用。

正如您所说,IE8不支持canvas元素,因此无法将图像数据提取为字节,因为您需要通过画布然后使用toDataURLgetImageData

IE8 有多重填充,允许您使用 excanvas 等基本功能。然而,这不支持像上面提到的两个 metods 那样的像素提取。

有两种解决方法:

  1. 使用服务器:将图像发送到服务器并在那里处理
  2. 使用基于 Flash 的画布"多边形填充",它允许您执行此操作。

对于后一点,有几个选项,例如:
http://flashcanvas.net/