【发布时间】:2016-05-25 16:01:31
【问题描述】:
我可以将JTextArea 的文本更改为粗体(附加文本)然后恢复正常吗?它只会以粗体显示粗体文本,其余的则正常显示吗?
JTextArea的内容也可以保存为RTF文档吗?
【问题讨论】:
-
我会使用 JTextPane。它比尝试格式化和操作 HTML 更容易使用。单击指向 Swing 教程的链接以获取工作示例。
-
谢谢。请提供链接。 :)
我可以将JTextArea 的文本更改为粗体(附加文本)然后恢复正常吗?它只会以粗体显示粗体文本,其余的则正常显示吗?
JTextArea的内容也可以保存为RTF文档吗?
【问题讨论】:
没有。你要找的是JEditorPane
这支持 HTML(3.2?),这将允许您使用 <font>(和其他旧标签)来提供富文本。
JEditorPane textarea = new JEditorPane("text/html", "");
textarea.setText("Here is some <b>bold text</b>");
EDIT:根据我上面引用的javadoc,JEditorPane 也支持有限的RTF。别忘了把 MIME 改成text/rtf
【讨论】:
setText(getText() + "...");
textArea.setFont(textArea.getFont().deriveFont(Font.BOLD, textArea.getFont().getSize()));
【讨论】:
我相信您需要JTextPane or JEditorPane。
【讨论】: