Android WebView, ошибка canvas to base64 - PullRequest
0 голосов
/ 08 ноября 2011

EDIT toDataURL не поддерживается Android, он всегда возвращает одну и ту же строку:

http://code.google.com/p/android/issues/detail?id=7901

У меня есть Android WebView от ведьмы, я выполняю скриптэто преобразование преобразует его в base64 и передает его JavascriptInterface, который затем преобразует его в растровое изображение.Мой код JavaScript следующий:

function getBase64Image(img) {
     var canvas = document.createElement("canvas");
     var context = canvas.getContext("2d");
     canvas.setAttribute('width', 130);
     canvas.setAttribute('height', 130);
     var imageObj = new Image();
     imageObj.onload = function(){
         context.drawImage(imageObj, 0, 0);
         $("body").append(canvas);
         var a = canvas.toDataURL();
        $("body").append(a);
     };
     imageObj.src = img.src;
} 

Эта функция возьмет img, преобразует его в canvas и добавляет холст и base64 изображения к телу.Это хорошо работает в Chrome, но не работает в WebView, холст правильно отображается, но base64 всегда что-то вроде: data:,

Любое предложение о том, что может вызватьэто поведение или другое решение для передачи изображения с Android Bitmap

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...