哇,这个真的很奇怪。
我有以下设置:
舞台上的两个文本字段,均嵌入了 Arial 普通版和 Arial 粗体版。然后我有另一个文本字段,我设置如下:
tb.htmlText = "Test <b>Test</b>";
由于某种原因,粗体文本不显示为粗体,而是显示为常规粗细。我尝试使用 [Embed] 元标记将字体嵌入到库中,甚至使用 CSS 来强制使用 fontFamily。奇怪的是,我可以使用 Font.enumurateFonts 并看到两种字体都已嵌入,但文本字段拒绝使用 标记内的粗体版本。
我被告知这是 Mac 上 Flash CS4 的问题,但它可以在 PC 上运行。然而,我拒绝相信情况确实如此。 Adobe 现在肯定已经解决了这个问题吗?
任何帮助,将不胜感激。
您必须在字体列表中使用“粗体”字体(嵌入相同或其他文本字段中):
var fonts:Array = ( Font.enumerateFonts() );
for each( var fo in fonts ){
trace ( fo.fontName ,":", fo.fontStyle )
}
我认为如果你的字体样式返回为粗体,它可能应该毫无问题地工作。
这是一个解决方案:
var css:StyleSheet = new StyleSheet()
css.setStyle( "bold" , { fontFamily:"Myriad Pro Bold" } ) // you can catch the fontname in the list that was printed by the code above...
txtfield.styleSheet = css;
txtfield.htmlText = "regular or<bold>bold font</bold>."
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)