我有一个 HTML5 画布并context.fillText(...);
使用 @font-face-font 编写文本。
使用 Firefox (3.6) 显示页面 我有一个问题,即在画布的第一次绘制中,尚未下载字体,因此文本将以标准字体显示。我在这里
找到了一个“解决方案” ,但它不起作用,因为该字体仅在画布中使用,并且使用 jQuery 使用 ajax 加载和显示画布。
有没有比尝试使用超时更好的解决方案?setTimeout(repaintCanvas, 500);
问问题
2466 次
2 回答
4
嗯,你可以试试这个,
$.get('font/url.ttf',function(){
// do canvas codes.... cause font is loaded...
});
于 2010-08-03T07:38:00.787 回答
4
我想我在 Reigel 的回答的帮助下找到了解决方案:
$.get('font/url.ttf', function() {
// do canvas codes.... cause font is loaded...
});
此外,将字体 viafont-family: 'fontfacename';
用于画布的父元素。
可能是字体加载了两次,不知道。但是如果没有第二次加载,它将无法正确显示。
于 2010-08-03T07:53:19.657 回答