【发布时间】:2016-01-29 02:38:35
【问题描述】:
我想将 base64 中的 png 图像加载到 html5 画布元素。我有这个代码:
<html>
<head></head>
<body>
<canvas id="pageCanvas"></canvas>
<script type="text/javascript">
var canvas = document.getElementById("pageCanvas");
var ctx = canvas.getContext("2d");
var imageData ="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAIAAAACDbGyAAAAAXNSR0IArs4c6QAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9oMCRUiMrIBQVkAAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAAADElEQVQI12NgoC4AAABQAAEiE+h1AAAAAElFTkSuQmCC";
var imageObj = new Image();
imageObj.src = imageData;
ctx.drawImage(imageObj, 50, 100);
</script>
</body>
</html>
以上代码在 IE、chrome、Microsoft edge 中运行良好。但在 Firefox 中,图像未显示。它显示空白页。有时当我们重新加载页面时,它会在画布中显示一个图像。
非常感谢您的回答。
【问题讨论】:
-
您在控制台中看到任何 javascript 错误吗?
-
是的,同意 faheem。检查您的控制台是否有错误。我目前没有 Firefox,但您的代码可以在我的 IE 和 chrome 上运行
-
感谢您的指导。我检查了控制台,它没有显示任何与图像渲染相关的错误。
标签: javascript html image html5-canvas png