Java JTextPane Изменить шрифт выделенного текста - PullRequest
4 голосов
/ 15 декабря 2009

У меня есть JTextPane (или JEditorPane, я могу использовать либо без проблем). Как я могу изменить шрифт выбранной области на определенный шрифт?

textpane.getSelectedText().setFont() не будет работать. (Даже с семейством шрифтов)

Ответы [ 2 ]

4 голосов
/ 15 декабря 2009

Вы можете изменить шрифт JTextPane только целиком, он не выполняет форматированный текст.

Под JEditorPane (и, по-видимому, тоже JTextPane) есть Document, который вы получаете за getDocument(). Вы хотите привести это к StyledDocument, если можете, и тогда вы можете делать такие вещи, как setCharacterAttributes с заданным набором символов.

Есть несколько (надеюсь) полезных примеров в руководстве по Java на http://java.sun.com/docs/books/tutorial/uiswing/components/editorpane.html.

1 голос
/ 17 августа 2011

Вы можете сделать это с помощью JTextPane. Это невозможно сделать с помощью JTextArea. , Вот лучший пример того, как использовать JTextPane.

Образец: http://download.oracle.com/javase/tutorial/uiswing/components/editorpane.html

Код: http://download.oracle.com/javase/tutorial/uiswing/examples/components/TextSamplerDemoProject/src/components/TextSamplerDemo.java

...