close

這篇文章使用到的插件(Plugins)請參考置頂文章

由於NGUI內建的字型無法顯示中文(或者是顯示出來的中文字非常非常小),所以如果要顯示中文,必須使用有中文的字型

在這邊使用標楷體作示範。

 

新增一個Project,再來選擇Assets → Import Package → Custom Package引入NGUI

 

之後選擇 NGUI → Create → Label

 

將字型放到該專案的資料夾內(我放在Assets資料夾內)之後新增一個C# script,命名為test

 

選取Label,看它的Inspector,將UILabel(Script)的NGUI改為Unity

 

再來點選它右邊的Font,會跳出Select a Font視窗,點選Show All,會出現該專案內的全部字型,此時選擇我們剛剛新增的字型

 

都選好後就像這樣(請記住,字型的字體大小和顯示文字都在UILabel這個Script內!)

 

由於Unity本身無法輸入中文,所以若要顯示中文則必須使用程式碼來動態修改!!

 

開啟我們剛開始新增的C# script腳本test,輸入以下程式碼


using UnityEngine;
using System.Collections;

public class test : MonoBehaviour
{
    UILabel show;   //NGUI的Label

    void Start()
    {
        show = GameObject.Find("UI Root/Label").GetComponent<UILabel>();//給予Label的路徑

        show.text = "中文字型出現了!";//要顯示的中文字串
        show.fontSize = 20;//字型的大小

        show.color = Color.black;//字體顏色為黑色
    }

    void OnGUI()
    {
        if (GUI.Button(new Rect(0, 0, 100, 50), "終於顯示中文了") == true)
        {
            show.text = "終於顯示中文了";
            show.fontSize = 60;
        }
    }
}


 

 

然後將此C# script拖到任意元件上(我將它放到UI Root上)後執行!

 

按下左上角的Button後...

 

 

注意!若發現不管怎麼調整字型大小,字都無法在變大的時候,記得調整Label本身的範圍

(此圖中New Label周圍的框線為預設大小,會限制字的大小,不讓字跑出這個範圍)

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 Yang 的頭像
    Yang

    Yang的部落格(轉貼文章請註記來源)

    Yang 發表在 痞客邦 留言(1) 人氣()