我正在使用Flash CS5,我的导出的SWF文件出现问题:它的大小超过100kb。我有2个矢量符号和4个动态文本,嵌入Calibri字体框,显示来自外部XML文件的信息。这些文本框是生成我的swf文件最大尺寸的文本框。我需要在某个地方减少,我已经搜索了但是我没有遇到过“将字体嵌入flash文件的最佳实践指南”。我发现很难相信如果你只嵌入1个单字体的字母数字字符,你的文件大小就会达到> 100kb ..
答案 0 :(得分:2)
我已经多次参与其中,最终使用compc和mxmlc建立了swfs和swcs字体的ant构建系统。使用Calibri Regular,标点符号,alpha和数字进行快速测试会导致swc大小约为22KB。我不确定CS5正在做什么来吹掉swf大小。
我的建议是使用compc生成字体swc,然后将库链接到项目,并用指定链接字体文件的文本格式覆盖文本字段的现有文本格式。
这是我用来生成swc / swf的类:
package
{
import flash.display.Sprite;
public class Calibri extends Sprite
{
[Embed(source="../assets/calibri.ttf", fontName="Calibri", mimeType="application/x-font", unicodeRange='U+0020-U+002F,U+0030-U+0039,U+003A-U+0040,U+0041-U+005A,U+005B-U+0060,U+0061-U+007A,U+007B-U+007E')]
public static var fontClass:Class;
public static var fontName:String = "Calibri";
}
}
链接字体库的使用:
Font.registerFont(Calibri.fontClass);
TextFormat对象的参考:
textFormat.font = Calibri.fontName;
祝你好运!