不是只要在face屬性上寫上字型名稱就可以嗎?到底有什麼問題?>( ゚ω゚ s)
(k ゚∀゚)<當我們在face屬性上寫上字型名稱時,其實吉里吉里是用玩家本身電腦所擁有的字型,那麼若果玩家的電腦沒有這字型,我們可以怎麼辦?
用其他常見的字型來取代?>( ゚ω゚ s)
(k ゚∀゚)<這方法當然可行,face屬性可指定多種字型,如果沒有這字體就可用另一個字型取代,不過相信大家多少都希望某種字型吧。
(k ゚∀゚)<解決方法有兩種,第一種是將字型檔案增添到遊戲裡,也就是遊戲本身自帶所使用的字型檔案,並不用理會玩家本身電腦是否擁有所需的字型。
是不是直接把字型檔案放入data資料夾就可以?>( ゚ω゚ s)
(k ゚∀゚)<不是的,除了把字型檔案放入data資料夾之外,還必須將字型檔案載入到吉里吉里裡。
(k ゚∀゚)<吉里吉里的檔案裡有一個叫addFont.dll這插件,這就是用來載入字型檔案,看看以下的範例。
[loadplugin module=addFont.dll] [eval exp="System.addFont('字型檔案名稱', true)"]
(k ゚∀゚)<在上述的範例裡,只要將ttf和otf等字型檔案放入data資料夾裡,之後再利用System.addFont()去將字型檔案載入到吉里吉里裡,留意填寫的字型檔案名稱必須有副檔名。
不過有時候吉里吉里好像無法辨認到字型檔案,那麼就算將字型檔案載入到吉里吉里裡,吉里吉里都無法用正確的字型去顯示文字,那該怎麼辦?>( ゚ω゚ s)
(k ゚∀゚)<這時我們可以用另一個方法來解決字型問題,就是去渲染字型,經過渲染的字型會產生一個吉里吉里專用字型檔案,什麼亂碼或字型的問題基本上是可以完全解決。
我不太明白,為什麼那麼好的方便不一開始就介紹呢……?>( ゚ω゚ s)
(k ゚∀゚)<因為渲染字型的限制十分多,吉里吉里專用字型檔案是儲存著一個指定字型大小的字型,例如我要用到字型大小為24的新細明體,當我要用到字型大小為16的新細明體時,雖然同樣是新細明體,不過我卻要製作另一個吉里吉里專用字型檔案。
(k ゚∀゚)<若要製作吉里吉里專用字型檔案,可以利用在tools資料夾裡的krkrfont.exe,當開啟krkrfont.exe時,應該會看到以下的模樣。
(k ゚∀゚)<我們首先選「すべての TrueType フォントを表示」,這樣的話所有電腦已安裝的字型都會顯示在選單裡,之後在選單裡選擇要渲染的字型,之後在「サイズ(文字高さ)」裡寫上字型大小。
那選單下面的又是什麼東西?>( ゚ω゚ s)
(k ゚∀゚)<這是字型設定,我們可以設定平滑化或粗體等,而再下面兩個選項可以不用改動它們。
(k ゚∀゚)<當設定好後,可以按右邊的按鈕去預覽字型的模樣,當按下下面「作成」的按鈕,即可製作完成。
哦?現在多了一個tft檔案,那麼之後該怎麼做?是不是將它放在data資料夾裡?>( ゚ω゚ s)
(k ゚∀゚)<是的。然後我們必須告訴吉里吉里到底這個tft檔案是用在哪一個字型上。
吉里吉里不會自己去辨認?>( ゚ω゚ s)
(k ゚∀゚)<吉里吉里不會那樣做的,我們一定要利用[mappfont]去設定渲染的字型,看看以下的範例。
[font face=字型名稱 size=字型大小] [mappfont storage=檔案名稱]
(k ゚∀゚)<當我們用[mappfont]去設定渲染字型時,吉里吉里會將現時的字型設定記錄下來,當遇到相同的字型設定,吉里吉里就會用設定好的渲染字型來顯示文字。
可不可以說得簡單一點,我完全不明白你說什麼?>( ゚ω゚ s)
(k ゚∀゚)<唔……那看看以下的範例。
[font face="Impact" size=24] [mappfont storage="impact_24.tft"] 現在正測試字型
(k ゚∀゚)<在上述的範例裡,吉里吉里會將字型名稱Impact、大小為24等設定記錄下來,之後每遇到字型名稱是Impact、大小為24的字型設定時,吉里吉里就會使用impact_24.tft這字型檔案來顯示文字。
(k ゚∀゚)<如果仔細地看的話,大家可能發現[font]的設定和tft檔案並沒有直接關係的,就算impact_24.tft裡根本不是Impact的字型、大小不是24,吉里吉里照樣會用impact_24.tft來顯示文字,顯示文字的字型則是完全根據tft檔案來設定,這點必須要留意。
(k ゚∀゚)<大致上介紹得差不多,下次再見吧!
好棒棒!谢谢讲解!
回覆刪除请问如果是设置斜体的字体,应该怎么设置呢?krkrfonts.exe似乎只能生成粗体的tft无法生成斜体的tft
回覆刪除