as3 - 直接将文本渲染为Sprite.graphics?

ori*_*zil 2 graphics text actionscript-3 textfield

因为我是一个可怕的,坏的人,他喜欢无缘无故地做事,我很乐意做一些像mySprite.graphics.drawText(...)这样的事情.

据我所知,目前获取文本的唯一方法是创建一个TextField并将其添加为mySprite的子项.在我的特殊情况下,我宁愿不这样做.

任何建议赞赏!

OOO

小智 7

错误的bzzzzzzzt创建一个新的BitmapData对象,创建一个位图,将bitmapData添加到它,然后将该位图作为子项添加到您的精灵.例:

var myTextImage:BitmapData = new BitmapData(textField.width, textField.height, true, 0x000000ff);

myTextImage.draw(textField);

mySprite.addChild(new Bitmap(myTextImage));

stage.addChild(mySprite);
Run Code Online (Sandbox Code Playgroud)

我只是编写了代码,所以你必须对它进行调整,但原则应该足够清晰,以使其适应你的项目.


小智 6

创建一个新的BitmapData对象: bitmapdata = new BitmapData(txt.width, txt.height, true, 0x000000ff);

在上面绘制文本字段: bitmapdata.draw(txt);

然后使用图形类,它的工作原理!

sprite.graphics.beginBitmapFill(bitmapdata);
sprite.graphics.drawRect(0,0,txt.width,txt.height);
sprite.graphics.endFill();
Run Code Online (Sandbox Code Playgroud)

C ya