NGUI UILabel如何获得每个字符的坐标

mLblBase.UpdateNGUIText();

BetterList mTempVerts = new BetterList(); 
BetterList mTempIndices = new BetterList(); 

NGUIText.Update(false);
NGUIText.rectHeight = 1000000;
string mProcessedText = "";
// Wrap the text
bool fits = NGUIText.WrapText(text, out mProcessedText, false);
NGUIText.PrintCharacterPositions(mProcessedText, mTempVerts, mTempIndices);
Vector3[] list = mTempVerts.ToArray();
int[] indexs = mTempIndices.ToArray();

mLblBase就是UILabel引用。你想要哪个UILabel里字的位置就改成哪个。
这个list就是所有字的坐标,一些不可见的字符也计算在内的,比如:这样的转义。indexs是指每个字符的坐标位置。因为一些不可见的字符使用的是同样一个坐标的。


转载:http://ask.manew.com/question/20138

你可能感兴趣的:(unity3D,NGUI)