使用cgSceneGraph的nodetext中的TTF字体

时间:2013-02-19 13:30:42

标签: html5 canvas true-type-fonts

有没有办法在文本节点中使用TTF?我看到有一个setTypo方法,但它只获得一个字体系列字符串,如Arial。我应该在CSS中创建一个新的字体系列并使用它吗?

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

正如您所说,cgSceneGraph提供的文本扩展名将接受font-family字符串。 我们可以使用这样一个新功能扩展节点,但对于小的ROI来说它会很复杂。

一个好的简单解决方案是使用CSS创建一个font-family,然后在CGSGNodeText上使用它:

@font-custom {
    font-family: customNameForTheFont;
    src: url(myFolderWithFonts/font.ttf); 
} 

TTF字体适用于每个符合CSS3标准的浏览器。如果异国情调的框架接受Canvas但不接受TTF字体,请不要忘记声明EOT字体(您可以在网上找到转换器):

@font-custom {
    font-family: customNameForTheFont;
    src: url(myFolderWithFonts/font.eot); 
} 

并在您的应用程序中声明字体:

myTextNode.setTypo("customNameForTheFont");

请记住拼写错误是异步加载的。您可以通过预加载字体来避免可能的问题(使用带有内联样式的div使用字体,使用加载器类,...)。

干杯。 格温。