【问题标题】:FlashCS5 embedded Font htmlText bold: how to use TLFTextField and TextConverter?FlashCS5嵌入字体htmlText粗体:如何使用TLFTextField和TextConverter?
【发布时间】:2011-12-02 09:58:38
【问题描述】:

我在这个问题上被困了很长时间,这个问题已经被提出和讨论过很多次了。这项任务还很简单,真的不应该花费它已经拥有的疯狂时间:用嵌入字体(Arial 除外)在文本字段中加粗一些单词。

b 标记似乎只在使用 Flash 似乎可以本机识别粗体粗细的字体(Arial 等)时才起作用 - 但我使用的字体有 4 种粗细:常规、中等、粗体和黑色.我需要中等重量正文中粗体字的黑色重量。

我确实做了几十个测试,所有测试都失败了,使用“经典”文本字段,为每个重量嵌入一次字体并使用 htmlText:尝试了嵌入对话框中可能的所有设置,使用标签 b、span、em - 使用 TextFormat(粗体、字体)或样式表(fontWeight、fontStyle、fontFamily)...

结论:没有办法在单个文本字段中设置 2 种不同的嵌入字体。

问题肯定与字体的嵌入有关,通过以下调试辅助函数确认:

/**
 *  Debug helper: trace embedded fonts
 */
function trace_embedded_fonts():void
{
    var fonts:Array = Font.enumerateFonts();
    for ( var i:int = 0; i < fonts.length; i++ )
       trace( fonts[ i ].fontName + " - " + fonts[ i ].fontStyle + " - " + fonts[ i ].fontType );
}

/**
 *  Debug helper: Trace format
 */
function trace_classic_textfield_format( tf:TextField ):void
{
    trace( "trace_tlf_textfield_format( " + tf.name + " )" );
    trace( "  font = " + tf.getTextFormat().font );
}

分别输出Maven Pro - regular - embedded(即使我嵌入了 4 次字体,每个重量一次,也只有这一行 - 是的:我仔细命名它们,我尝试在 DF3 和 DF4 中导出动作脚本,也没有导出),以及场景中所有 textField 实例上的 font = Maven Pro,无论应用哪种样式(也尝试选择嵌入字体 - 最后使用 * - 和系统字体)。

总之,字体很奇怪,但我对此无能为力。

所以我的问题与新的文本布局框架(TLFTextField)有关:可以用它来实现吗?

文本从 XML 加载并包含简单的标签,如 em、b 等,但不能将它们重写为流标签。

我尝试了通过 TextConverter 类提供的转换 - 比如var tf:TextFlow = TextConverter.importToFlow(hyperText, TextConverter.TEXT_FIELD_HTML_FORMAT); - cf。 http://help.adobe.com/en_US/as3/dev/WS14c3067b34b57c6d4a97343b122ab36a52f-7ffb.html#WS14c3067b34b57c6d4a97343b122ab36a52f-7ff9 - 但我不明白如何设置每个标签的样式以及如何将 TextFlow 应用到已在 Flash 舞台上手动添加的 TLF 文本字段

【问题讨论】:

    标签: flash actionscript-3 flash-cs5 textfield tlf


    【解决方案1】:

    关于信息,我放弃了使用 TLFTextFields 并通过使用另一种字体(Flash 理解粗体)解决了这个问题 - 这个故事的寓意是这个问题目前是一个残酷的对 Flash 中的 TextField 的限制。

    还有一件事:在舞台上动态添加的文本字段中,粗体文本将不起作用,除非从一开始就在舞台上存在 TextFields(您需要使用的每种样式)(我在其中留下了 2 个带有“test”的文本字段白色背景上的白色以隐藏它们)。

    未来注意事项:针对此类问题制作“愤怒的电子游戏书呆子”视频。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-12-10
      • 1970-01-01
      • 2011-07-18
      • 2015-11-14
      • 2010-11-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多