如果有人遇到这个问题,我很好奇:
static
文本字段(因此,不适当的TextField可以更改。只是冻结的字形)。问题在于:如果我在任何静态文本字段中使用相同的字体,然后将相同的字体嵌入到我的运行时字体集合中,则运行时字体将拒绝呈现。如果您使用embeddedFonts=true
设置文本字段以使用未嵌入的字体,则会产生相同的效果。如果我将静态文本字段更改为使用不同的字体,则运行时字体可以正常工作。
注意:如果在运行时加载嵌入字体,这似乎只是一个问题。如果他们被合并到主.SWF,那么没有问题。
根据我(非常有限)对静态文本字段的理解,它们会自动嵌入它们设置使用的字体,但仅所需的最小字符数。因此,他们嵌入了部分定义。我怀疑当我尝试在运行时加载相同的字体(并通过Font.registerFont
发布)时,Flash检测到一个同名的嵌入式字体,并且无声地失败。但我真的不知道。有没有解决这个问题的方法?我想保持动态和静态文本字段之间的排版一致性,但这似乎不可能......
答案 0 :(得分:1)
我知道Flash 8及更低版本无法实现这一点。我不认为你能做到这一点,我甚至在他们的日子里回答Macromedia,如果他们能做到这一点,那就是NO。
检查文档,我理解这是不能完成的。 也许我太老了。
答案 1 :(得分:1)
Adobe确实需要让字体更容易。我做过关于字体和文本字段的噩梦。有一段时间,我试图完全理解它们,但从那以后它们已经完全磨损了我。现在我不是试图理解它们,而是专注于让它们发挥作用。
当我遇到问题时,我会从头开始重做所有字体。我确保1)它们都是通过代码中的CSS和@Embed标签嵌入的(我不相信Flash IDE的字体)和2)我在舞台上有一个字体实例。对不起,这不是一个真正的“解决方案”,但每当我按照这些步骤操作时,我都会重新使用字体。
然后,我伸出手指祈祷他们不要休息。当他们不可避免地这样做时,我开始诅咒Adobe的名字比史蒂夫乔布斯更糟糕并重新开始。洛尔。
自从我上次修复以来,我们项目中的字体在很长一段时间内都没有“破坏”。大多数错误都与字体的粗体版本有关。为了简化事情,我只是避免使用粗体。