能在java和windows平臺上使用支持所有語言的字體JTextArea
嗎?我在谷歌搜索,但沒有找到任何幫助。在java中所有語言支持的字體windows上的JTextArea
textArea = new JTextArea();
textArea.setFont(new Font("Arial", Font.PLAIN, 12));
能在java和windows平臺上使用支持所有語言的字體JTextArea
嗎?我在谷歌搜索,但沒有找到任何幫助。在java中所有語言支持的字體windows上的JTextArea
textArea = new JTextArea();
textArea.setFont(new Font("Arial", Font.PLAIN, 12));
爲此,您需要一個Unicode。對於所有語言,這種字體的大小可能在20 MB左右。
您可以在您的應用程序中提供字體。所需要的是註冊字體(i.a.與Windows)。
//Font font = Font.createFont(Font.TRUETYPE_FONT, new File("code2000.ttf"))
Font font = Font.createFont(Font.TRUETYPE_FONT,
getResourceAsStream("/code2000.ttf"))
GraphicsEnvironment genv = GraphicsEnvironment.getLocalGraphicsEnvironment();
genv.registerFont(font);
有Arial Unicode MS,但這不是免費的。但是,有足夠的免費完整的Unicode字體。
我敢肯定,註冊字體並非絕對必要,除非其他代碼打算按名稱引用它(例如在Font構造函數中,在Font.getFont方法,TextAttribute.FAMILY,StyleConstants.Family或在啓用了HTML的Swing組件的CSS中)。對於單個JTextArea,新的Font對象可以傳遞給textArea.setFont。 – VGR
@VGR是的,名稱查找適用於邏輯字體名稱(舊java),系統字體名稱和註冊字體名稱。後者需要爲應用程序提供字體。 –
這真的不清楚你在問什麼。請嘗試解釋你想要達到的目標以及卡住的位置。 – germi
@germi我認爲他想讓輸入的不僅僅是英文,還有其他語言的Windows平臺。 – Blip
@Rafiq你有什麼特定的語言? – Blip