1

好奇是否有人有这个问题:

  • 我将我的(嵌入的)字体保存在一个在运行时加载的外部文件(fonts.swf)中。很标准。
  • 我还使用了一些在 Flash IDE 中生成的 UI 图稿。其中一些艺术品包含static文本字段(因此,不是可以更改的正确文本字段。只是冻结的字形)。

问题是:如果我在任何静态文本字段中使用相同的字体,然后将相同的字体嵌入到我的运行时字体集合中,运行时字体将拒绝呈现。如果您将文本字段设置embeddedFonts=true为使用未嵌入的字体,则会获得相同的效果。如果我将静态文本字段更改为使用不同的字体,运行时字体就可以正常工作。

注意:如果您的嵌入式字体在运行时加载,这似乎只是一个问题。如果将它们合并到主 .SWF 中,则没有问题。

根据我对静态文本字段的(非常有限的)理解,它们会自动嵌入它们设置使用的字体,但嵌入所需的最少字符数。因此,它们嵌入了部分定义。我怀疑当我尝试在运行时加载相同的字体(并通过它发布Font.registerFont)时,Flash 会检测到预先存在的同名嵌入字体并静默失败。但我真的不知道。有没有办法解决这个问题?我想保持动态和静态文本字段之间的排版一致性,但这似乎是不可能的......

4

2 回答 2

1

我知道这在 Flash 8 及更低版本中是不可能的。我不认为你可以做到这一点,我什至在他们那天问过 Macromedia 他们是否可以做到这一点,它是不可以的。

检查文档,我理解这是无法完成的。也许我太老了。

于 2010-07-11T07:46:57.653 回答
1

Adobe 确实需要让字体更简单。我对字体和文本字段做了噩梦。有一次,我试图完全理解它们,但从那时起,它们就把我彻底累垮了。现在,我没有试图理解它们,而是专注于让它们发挥作用。

当我遇到问题时,我会从头开始重做所有字体。我确保 1)它们都通过代码中的 CSS 和 @Embed 标签嵌入(我不相信 Flash IDE 的字体)和 2)我在舞台上有一个字体实例。抱歉,这不是一个真正的“解决方案”,但每当我按照这些步骤操作时,我都会让字体再次工作。

然后,我交叉手指祈祷它们不要折断。当他们不可避免地这样做时,我开始诅咒 Adob​​e 的名字比史蒂夫乔布斯更糟糕,然后重新开始。哈哈。

自从我上次修复以来,我们项目中的字体很长一段时间都没有“损坏”。大多数错误与字体的粗体版本有关。为了简化事情,我只是避免使用粗体。

于 2010-07-11T17:56:03.880 回答