как преобразовать двоичные данные img в теги img - PullRequest
1 голос
/ 21 ноября 2011

все
Я получил двоичные данные изображения (используйте xhr), давайте назовем эти двоичные данные как данные
Интересно, как конвертировать данные в реальные теги img
Сначала:
Я пытаюсь использовать FileReder до readAsBinaryString , но это не сработает, поскольку reader.onloadend не сработает

Есть ли другие способы сделать это?
Заранее спасибо ~

 $.ajax({
                url:src,
                type:"GET",
                success:function(data){  
    var reader=new FileReader()
    reader.onload=function(e){

        var data=e.target.result
        console.log(data)

   } 
  reader.readAsDataURL(data)

...

Ответы [ 2 ]

0 голосов
/ 21 ноября 2011

Base64 кодирует ваши двоичные данные.См. Этот вопрос о том, как создавать двоичные данные base64 в JavaScript.

Затем вставьте строку base64 непосредственно в тег изображения.Например, если двоичные данные представляют собой изображение JPG, вы можете сделать это (теоретически):

$.ajax({
  url:src,
  type:"GET",
  success:function(binaryData) {  

    //toBase64 is a made up function, see above
    var base64Data = toBase64(binaryData);

    //assuming img is defined outside of here (not in the scope of this question)
    img.src = "data:image/jpg;base64," + base64Data;
  }
});
0 голосов
/ 21 ноября 2011

Вам, вероятно, следует позвонить readAsDataURL и использовать вместо него событие load.

var reader = new FileReader();

reader.onload = function (e) {
  var img = new Image();
  img.src = e.target.result;
};
reader.readAsDataURL(file);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...