Flex 4 TLF和嵌入字体作为模块加载无法正常工作

时间:2010-11-22 19:55:38

标签: flex actionscript-3 flex4 tlf

这个问题真的让我很伤心,所以任何帮助都会非常棒!)

我有一个flex 4应用程序,可以加载flex模块。在这个模块中,我'注册'一堆字体。我在这个模块中有一个Spark textArea,它希望通过使用以下方式创建的文本流来使用这些字体之一:


textArea.textFlow = TextConverter.importToFlow(htmlText, TextConverter.TEXT_FIELD_HTML_FORMAT);

我使用以下方式注册'字体:


[Embed(source='/assets/fonts/book/HogarthScrD-Regular.ttf', embedAsCFF="true",fontName='HogarthScrD')] 
public static var _HogarthScrD:Class;

html文本的位置是:


  var htmlText:String = "<TEXTFORMAT LEADING="2"><P ALIGN="CENTER"><FONT FACE="HogarthScrD" SIZE="19" COLOR="#000000" LETTERSPACING="0" KERNING="0"><B>My html Text</B></FONT></P></TEXTFORMAT>";

我知道字体'HogarthScrD'作为对Font.enumerateFonts()数组的调试而存在;告诉我'HogarthScrD'是元素之一,属于cff

我已经阅读了大量文档并且未能找到解决方案:(我读过这篇文章:http://blogs.adobe.com/aharui/2010/03/flex_and_embedded_fonts.html 我明白这是什么意思我不知道如何实现这个...即使有人能指出我的例子也会有用!

我原以为是因为它是从HTML文本导入的,所以我只输入了一些文字并使用了不起作用的emebedded字体。

提前感谢一百万人!

1 个答案:

答案 0 :(得分:1)

好的,我有这个工作。这个问题更加微不足道。他们不是! HTML是一个字符串这一事实导致了这个问题。如果我使用相同的'字符串'但是类型为XML,它就可以正常工作..

所以,不要把我之前的类型更改为XML并删除引号!


 var htmlText:XML =<TEXTFORMAT LEADING="2"><P ALIGN="CENTER"><FONT FACE="HogarthScrD" SIZE="19" COLOR="#000000" LETTERSPACING="0" KERNING="0"><B>My html Text</B></FONT></P></TEXTFORMAT>;