2014-11-05 52 views
0

我正在編輯現有系統以將圖像從服務器文件系統傳遞到api。JQuery獲取圖像數據?這是一團糟嗎?

我得到的圖像數據,像這樣:

$.get("image.png", function(data) { 
    document.write(data) 
}); 

的結果是這樣的:

PNG IHDR}ԾsRGBbKGD可能是一個愚蠢的問題,但這是blob數據嗎?或者這可以用來重建圖像?或者有更好的方法來獲得blob或二進制數據?

+0

我認爲它幫你http://stackoverflow.com/questions/7650587/using-javascript-to-display-blob – xio4 2014-11-05 22:37:06

+0

謝謝,這有助於以供參考。 – Orane 2014-11-06 18:10:45

回答

2

它花了一段時間,但我發現一個合適的解決方案在這裏爲base64編碼圖像。我也可以通過HTTP將數據發送到我的服務器以重建圖像。

http://theshravan.net/blog/get-image-data-url-using-javascript/

var image = new Image(); 

    // create an empty canvas element 
    var canvas = document.createElement("canvas"), 
     canvasContext = canvas.getContext("2d"); 

    image.onload = function() { 

    //Set canvas size is same as the picture 
    canvas.width = image.width; 
    canvas.height = image.height; 

    // draw image into canvas element 
    canvasContext.drawImage(image, 0, 0, image.width, image.height); 

    // get canvas contents as a data URL (returns png format by default) 
    var dataURL = canvas.toDataURL(); 

    //document.write(dataURL); 
    console.log(dataURL); 
    }; 

    image.src = "image.png";