如何使用 StyledDocument 和 HTML 进行输出?

发布于 2024-12-18 07:41:17 字数 539 浏览 0 评论 0原文

我有一个 JTextPane,我想使用 StyledDocument 在其中输出文本。这是我的 StyledDocument 对象:

StyledDocument dox = (StyledDocument) textArea.getDocument();

Style style = dox.addStyle("StyleName", null);

StyleConstants.setFontFamily(style, Font.SANS_SERIF);
StyleConstants.setFontSize(style, 8);
dox.insertString(dox.getLength(), "<b>Some Text</b>", null);

现在的问题是,如果我用 html 代码编辑文本,它不会按照我想要的方式显示。我希望文本显示为粗体,而不是字面意思 Some Text

有办法做到这一点吗?

I have a JTextPane, and I would like to output text in it using StyledDocument. Here is my StyledDocument object:

StyledDocument dox = (StyledDocument) textArea.getDocument();

Style style = dox.addStyle("StyleName", null);

StyleConstants.setFontFamily(style, Font.SANS_SERIF);
StyleConstants.setFontSize(style, 8);
dox.insertString(dox.getLength(), "<b>Some Text</b>", null);

The problem right now is if I edit the text with html code, it does not display the way I want. I want the text to be displayed as bolded instead of literally <b>Some Text</b>.

Is there a way to do this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

心作怪 2024-12-25 07:41:17

我最终使用 HTMLEditorKit 自己解决了这个问题,这是供进一步参考的答案

    StyledDocument dox = (StyledDocument) textArea.getDocument();
    textPane.setEditorKit(new HTMLEditorKit());

    textPane.setText("<b>Some Text</b>");

I did figure it out on my own in the end using HTMLEditorKit, here's the answer for futher reference

    StyledDocument dox = (StyledDocument) textArea.getDocument();
    textPane.setEditorKit(new HTMLEditorKit());

    textPane.setText("<b>Some Text</b>");
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文