context.fillText(...);
HTML5 キャンバスがあり、@font-face-font を使用してテキストを書きます。
Firefox (3.6) でページを表示すると、キャンバスの最初のペイントでフォントがまだダウンロードされていないため、テキストが標準フォントで表示されるという問題があります。ここ
で「解決策」を見つけましたが、フォントはキャンバスでのみ使用され、キャンバスはjQueryを使用してajaxでロードおよび表示されるため、機能しません。
timeout を使用しようとするよりも良い解決策はありますか?setTimeout(repaintCanvas, 500);
2466 次
2 に答える
4
私はReigelの答えの助けを借りて解決策を見つけたと思います:
$.get('font/url.ttf', function() {
// do canvas codes.... cause font is loaded...
});
font-family: 'fontfacename';
さらに、キャンバスの親要素にフォントviaを使用します。
フォントが2回読み込まれている可能性があります。わかりません。ただし、2回目のロードがないと、正しく表示されません。
于 2010-08-03T07:53:19.657 に答える
4
まあ、あなたはこれを試すことができます、
$.get('font/url.ttf',function(){
// do canvas codes.... cause font is loaded...
});
于 2010-08-03T07:38:00.787 に答える