2015-06-16 1 views
6

в моей игре У меня есть текст пользовательского интерфейса, который я назвал «меткой», и я хочу программно установить его шрифт. Я пытался это сделать:Как установить шрифт для текста пользовательского интерфейса в Unity 3D программно

label.GetComponent<Text>().font="Arial"; 

Я получаю сообщение об ошибке, потому что атрибут шрифта не хочет строку, кроме шрифта. Итак, как я могу настроить шрифт на Arial программно?

ответ

2

попытайтесь создать общедоступную переменную типа Font в редакторе.

public Font myNewFont; 

, то вы можете сделать что-то вроде

label.GetComponent<Text>().font= myNewFont; 

не в состоянии проверить это, но я думаю, что он должен работать, вот очень похожий вопрос ... How to change Font type in Unity?

+0

Но я хочу использовать Arial. Не мой шрифт – nix86

+0

Я думаю, что arial является значением по умолчанию, но если нет .. вы можете назначить шрифт Arial в переменной myNewFotn или сделать: 'label.GetComponent () .font = Resources.GetBuiltinResource (typeof (Font), «Arial.ttf») в качестве шрифта '' это описано в другом сообщении, которое я поделил с вами. –

+0

По умолчанию шрифт не равен – nix86

14

Это работает:

label.GetComponent<Text>().font = Resources.GetBuiltinResource(typeof(Font), "Arial.ttf") as Font; 
+2

Можно также упростить до: Resources.GetBuiltinResource ("Arial.ttf") – Whyser

Смежные вопросы