jtextpane не переносит текст

#java #swing #word-wrap

#java #swing #перенос слов

Вопрос:

У меня проблема с JTextPane. Мне нужно пометить некоторые части текста указанным цветом, поэтому я решил использовать теги JTextPane и html для оформления моего текста. JTextPane находится внутри JScrollPane, а JScrollPane — внутри JSplitPane:

 JTextPane jtp=new JTextPane();
jtp.setContentType("text/html");
JScrollPane scr=new JScrollPane(jtp);
JSplitPane leftRight=new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, scr, someOtherComponent);
  

Кроме того, после установки текста в jtp я заметил, что он переносит некорректно.

Итак, не могли бы вы посоветовать мне, как решить мою проблему, или, может быть, предложить лучшее решение?

Я оформил текст с помощью html:

 <FONT style="BACKGROUND-COLOR: yellow">next marked</FONT><b> embolden</b> normal<FONT style="BACKGROUND-COLOR: yellow"> next marked</FONT>
  

может быть, есть какие-либо другие компоненты swing, которые помогают выполнять такое простое оформление текста?

P.P.S. Вот часть моего кода:

     originalTextArea=new JTextPane();        
    originalTextArea.setFont(font);
    originalTextArea.setContentType("text/html");
    originalTextArea.setText("dhjfsfdjnkjfgfjkgkjfngfdkjnjfdgjfdngfdkjgnkdngjgnjkgfgf");

    processedTextArea=new JTextPane();        
    processedTextArea.setFont(font);
    processedTextArea.setContentType("text/html");              

    JScrollPane originalTextScrollPane=new JScrollPane(originalTextArea);

    JScrollPane processedTextScrollPane=new JScrollPane(processedTextArea);
    JTabbedPane processedTextAndVocPane=new JTabbedPane(JTabbedPane.TOP, JTabbedPane.SCROLL_TAB_LAYOUT);
    summarizedTextAndVocPane.add("Processed text",processedTextScrollPane);

    JSplitPane leftRightSplitPane=new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, originalTextScrollPane, processedTextAndVocPane);
    leftRightSplitPane.setDividerLocation(0.5);
    leftRightSplitPane.setResizeWeight(0.5);        

    mainFrame.add(leftRightSplitPane);
  

После ввода текста в originalTextArea он вообще не переносится.

Комментарии:

1. Что вы подразумеваете под «неправильным переносом»?

2. Я провел быстрый тест с вашим кодом, и он переносится нормально. Вы показали нам весь соответствующий код?

3. Для более быстрой справки отправьте SSCCE .

4. текст переносится только через пробелы. вы показываете большую длинную строку без разрывов — это не переносит (?)

5. Спасибо 🙂 Понятно. Но есть ли возможность переносить символы без пробелов?