我已经使用Google并阅读了许多与此问题有关的不同主题,但仍无法解决我的问题。 我在动画片段中有这个动态文本字段,并且我嵌入了大写字母,小写字母和数字。我导出了这个动画片段,然后在我的课堂上使用它,它从XML加载数据。在AS3中嵌入粗体字体Flash动态字段
但是,在我嵌入了粗体字体后,如果我使用普通的话,它会停止显示来自xml的数据,这很好。 然后我创建了一个字体符号并在库中添加了粗体字体,但它仍然不给我任何东西。
有谁知道如何解决这个问题?
谢谢。
我已经使用Google并阅读了许多与此问题有关的不同主题,但仍无法解决我的问题。 我在动画片段中有这个动态文本字段,并且我嵌入了大写字母,小写字母和数字。我导出了这个动画片段,然后在我的课堂上使用它,它从XML加载数据。在AS3中嵌入粗体字体Flash动态字段
但是,在我嵌入了粗体字体后,如果我使用普通的话,它会停止显示来自xml的数据,这很好。 然后我创建了一个字体符号并在库中添加了粗体字体,但它仍然不给我任何东西。
有谁知道如何解决这个问题?
谢谢。
解决此问题的最简单方法是在屏幕外创建一组文本框。每个字段将处理您需要的单个字体和重量组合的嵌入。因此,例如,如果您需要常规,粗体,斜体以及单一字体的粗体和斜体,那么您将拥有4个文本区域 - 每个区域都打开了嵌入功能,并且您需要选择所需的字符。
然后,您可以简单地打开任何其他文本字段的字体嵌入,它将能够使用所有四种样式(该字体)。
我假设您使用的是最新版本的Flash IDE之一。
听起来像是一场冲突。如果该电影中的另一个文本字段具有相同的字体和重量,但未设置为嵌入字体,则会产生沉默(和恼人的)冲突。解决方案是确保所有文本字段(包括静态和输入)都设置为字体列表中带有星号(即Arial *)的字体。
如果这不能解决你的问题,我建议你应该使用[embed] MXML标签(仅限于cs4)嵌入字体。 Lee Brimelow在这个技巧上有一个很棒的视频教程,你可以在gotoAndLearn看它。
我在嵌入字体之前遇到了一些麻烦,并且嵌入标签为我解决了这个问题。看看my post,看看它是否有帮助。
我试着改变每个实例到嵌入式版本的字体没有成功。但是当时的我,能够使用在Adobe论坛这里提出的解决方案:
http://forums.adobe.com/thread/716363
而不是使用myTextFieldInstance.text
的,使用myTextFieldInstance.htmlText
和分配过程中指定"<b>" + yourStringValue + "</b>"
。尽管最大程度地克服了这个问题,但这是一个简单的解决方案。
应用Bold字体时肯定存在问题。
如果稍后在代码中的某处动态更新文本,字体不会设置为带有以下代码的BOLD。
var myTextFormat:TextFormat = new TextFormat();
myTextFormat.font = "Arial";
myTextFormat.bold = true;
myTextField.setTextFormat(myTextFormat);
//
myTextField.text = "some dynamic text";
相反,您需要在每次更新文本时应用文本格式。
var myTextFormat:TextFormat = new TextFormat();
myTextFormat.font = "Arial";
myTextFormat.bold = true;
//
myTextField.text = "some dynamic text";
myTextField.setTextFormat(myTextFormat);
不过,我一般将它设置为默认字体,如下图所示,
var myTextFormat:TextFormat = new TextFormat();
myTextFormat.font = "Arial";
myTextFormat.bold = true;
myTextField.defaultTextFormat = myTextFormat;
//
myTextField.text = "some dynamic text";
不为强有力的项目一个完美的方式,但它的工作原理。