[Monogame in C#]增加及處理多國語言文字 | 使用Visual Studio

Monogame是從微軟XNA改良而來的版本
架構與XNA幾乎一樣
但是Monogame還是有些缺點
今天要來分享在Monogame中增加多國語言文字
方便利用SpriteBatch.DrawString方法直接繪製出中文
首先先建立Content Pipeline Extension專案

之後你會看到Importer跟Processor
我們只使用Processor
打開它
裡面預設是這樣的Code
請改成這樣(記得上面using兩行也要寫)
或是自己微修改也行
完成之後進行編譯
(專案的x86x64依狀況選擇)
跳出錯誤視窗就算完成

然後新建Game專案
開啟右方的Content->mgcb檔
加入新的SpriteFont檔後
看到圖下方的References
打開它
加入剛剛的Pipeline檔案後按OK(為.dll)
然後點選Font檔
從下方的Processor選擇自訂的Pipeline
FontSize=字型大小
LanguageCharacterFile=將要使用的文字存成.txt檔,記得使用UTF-8
TTFFile=要使用的.ttf字型檔

mgcb的編譯目錄通常在"[專案名]/[專案名]/Content"
所以上面的兩個檔案也要放在該目錄下

完成之後記得按mgcb視窗上的Build才算完成
(在Build Output文字的上面有一個箭頭圖示)
最後照往常一樣繪製文字即可

備註:如果使用的文字過多,mgcb編譯的速度就會越慢

留言