Actionscript 在形状中嵌入文本
我想在ActionScript中将一些文本嵌入到一个圆圈中。我有三个问题:我不能使文本在圆圈中居中,我不能使文本居中对齐,我不能使字体应用于文本。关于字体,我知道它是正确嵌入的,因为它适用于我在舞台上创建的Actionscript 在形状中嵌入文本,actionscript,Actionscript,我想在ActionScript中将一些文本嵌入到一个圆圈中。我有三个问题:我不能使文本在圆圈中居中,我不能使文本居中对齐,我不能使字体应用于文本。关于字体,我知道它是正确嵌入的,因为它适用于我在舞台上创建的TextFields [Embed(source="DAXCOMPL.TTF", fontName="DaxCompact-Light", mimeType='application/x-font', embedAsCFF='false')] private var MyFont:Class;
TextField
s
[Embed(source="DAXCOMPL.TTF", fontName="DaxCompact-Light", mimeType='application/x-font', embedAsCFF='false')]
private var MyFont:Class;
public function Bubble(...) {
var myFont:Font = new MyFont();
var myFormat:TextFormat = new TextFormat();
myFormat.size = 20;
myFormat.align = TextFormatAlign.CENTER;
myFormat.font = myFont.fontName;
var circle:Sprite = new Sprite();
var r:int = 30;
var text:TextField = new TextField();
text.text = "Hello world!";
text.wordWrap = true;
text.defaultTextFormat = myFormat;
text.autoSize = TextFieldAutoSize.LEFT;
text.x = -30;
text.y = -30;
circle.graphics.lineStyle(2, 0x000000, 1.0);
circle.graphics.drawCircle(0,0,r);
circle.graphics.endFill();
circle.addChild(text);
circle.x = 75;
circle.y = 450;
addChild(circle);
}
尝试以下方式初始化文本字段:
var text:TextField = new TextField();
text.embedFonts = true; // use embedded font
text.defaultTextFormat = myFormat; // use this command before setting text
text.text = "Hello world!";
text.wordWrap = true;
text.autoSize = TextFieldAutoSize.LEFT;
text.x = -text.textHeight*0.5; //center the textfield after setting text
text.y = -text.textWidth*0.5;
很抱歉延迟回复,但这解决了我三个问题中的两个(垂直对齐文本和应用字体)。但是,文本仍然没有在形状的中心对齐-它总是向右偏远。这对你有用吗?