在加载@ font-face-font之前,如何等待第一次canvas重绘?

我有一个HTML5-canvas并用context.fillText(...);写文本context.fillText(...); 使用@ font-face-font。
使用Firefox显示页面(3.6)我遇到问题,在canvas的第一个画面上,字体尚未下载,因此文本将以标准字体显示。
我在这里找到了一个“解决方案” ,但它不起作用,因为字体仅在canvas中使用,并且使用jQuery加载并使用ajax显示canvas。
有没有比尝试使用超时setTimeout(repaintCanvas, 500);更好的解决方案setTimeout(repaintCanvas, 500);

好吧,你可以试试这个,

 $.get('font/url.ttf',function(){ // do canvas codes.... cause font is loaded... }); 

我想我在Reigel的回答帮助下找到了解决方案:

 $.get('font/url.ttf', function() { // do canvas codes.... cause font is loaded... }); 

另外通过font-family: 'fontfacename';使用字体font-family: 'fontfacename'; 对于canvas的父元素。
可能是字体加载了两次,不知道。 但如果没有第二次加载,它将无法正确显示。