我已将jtextpane内容类型设置为html并设置了
ta_description = new JTextPane();
ta_description.setContentType("text/html");
ta_description.setFont(new Font("Latha", Font.PLAIN, 12));
ta_description.setText("<![CDATA[<br>வேலூர் மாவட்டம், அணைக்கட்டு
தொகுதி பா.ம.க.வை சேர்ந்த கலையரசு எம்.எல்.ஏ. நேற்று முன்தினம்
காலை முதல்-அமைச்சர் ஜெயலலிதாவை சந்தித்து தனது தொகுதி
பிரச்சினைகள் குறித்து பேசினார். அதைத்தொடர்ந்து அவரை கட்சியில்
இருந்து நீக்குவதாக பா.ம.க. தலைவர் ஜி.கே.மணி அறிவித்தார்.<br>]]>);
当我使用ta_description.gettext()获取此文本时,它将如下所示
&LT;![CDATA并[d HTML&GT; &LT; HEAD&GT;
&LT; /头&GT; &LT;身体GT; &LT峰; br&GT; &安培;#2997;&安培;#3015;&安培;#2994;&安培;#3010;&安培;#2992;&安培;#3021; &amp;#2990;&amp;#3006;&amp;#2997;&amp;#2975;&amp;#3021;&amp;#2975;&amp;#2990;&amp;#3021;,&amp;#2949;&amp;#2979 ;&安培;#3016;&安培;#2965;&安培;#3021;&安培;#2965;&安培;#2975;&安培;#3021;&安培;#2975;&安培;#3009; &安培;#2980;&安培;#3018;&安培;#2965;&安培;#3009;&安培;#2980;&安培;#3007; &安培;#2986;&安培;#3006;。&安培;#2990;。&安培;#2965;。&安培;#2997;&安培;#3016; &安培;#2970;&安培;#3015;&安培;#2992;&安培;#3021;&安培;#2984;&安培;#3021;&安培;#2980; &安培;#2965;&安培;#2994;&安培;#3016;&安培;#2991;&安培;#2992;&安培;#2970;&安培;#3009; &安培;#2958;&安培;#2990;&安培;#3021;。&安培;#2958;&安培;#2994;&安培;#3021;。&安培;#2959 ;. &安培;#2984;&安培;#3015;&安培;#2993;&安培;#3021;&安培;#2993;&安培;#3009; &安培;#2990;&安培;#3009;&安培;#2985;&安培;#3021;&安培;#2980;&安培;#3007;&安培;#2985;&安培;#2990;&安培;#3021; &安培;#2965;&安培;#3006;&安培;#2994;&安培;#3016; &安培;#2990;&安培;#3009;&安培;#2980;&安培;#2994;&安培;#3021; - &安培;#2949;&安培;#2990;&安培;#3016;&安培;#2970;&安培;#3021 ;&安培;#2970;&安培;#2992;&安培;#3021; &安培;#2972;&安培;#3014;&安培;#2991;&安培;#2994;&安培;#2994;&安培;#3007;&安培;#2980;&安培;#3006;&安培;#2997;&安培;#3016; &安培;#2970;&安培;#2984;&安培;#3021;&安培;#2980;&安培;#3007;&安培;#2980;&安培;#3021;&安培;#2980;&安培;#3009; &安培;#2980;&安培;#2985;&安培;#2980;&安培;#3009; &安培;#2980;&安培;#3018;&安培;#2965;&安培;#3009;&安培;#2980;&安培;#3007; &安培;#2986;&安培;#3007;&安培;#2992;&安培;#2970;&安培;#3021;&安培;#2970;&安培;#3007;&安培;#2985;&安培;#3016;&安培;#2965; &放大器;#2995;&放大器;#3021; &安培;#2965;&安培;#3009;&安培;#2993;&安培;#3007;&安培;#2980;&安培;#3021;&安培;#2980;&安培;#3009; &安培;#2986;&安培;#3015;&安培;#2970;&安培;#3007;&安培;#2985;&安培;#3006;&安培;#2992;&安培;#3021 ;. &安培;#2949;&安培;#2980;&安培;#3016;&安培;#2980;&安培;#3021;&安培;#2980;&安培;#3018;&安培;#2975;&安培;#2992;&安培;#3021; &安培;#2984;&安培;#3021;&安培;#2980;&安培;#3009; &安培;#2949;&安培;#2997;&安培;#2992;&安培;#3016; &安培;#2965;&安培;#2975;&安培;#3021;&安培;#2970;&安培;#3007;&安培;#2991;&安培;#3007;&安培;#2994;&安培;#3021; &安培;#2951;&安培;#2992;&安培;#3009;&安培;#2984;&安培;#3021;&安培;#2980;&安培;#3009; &安培;#2984;&安培;#3008;&安培;#2965;&安培;#3021;&安培;#2965;&安培;#3009;&安培;#2997;&安培;#2980;&安培;#3006;&安培;#2965; &安培;#2986;&安培;#3006;。&安培;#2990;。&安培;#2965 ;. &安培;#2980;&安培;#2994;&安培;#3016;&安培;#2997;&安培;#2992;&安培;#3021; &安培;#2972;&安培;#3007;。&安培;#2965;&安培;#3015;。&安培;#2990;&安培;#2979;&安培;#3007; &安培;#2949;&安培;#2993;&安培;#3007;&安培;#2997;&安培;#3007;&安培;#2980;&安培;#3021;&安培;#2980;&安培;#3006;&安培;#2992; &安培;#3021;。&LT峰; br&GT; &LT; /体&GT; &LT; / HTML&GT; ]&GT;
我看到这是来自http://www.utf.ru/tables/tamil.html
的泰米尔语Unicode字符我需要正确地获取文本,而且我不知道如何正确地获取文本。
答案 0 :(得分:0)
Java使用系统中的字体,因此如果系统不包含特定字体,则可以使用Font.createFont()在应用程序中部署该字体。 所以如果你没有泰米尔语字体下载它here
您要做的第一件事就是获得支持Tamil unicode的字体。像这样的事情:
Font tamil =new Font("Latha", Font.BOLD,15);//I had a font Latha which supports tamil font
然后设置JTextPane的字体:
ta_description.setFont(tamil);
完整代码:
import java.awt.BorderLayout;
import java.awt.EventQueue;
import java.awt.Font;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextPane;
import javax.swing.border.EmptyBorder;
public class Test extends JFrame {
private JPanel contentPane;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
Test frame = new Test();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public Test() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 450, 300);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
contentPane.setLayout(new BorderLayout(0, 0));
setContentPane(contentPane);
JTextPane textPane = new JTextPane();
contentPane.add(textPane, BorderLayout.CENTER);
Font TamilFont=new Font("Latha", Font.BOLD,15);
textPane.setFont(TamilFont);
}
}