我看到很多关于在Flash中嵌入字体的问题,但是我似乎找不到答案解决我的问题。
我从一个字体swf文件中加载字体,并在高级别注册它们,以便可以在子swf中使用。问题是子swf也可能嵌入这些字体,但并没有明确地嵌入,这意味着它们只是由于子swf中的字段使用某些字符而被嵌入。这意味着子代中的文本字段将使用不完整的嵌入字体而不是在父级或任何祖先级别中注册的完整嵌入字体集。这也意味着可能成为此子级别的子元素的swf文件将无法获得完整的字体。
我的问题是: 有没有办法告诉flash在编译时不要嵌入字体到swf中,无论什么情况下?如果没有,是否有一种工具可以从已编译的swf文件中删除已经嵌入的字体?
以下是我思考/注意到的一些事情:
- 每个字体类似乎都与一个应用程序域相关联。(确认一下会很有帮助) - 在文本字段上使用设备字体不会导致任何字体被嵌入。(然而这对我来说不是一个选择,因为我需要在运行时从父级swf文件中嵌入字体到字段中。) - 我找不到一种方法来注销字体或仅仅告诉已加载的子swf使用父级字体,这对于应用于加载的子swf非常有用。 - 可能可以在不同的上下文中加载子元素,以允许父代字体定义覆盖子代定义。(或者是否会有两个定义,如果是,则哪一个优先?) - 从库中加载资产并将其添加到舞台上将获取父级字体的定义。(因为该资产是在子域之外创建的,这是有道理的。) - 可能的解决方案可能是在编译swf文件时不向文本字段添加任何字符,但这也不是一个选择,因为我需要使用任何字体的静态文本。
我已经开始在我的脑海中形成问题的定义,这可能是不正确的,因此,请必要时退后几步并给我提供一个不同的问题视角。到目前为止,似乎我上面问的问题是需要回答的正确问题,如果有解决办法,所有问题都将消失。
谢谢!
我从一个字体swf文件中加载字体,并在高级别注册它们,以便可以在子swf中使用。问题是子swf也可能嵌入这些字体,但并没有明确地嵌入,这意味着它们只是由于子swf中的字段使用某些字符而被嵌入。这意味着子代中的文本字段将使用不完整的嵌入字体而不是在父级或任何祖先级别中注册的完整嵌入字体集。这也意味着可能成为此子级别的子元素的swf文件将无法获得完整的字体。
我的问题是: 有没有办法告诉flash在编译时不要嵌入字体到swf中,无论什么情况下?如果没有,是否有一种工具可以从已编译的swf文件中删除已经嵌入的字体?
以下是我思考/注意到的一些事情:
- 每个字体类似乎都与一个应用程序域相关联。(确认一下会很有帮助) - 在文本字段上使用设备字体不会导致任何字体被嵌入。(然而这对我来说不是一个选择,因为我需要在运行时从父级swf文件中嵌入字体到字段中。) - 我找不到一种方法来注销字体或仅仅告诉已加载的子swf使用父级字体,这对于应用于加载的子swf非常有用。 - 可能可以在不同的上下文中加载子元素,以允许父代字体定义覆盖子代定义。(或者是否会有两个定义,如果是,则哪一个优先?) - 从库中加载资产并将其添加到舞台上将获取父级字体的定义。(因为该资产是在子域之外创建的,这是有道理的。) - 可能的解决方案可能是在编译swf文件时不向文本字段添加任何字符,但这也不是一个选择,因为我需要使用任何字体的静态文本。
我已经开始在我的脑海中形成问题的定义,这可能是不正确的,因此,请必要时退后几步并给我提供一个不同的问题视角。到目前为止,似乎我上面问的问题是需要回答的正确问题,如果有解决办法,所有问题都将消失。
谢谢!