在JTextPane中编辑样式化html文本的字体粗细

时间:2013-09-20 11:51:48

标签: java html swing jtextpane bold

我正在JtextPane创建一个简单的文本编辑器,将文本输出为HTML。样式选项包括粗体,颜色和对齐。当我打开编辑器输入文本时,一切正常。但是当我将html中的文本保存到文件然后读取文件并将其放回编辑器时,我遇到了问题。如果我保存了一个带有粗体文本的文件(因此文本周围有<b>个标签)然后将其打开并将其放入编辑器(通过setText),我无法“unbold”文本。我通过setCharacterAttributes处理加粗/取消绑定文本的方式。相应的代码如下所示:

MutableAttributeSet attrs = pane.getInputAttributes();
StyleConstants.setBold(attrs, bold);
pane.getStyledDocument().setCharacterAttributes(p.getSelectionStart(),length,attrs,false);

在这种情况下解压缩文本后打印HTML时,我发现标签不会被删除。虽然编辑器本身确实反映了这一变化,但意味着文本显示为不粗体,但html没有变化,因此当保存并重新加载时,它仍然是粗体。所以我不知道为什么我在加载html后遇到这个问题,但是当我从头开始编辑文本时却没有问题。有什么想法吗?

0 个答案:

没有答案