2016-02-15 34 views
1

我嘗試將手語Unicode字符打印到Jframe標籤。它不能支持。我可以在VB.Net中完成。我正在使用簽署2010年的Unicode字體(https://github.com/Slevinski/signwriting_2010_fonts )。該示例Unicode是\ u1D832爲什麼執行Java代碼unicode不顯示

import java.awt.*; 
import javax.swing.*; 

public class TestUnicode extends JFrame { 
    String RUPEE = "\u1D832"; 

    public TestUnicode() { 
    setLayout(new FlowLayout()); 
    JLabel b = new JLabel("" + RUPEE); 
    b.setFont(new Font("SignWriting 2010", Font.PLAIN, 250)); 
    add(b); 
    } 
public static void main(String args[]) 
{ 
    TestUnicode t= new TestUnicode(); 
     t.setVisible(true); 
    t.setSize(300,300); 
} 
} 

回答

0

\u1D832意味着\u1D83 + '2'。記得Java在內部使用UTF-16。

如果你想保持1D832碼點值,你可以這樣寫。

String RUPEE = new String(Character.toChars(0x1D832)); 

或者你可以把它寫成:

String RUPEE = "\uD836\uDC32"; // 1D832 
+0

不顯示的字符 –