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

时间:2013-11-14 05:51:53

标签: javascript image canvas internet-explorer-8 base64

如何将图像(png)转换为Javascript中的字节代码。我已经使用过这段代码,但在IE8中没有使用此代码,因为IE8中不支持canvas元素。

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页面中的Image到base64字节代码,或者从任何图像url base64字节代码。

我的图片网址就像this有没有其他方法可以在javascript中获取图片字节代码。

1 个答案:

答案 0 :(得分:1)

简单的回答很遗憾,你不能 - 开箱即用。

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

IE8的poly-fill允许你使用excanvas等基本功能。然而,这与上述两个方法不同,不支持像素提取。

有两种解决方法:

  1. 使用服务器:将图像发送到服务器并在那里处理
  2. 使用基于Flash的画布“poly-fills”,可以执行此操作。
  3. 对于后一点,有一些选项,例如这一个:
    http://flashcanvas.net/