2014-03-05 97 views
0

爲了獲取文本而不是框,我需要做些什麼?Java中的Unicode圖形不顯示

enter image description here

我有一個Web服務,爲網頁創建圖標。

文本開頭爲: ニホンフジサワステーク/日本藤...

其隨後在JavaScript編碼爲: %EF%BE%86%EF%BE%8E%EF%BE%9D%EF% BE%8C%EF%BD%BC%EF%BE%9E%EF%BD%BB%EF%BE%9C%20%EF%BD%BD%EF%BE%83%EF%BD%B0%EF% BD%B8%20 /%20%E6%97%A5%E6%9C%AC%E8%97%A4%E2%80%A6

我在服務器上選擇它作爲正確的字符串。所以我知道它不是序列化錯誤。

一個子問題是爲什麼它顯示爲我的調試器中的框(使用IntelliJ),但是當我點擊它來設置文本時,它顯示正確的文本?

enter image description here enter image description here

我知道該字符串是存在的,現在我在一個完整的損失如何得到的Graphics2D來顯示。我嘗試過使用drawString(),drawBytes(),對字符串進行編碼,發送一串unicode值,並且沒有任何效果。

如果unicode值是基於拉丁語的,例如法語和西班牙語元音,我已經使用它。這導致我懷疑它是否存在某種語言/語言環境問題。

任何幫助將不勝感激。

回答

1

通常,當您使用的字體沒有您要顯示的字符的字形時,會出現此問題。許多字體不支持全部的Unicode字符,因此只會顯示字符框。如果您將使用的字體更改爲具有完全Unicode支持的字體,則字符應正確顯示。

+0

我沒有找到一個比較詳盡的搜索後,一些更多的在線幫助。你的回答與我找到的信息相同,所以我會給你。謝謝 – sasquatch