Actionscript 3 Flash AS3-尝试将当前嵌入字体更改为其他字体,但不显示新字体
我已经完成了一个项目,需要重新设计样式,以便与另一家公司一起使用,我很难用Helvetica Neue更改当前嵌入的字体DIN Next LT Pro 我是flash和AS3的新手,所以我从一开始就真正了解了这一点。我说我花了最后一天的时间在谷歌上研究这个问题,并尝试了大量的解决方案,但都无济于事 下面是如何设置闪光灯的 feedback.fla嵌入了以下字体:Actionscript 3 Flash AS3-尝试将当前嵌入字体更改为其他字体,但不显示新字体,actionscript-3,Actionscript 3,我已经完成了一个项目,需要重新设计样式,以便与另一家公司一起使用,我很难用Helvetica Neue更改当前嵌入的字体DIN Next LT Pro 我是flash和AS3的新手,所以我从一开始就真正了解了这一点。我说我花了最后一天的时间在谷歌上研究这个问题,并尝试了大量的解决方案,但都无济于事 下面是如何设置闪光灯的 feedback.fla嵌入了以下字体: DIN Next LT Pro粗体浓缩版 DIN Next LT Pro灯光浓缩 DIN Next LT Pro常规 Helveti
- DIN Next LT Pro粗体浓缩版
- DIN Next LT Pro灯光浓缩
- DIN Next LT Pro常规
- Helvetica Neue LT标准45灯
- Helvetica Neue LT标准55罗马
- Helvetica Neue LT标准75黑体
public class FeedbackPage extends AbstractPage {
public static const FONT_BOLD : String = "DIN Next LT Pro Bold Condensed";
public static const FONT_LIGHT : String = "DIN Next LT Pro Light Condensed";
public static const FONT_REGULAR : String = "DIN Next LT Pro";
etc.. etc..
FeedbackPage.as还导入另一个.as文件:
import dk.electric.synoptik.components.feedbackelements.PercentFeedback;
百分比反馈。作为此文件创建文本文件并应用字体:
var tfmtPercent : TextFormat = new TextFormat(FeedbackPage.FONT_BOLD, fontSize, 0x0a9fda);
_tfPercent = TextFieldUtils.createTextField(6, yPos, 150, 95, Math.abs(pctDif).toString() + "%", tfmtPercent, false, TextFieldAutoSize.NONE);
_sprContainer.addChild(_tfPercent);
将新字体Helvetica Neue LT Std 75 Bold嵌入fla文件后,我将反馈页更改为:
public static const FONT_BOLD : String = "Helvetica Neue LT Std 75 Bold";
导出我的fla,上传并查看,文本已消失。我尝试过使用嵌入时指定的名称(HelveticaNeueLTStd75Bold),但这也不起作用
有什么想法吗?因为我被卡住了
TextFieldUtils
package com.madsb.utils {
import flash.text.TextField;
import flash.text.TextFormat;
public class TextFieldUtils {
public static function createTextField(x : Number = 0,
y : Number = 0,
width : Number = 100,
height : Number = 100,
text : String = "",
textFormat : TextFormat = null,
multilineWordWrap : Boolean = false,
autoSize : String = "none",
embedFonts : Boolean = true,
antiAliasType : String = "advanced",
selectable : Boolean = false) : TextField {
var tf : TextField = new TextField();
tf.x = x;
tf.y = y;
tf.width = width;
tf.height = height;
tf.embedFonts = embedFonts;
tf.selectable = selectable;
tf.multiline = tf.wordWrap = multilineWordWrap;
tf.autoSize = autoSize;
tf.antiAliasType = antiAliasType;
tf.defaultTextFormat = textFormat;
tf.htmlText = text;
return tf;
}
}
}
尝试使用嵌入字体,将其放入库中(这样,如果计算机上没有安装该字体,人们也可以看到),并从中生成一个变量。然后将字体设置为该名称(
myFormat.font=myFont.fontName;
其中myFormat是文本格式的名称,myFont是字体的变量名。“fontName”部分应保持如下状态,而不是字体名称)
另外,我不确定,但我认为因为“Helvetica Neue LT Std 75 Bold”和“Helvetica Neue LT Std 75 Bold”不一样(因为有空格),flash可能不理解您所指的字体。首先显示
TextFieldUtils.createTextField()的代码。
。。。