C# を使用して統一されたテキストの幅を取得したい。
これが私がやろうとしていることです。
int GetWidthOfMessage(string message)
{
int totalLength = 0;
Font font = text.font; //text is my UI text
CharacterInfo characterInfo = new CharacterInfo();
char[] arr = message.ToCharArray();
foreach (char c in arr)
{
font.GetCharacterInfo(c, out characterInfo, text.fontSize);
totalLength += characterInfo.advance;
}
return totalLength;
}
しかし、 font.GetCharacterInfo(...) は false を返し、 characterInfo.advance は任意の文字に対して 0 です。