因爲我是一個可怕的壞人,他喜歡以不同的方式做不同的事情, 我希望能夠像mySprite.graphics.drawText(...)那樣做一些事情。as3 - 將文本直接呈現給Sprite.graphics?
據我瞭解,目前獲取文本的唯一方法是創建一個TextField並將其添加爲mySprite的子項。在我的特殊情況下,我寧願不這樣做。
任何意見讚賞!
OOO
因爲我是一個可怕的壞人,他喜歡以不同的方式做不同的事情, 我希望能夠像mySprite.graphics.drawText(...)那樣做一些事情。as3 - 將文本直接呈現給Sprite.graphics?
據我瞭解,目前獲取文本的唯一方法是創建一個TextField並將其添加爲mySprite的子項。在我的特殊情況下,我寧願不這樣做。
任何意見讚賞!
OOO
如果你想包起來雪碧的方法,我想簡單地擴展Sprite類,函數的drawText添加到它。在該方法中添加TextField等。但它聽起來不像你想要的那樣。
在這種情況下,看看這裏 http://lab.polygonal.de/?p=916
他們創造的代碼,可以渲染字體不,好,字體的集合。有文件大小等缺點,但它是可能的。
錯誤的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);
我剛纔提出的代碼了,所以你必須去適應它,但原則應該是足夠清晰,以使其適應您的項目更多。
所以這樣你創建一個textField對象,寫你的文字,但不要添加到你的SPRITE。只需繪製它,然後就可以清除並刪除textField。你添加到你的精靈的是一個帶有該文本的位圖。 – 2011-04-19 22:50:30
謝謝。這是一個有趣的方法,可能會比添加文本字段本身更具性能。我應該更清楚 - 我希望不要添加任何類型的孩子。我想我可以將文本字段繪製爲位圖數據,然後通過beginBitmapFill將其轉換爲我的精靈圖形。 – 2011-04-22 00:39:09
這個答案是最好的方法。 – iND 2012-02-27 19:05:11
創建一個新的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();
Ç雅
可以有任何可以複製和粘貼的完整代碼。所以我可以理解你的意思。謝謝。 – DevelopmentBucket 2013-09-03 14:20:30
爲什麼要畫符OER使用的字體? – 2011-04-19 21:02:31
我想有一個沒有孩子的精靈。 – 2011-04-22 00:34:08
我會與答案昇華系統給你,因爲這會給你一個「扁平」精靈沒有chidlren – 2011-04-22 01:02:09