2015-04-16 144 views
0

我正在一個java聊天應用程序,我通過更換表情的快捷方式,就像:),與◕‿◕添加表情符號。它不是我用簡單文本替換它的圖像。現在我面臨的問題是,有時我只得到Square boxes而不是我想要的實際東西。我通過將unicode轉換爲實際圖像來製作MS Word中的這些圖像/文本。我也使用各種在線資源來獲取這些圖像/文字。獲得的,而不是實際的表情圖釋方

誰能告訴我如何擺脫的箱子,並得到實際文本。 我的編碼位於UTF-8,我的字體也設置爲monospaced

回答

0

你的Unicode字符可能是不被你的字體支持。字體將字符實現爲一個框,或者操作系統/ font-renderer繪製一個框而不是字形。

+0

我已經相應地設置我的字體。現在我可以看到實際存在的字形。但是,當我將它存儲在德比數據庫中時,它將再次以方框形式存儲,而不是實際的字形。任何關於我應該做什麼的建議,以便德比數據庫也將其存儲爲實際字形。 –

+0

Derby存儲字符unicode字節,而不是字體。如果您將字節從數據庫中取出並以某種方式呈現,則* font *和* fontrenderer *將決定您將看到的內容。您可以將字體呈現爲圖片並將其存儲在數據庫中。或者,更好的是,提供一種能夠顯示你想要的所有字符的字體。 – RobAu

+0

如果我將字體渲染爲圖片並將它們存儲在數據庫中,那麼我將無法使用它們,因爲我無法使用它們,因爲我無法用圖像替換字符串中的文本,因爲字符串不會生成圖像。因此,我正在使用上面的簡單文本形式的字形。 –

0

我想說的字體應用程序中使用就不能表現出一定的字符。找到一種真正可以在那裏使用的字體。

字體具有boolean canDisplay(char c)方法,您可以使用。 又見the doc about font

+0

我已經相應地設置了我的字體。現在我可以看到實際存在的字形。但是,當我將它存儲在'德比數據庫'中時,它將再次以方框形式存儲,而不是實際的字形。任何關於我應該做什麼的建議,以便德比數據庫也將其存儲爲實際字形。 –

相關問題