Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to display bold text in only parts of JTextArea?

Can I alter the text of a JTextArea to bold (append text) and then back to normal and will it only display the bold text in bold and the rest as normal?

Also can the contents of JTextArea be saved as an RTF document?

like image 285
iTEgg Avatar asked Apr 26 '10 13:04

iTEgg


3 Answers

No. What you're looking for is JEditorPane

This supports HTML (3.2?) which will allow you to use <font> (and other older tags) to provide rich text.

JEditorPane textarea = new JEditorPane("text/html", "");
textarea.setText("Here is some <b>bold text</b>");

EDIT: According to the javadoc I referenced above, JEditorPane also supports limited RTF. Don't forget to change the MIME to text/rtf

like image 92
Matt Avatar answered Sep 19 '22 06:09

Matt


 textArea.setFont(textArea.getFont().deriveFont(Font.BOLD, textArea.getFont().getSize()));
like image 41
Stoliarenko Alexander Avatar answered Sep 20 '22 06:09

Stoliarenko Alexander


I believe you need a JTextPane or JEditorPane for that.

like image 23
JRL Avatar answered Sep 20 '22 06:09

JRL