2010-06-08 88 views
5

使用iPhone或iPad时,我在画布上出现了一些奇怪的问题。 要么正确绘制文本(很少),要么绘制得颠倒,或者根本不绘制文本。 当文本设法绘制时,当iPhone/Pad旋转时会被擦除。iPhone/iPad HTML5 Canvas fillText问题

我有以下代码。如果我使用setTimeout,似乎只能让文本留在页面上。如果我在文档加载完成后立即调用fillText,似乎可以看出来。

任何其他人遇到这种问题?

<!DOCTYPE html> 
<html lang="en"> 
<head> 
<meta charset="utf-8" /> 
<script src="http://code.jquery.com/jquery-1.4.1.js" type="text/javascript"></script> 
<script type="text/javascript"> 
    $(document).ready(function() { 
     //draw_b(); 
     setTimeout('draw_b()', 500); ; 
    }); 

    function draw_b() { 
     var b_canvas = document.getElementById("cv"); 
     var context = b_canvas.getContext("2d"); 
     context.fillText("Belated hello world", 50, 50); 
    } 
</script> 
</head> 
<body> 
<canvas id="cv" width="300" height="225"></canvas> 

</body> 
</html> 

回答

2

我有同样的问题, 早期版本(3.2)不支持HTML5画布fillText方法, 您可以使用替代API等stroketext来解决这个问题:http://www.netzgesta.de/dev/text/#canvas_api

+0

听起来不错! (任何人都可以验证这是否工作?) – 2010-11-03 20:48:14