XNA-如何顯示中文?

XNA-如何顯示中文?

    之前在顯示文字那篇文章中提到如何自訂一個字型檔和其使用字型檔的方法,這篇文章是做延伸用,當如果想要顯示所有的中文字的話就必須把你要使用的文字貼在<CharacterRegion>和</CharacterRegion>裡的<Start>和<End>標籤裡,而x4E00~x9FFF才可以指定所有的中文字(參照UTF-8),但此種方法顯示方法非常沒有效率,因為XNA的Content pipeline會將SpriteFont中指定的文字範圍轉換成圖片檔,雖然才兩萬多的字但會造成編譯(建置時)過久而沒效率,時間少說也需要幾小時。

    另外一個做法就是將遊戲中所會使用到的字全部都一個一個慢慢輸入進去字型檔中。

例如:

<CharacterRegion><Start>遊</Start><End>遊</End></CharacterRegion>

    因此這樣的做法可以大大的減少編譯的時間,也能夠顯示各國的語言,只要系統支援的話就可以,缺點大概就是要很清楚的記住遊戲中用過哪些字,而且這樣的方式也不適合做以故事劇情為主的AVG遊戲,通常都會以文字訊息較少的遊戲為主要的開發方向。