我有Slick2D庫並在Java中製作遊戲。我一直在想,只是一個簡短的問題,你如何在Graphics對象上設置字體來繪製不同的字體。 我無法使它工作。我認爲這與AngelCode有關,但這需要一些不是'.tff'的格式,所以我不知道。Slick2D字體不起作用
那麼你能告訴我你是如何做到的嗎?
我有Slick2D庫並在Java中製作遊戲。我一直在想,只是一個簡短的問題,你如何在Graphics對象上設置字體來繪製不同的字體。 我無法使它工作。我認爲這與AngelCode有關,但這需要一些不是'.tff'的格式,所以我不知道。Slick2D字體不起作用
那麼你能告訴我你是如何做到的嗎?
抱歉,但這個答案是什麼,但短
您可以使用天使代碼的BMF字體工具,這使得與存儲的字符圖像的字形圖像的位圖字體文件,並描述圖像的文本文件(僅適用於Windows,Herio.jar是相似的,包括用油滑,但它只是反覆作品有時,拍擊我)
獲取BMF字體here和附帶的Windows安裝程序進行安裝。完成之後,使用GUI選擇字體,大小等(注意,必須爲每個大小和字體制作1個字體/ glyh圖像對)然後突出顯示包含要使用的字符的框,注意到浮油只支持多達256(我認爲)字符。
您需要更改一些導出設置,以便光滑會識別文件。轉到文件 - >導出選項,並更改「位通道」(我認爲這就是它所謂的)A - >字形R,G和B - >一個。將預設設置爲自定義,將紋理設置爲.png文件,然後完成配置。
導出您新創建的字體文件[文件 - >保存位圖字體爲](是的,它將使字形圖像(.png)和文本描述符文件的擴展名爲.fnt) 。
代碼它使用AngelCodeFont constrcutor:
fnt = new AngelCodeFont("LOCATION OF .fnt FILE", new Image("LOCATION OF .png GLYPH IMAGE");
,那麼你然後可以用它直接借鑑:
fnt.drawString(float x, float y, "TEXT TO DISPAY");
,或者你可以
將當前圖形字體設置爲AngelCodeFont a直接通過圖形類進行繪製。
GraphicsObject.setFont(fnt);
GraphicsObject.drawString("THIS WLL DRAW IN THE ANGEL CODE FONT");
希望這有助於:d
更多的信息在這裏,API文檔中: http://slick.cokeandcode.com/javadoc/
由於它的工作:3個 – IvanDonat 2012-04-22 08:18:55
OI剛剛發現這是你*臉手掌* – 2012-04-22 14:31:28
我不不明白 - UnicodeFont在API中似乎不被棄用。 AngelCodeFont是唯一適用於Slick的Font方法嗎? – mtrc 2012-06-23 16:25:51