我通常会为每个字体创建1个.as文件并将这些.as文件导出到我加载到我的flash项目的swf中。这样我就可以选择要嵌入的字符。
现在我测试了从我的Windows字体文件夹中复制我的verdana ttf字体文件并嵌入它来创建一个Verdana swf字体文件。
当我测试跑步时,我尝试了一些带点的瑞典字符(åäöÅÄÖ)。其中一些字符的字符上方的点稍微偏移(如右侧或左侧的几个像素)。有人有同样的问题吗?
示例代码:
[Embed(source = 'fontfiles/verdana.ttf', fontName = 'Verdana', mimeType="application/x-font-truetype", unicodeRange = 'U+00-U+FF')]
public static var font:Class;
public function Verdana()
{
Font.registerFont(font);
var tf:TextField = new TextField();
tf.embedFonts = true;
tf.autoSize = TextFieldAutoSize.LEFT;
tf.defaultTextFormat = new TextFormat("Verdana", 30);
tf.text = "abc åäö ÅÄÖ";
addChild(tf);
}
答案 0 :(得分:0)
更改:
[Embed(source = 'fontfiles/verdana.ttf', fontName = 'Verdana', mimeType="application/x-font-truetype", unicodeRange = 'U+00-U+FF')]
public static var font:Class;
要:
[Embed(systemFont = 'Verdana', fontName = 'Verdana', mimeType="application/x-font-truetype", unicodeRange = 'U+00-U+FF')]
public static var font:Class;
似乎这样做确实有效。