Actionscript 3 为什么为textfield设置不同的scaleX和scaleY会扭曲文本?

Actionscript 3 为什么为textfield设置不同的scaleX和scaleY会扭曲文本?,actionscript-3,flash-cs4,Actionscript 3,Flash Cs4,我有一个textField,其中我使用嵌入式字体,问题是当我更改其大小时,我没有设置相同的scaleX和scaleY值,当我将其变小时,它似乎会压缩其中的字母,当我将其变大时,会拉伸文本 我尝试使用宽度和高度值(而不是scaleX和scaleY,但结果相同)。。。嵌入式字体似乎在保持某种纵横比或其他什么,而且只有当EmbeddeFonts设置为true时才会发生这种情况。保持纵横比的简单解决方案是同时使用宽度/高度和scaleX/Y: textField.width = 250; textFie

我有一个textField,其中我使用嵌入式字体,问题是当我更改其大小时,我没有设置相同的scaleX和scaleY值,当我将其变小时,它似乎会压缩其中的字母,当我将其变大时,会拉伸文本


我尝试使用宽度和高度值(而不是scaleX和scaleY,但结果相同)。。。嵌入式字体似乎在保持某种纵横比或其他什么,而且只有当EmbeddeFonts设置为true时才会发生这种情况。保持纵横比的简单解决方案是同时使用宽度/高度和scaleX/Y:

textField.width = 250;
textField.scaleY = textField.scaleX;
//为什么不使用“设备字体”

var tf:TextField=new TextField(); tf.text=“benny”; var myBitmapData:BitmapData=新的BitmapData(300300); myBitmapData.draw(tf); var bmp:Bitmap=新位图(myBitmapData); 这个.addChild(bmp); bmp.width=bmp.height=1200; bmp.x=stage.stageWidth/4; bmp.y=stage.stageHeight/4;
所以你没有按比例缩放矢量显示对象的宽度和高度,你想知道为什么它没有保持比例缩放?我想我误解了你的意图。如果更改字体大小,文本字段应自动缩放。你能发布你的代码吗?正如其他论坛所确认的,这似乎是嵌入字体的正常行为,但似乎唯一的解决方案是调整字体大小,而不是文本字段大小,这样字体就不会被拉伸或压缩。。。。关于@Corey的答案,我必须尝试一下,但实际上我已经尝试将scaleX和scaleY都设置为1,然后设置宽度,结果是它仍然被拉伸或压缩。。。虽然我没有尝试在缩放之前先设置宽度,但我认为缩放也会直接影响宽度。您必须确保scaleX和scaleY始终相同,否则会出现失真。在您的评论中,您将它们都设置为1(好),然后只更改宽度,这对scaleY属性没有影响。我们需要处理device+embedded fontsI添加了一些代码。看看这个。也许对你有帮助。 var tf:TextField = new TextField(); tf.text = "benny"; var myBitmapData:BitmapData = new BitmapData(300, 300); myBitmapData.draw(tf); var bmp:Bitmap = new Bitmap(myBitmapData); this.addChild(bmp); bmp.width = bmp.height = 1200; bmp.x = stage.stageWidth/4; bmp.y = stage.stageHeight/4;