【问题标题】:how to get unicode text from jtextpane java如何从 jtextpane java 中获取 unicode 文本
【发布时间】:2014-07-19 17:42:52
【问题描述】:

我已将 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() 获取此文本时,它将如下所示


வேலூர் மாவட்டம், அணைக& #3021;கட்டு தொகுதி பா.ம.க.வை சேர்ந்த கலையரசு எம்.எல்.ஏ. நேற்று முன்தினம் காலை முதல்-அமைச்சர& #3021; ஜெயலலிதாவை சந்தித்து தனது தொகுதி பிரச்சினைகள் குறித்து பேசினார்。 அதைத்தொடர்ந் 2980;ு அவரை கட்சியில் இருந்து நீக்குவதாக பா.ம.க. தலைவர் ஜி.கே.மணி அறிவித்தார்.
正文>

标签: java html swing unicode jtextpane


【解决方案1】:

Java 使用系统中的字体,因此如果系统不包含特定字体,那么您可以使用 Font.createFont() 在应用程序中部署该字体。 所以如果你没有泰米尔语字体下载它here

您要做的第一件事是获取支持泰米尔语 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);



    }

}

【讨论】:

  • 先生.. 我需要使用 gettext() 从此文本窗格中获取文本....我能够设置文本但 gettext 是这里的问题
  • 你是如何使用 gettext() 字符串的?你在某个领域填充它吗?请发布 MCVE。
  • 我使用了 ta_description.getText() ,它给出了上面提到的 unicode 输出。我使用了 setcontenttype("text/html") 位,我不知道如何正确获取该 unicode 字体
猜你喜欢
  • 2012-03-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多