gpt4 book ai didi

apache-flex - Font.registerFont()。错误 #1508 : The value specified for argument font is invalid

转载 作者:行者123 更新时间:2023-12-04 06:16:08 25 4
gpt4 key购买 nike

这是我的 EnglishFonts.swf 应用程序,其中包含嵌入的字体:

package
{
import flash.display.Sprite;

public class EnglishFonts extends Sprite implements IFontApplication
{
[Embed(
source="../../assets/en/segoeprb.ttf",
fontName="Segoe Print",
unicodeRange="U+0048, U+0061, U+0073, U+006E, U+0074, U+003A, U+0030-0039"
)]
public var SegoePrintBold:Class;

public function get fonts():Vector.<Class>
{
return Vector.<Class>([SegoePrintBold]);
}
}
}

在我的 Flex 应用程序中,我通过 Loader 类加载这个 EnglishFonts.swf 并尝试像这样注册嵌入的字体:
var fontsApplication:DisplayObject = loader.content;
var fonts:Vector.<Class> = fontsApplication['fonts'] as Vector.<Class>;
Font.registerFont(fonts[0]);

Font.registerFont() 抛出这个错误:
ArgumentError: Error #1508: The value specified for argument font is invalid.
at flash.text::Font$/registerFont()

最佳答案

你的问题是安全的原因。如果你把你的 fonts.swf 和 loader 放在同一个目录下,加载器就会加载,你可以毫无问题地注册字体。您也可以在 EnglishFonts 构造函数中注册您的字体。如果您使用 Flash 创建 fonts.swf Flash 会在文档类的构造函数中自动添加 Font.registerFont。
fonts.swf 中的 Securty.allowDomain("*") 不会有帮助,但如果您创建 LoaderContext 策略文件或 Loader 中的某些设置可能会有所帮助。
问候
亚历克斯

关于apache-flex - Font.registerFont()。错误 #1508 : The value specified for argument font is invalid,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7219931/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com