第56節 - LibGDX: Displaying Traditional and Simplified Chinese Characters
這一節我會介紹如何用LibGDX程式顯示英文(English)、繁體中文(Traditional Chinese)和簡體中文(Simplified Chinese)文字,如下圖:

Unicode
Unicode(國際碼)是電腦的一項標準。它對世界上大部分的文字系統進行了整理、編碼,使得電腦可以用更為簡單的方式來呈現和處理文字。
大家可能會誤解以為電腦如果安裝了繁體中文作業系統(例如:Windows 10繁體中文版)就只能夠顯示繁體中文文字,如果想顯示簡體中文文字,就要安裝簡體中文作業系統或插件。這概念是不對的,以上大家的誤解是針對電腦作業系統介面(Interface),而不是顯示中文文字。如果大家想把電腦上的繁體中文作業系統介面轉換為簡體中文作業系統介面,大家就要安裝簡體中文作業系統或插件。
但是如果大家只想在電腦上顯示或輸入繁體中文文字或簡體中文文字,只要安裝中文字體(Chinese Fonts)就可以。因為同一個中文字如果繁體和簡體的寫法不同,Unicode是不同的,這代表同一個中文字的繁體和簡體是當兩個不同文字處理,如下圖:

- 以上已"遊戲"和"游戏"的Unicode作例子。
- "遊戲"和"游戏"的Unicode是不同的。
Example 1 (例子1)
1. DesktopLauncher.java

- 我們在DesktopLauncher內設定顯示的大小為650x800px。
2. MyDemo56.java

- 在MyDemo56.java內建立BitmapFont類別的font1物件。
- 嘗試顯示所有英文(English)、繁體中文(Traditional Chinese)和簡體中文(Simplified Chinese)文字。
3. Result (執行程式)

- 結果繁體中文(Traditional Chinese)和簡體中文(Simplified Chinese)文字不能顯示。
Making Bitmap Font using Hiero
我在第19節 - LibGDX: Bitmap Fonts, JSON & Skin介紹過用Hiero軟件製作Bitmap Fonts,簡單來說Bitmap Fonts就是在屏幕上顯示文字,Bitmap Font把一種字體的A至Z和其他字符儲存在一個.png檔案上,再傳到GPU作其他程式處理,這樣做也是為了減少記憶體的資源。
所以大家只要選擇一種字體支援中文字(不須理會繁體中文或簡體中文,因為Unicode是不同的,通常已包括在內),在Hiero軟件內設定則可。
大家可以在電腦的Windows/Fonts內找出支援中文字的字體,如下圖:

- 電腦的Windows/Fonts。
- 選擇一種支援中文字的字體。

- 開啟Hiero軟件,選擇之前已選擇好的字體。
- 輸入您想顯示的繁體中文和簡體中文文字。

- 在左上角選擇"File"。
- 再選擇"Save BMFont files (text)..."。
- 輸入名稱,例如: chinese,之後chinese.fnt和chinese.png兩個檔案就會產生。

- 大家要留意因為""程式"的繁體中文和簡體中文文字是相同的,Hiero軟件只會儲存一次。
Example 2 (例子2)
1. Assets

- 在Android的assets內建立"fonts"文件夾,複製chinese.fnt和chinese.png到文件夾。
2. DesktopLauncher.java

- 我們在DesktopLauncher內設定顯示的大小為650x800px。
3. MyDemo56_1.java

- 在MyDemo56_1.java內建立BitmapFont類別的font1物件,並讀取chinese.fnt的中文字體。
- 嘗試顯示所有英文(English)、繁體中文(Traditional Chinese)和簡體中文(Simplified Chinese)文字。
4. Result (執行程式)
這一次就成功顯示所有英文(English)、繁體中文(Traditional Chinese)和簡體中文(Simplified Chinese)文字。
