Я хочу завантажити зображення PNG, закодоване в Base64, у елемент полотна. У мене є такий код:
<html>
<head>
</head>
<body>
<canvas id="c"></canvas>
<script type="text/javascript">
var canvas = document.getElementById("c");
var ctx = canvas.getContext("2d");
data = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAIAAAACDbGyAAAAAXNSR0IArs4c6QAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9oMCRUiMrIBQVkAAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAAADElEQVQI12NgoC4AAABQAAEiE+h1AAAAAElFTkSuQmCC";
ctx.drawImage(data, 0, 0);
</script>
</body>
</html>
У Chrome 8 я отримую помилку: Uncaught TypeError: Type error
А у Firebux у Firebux це: "Тип об'єкта несумісний із очікуваним типом параметра, пов'язаного з об'єктом" код: "17"
У цьому base64 є чорний квадрат PNG розміром 5x5px, який я зробив у GIMP, і перетворюю його на base64 у програмі base64 GNU / Linux.
src
, оскільки ви повинні використовуватиonload
зворотний виклик, щоб переконатись, що зображення закінчилося завантаження. 50% моїх тестів не вдалося, оскільки зображення не закінчилось.