我已经搜索了一段时间,到目前为止,我只能找到如何创建样式并将其应用于字符的方法,如下所示:
StyledDocument doc = (StyledDocument) new DefaultStyledDocument();
JTextPane textpane = new JTextPane(doc);
textpane.setText("Test");
javax.swing.text.Style style = textpane.addStyle("Red", null);
StyleConstants.setForeground(style, Color.RED);
doc.setCharacterAttributes(0, 1, textpane.getStyle("Red"), true);
如果您的文档中只有几个样式,并且想按名称存储它们,以便以后轻松应用,那么这将非常有用。在我的应用程序中,我希望能够独立设置文本中每个字符的前景色(仅有几个值之一)和背景色(灰度,许多不同的值)。为此创建可能会有数百/数千种不同样式似乎是一个巨大的浪费。是否有一种方法可以设置这些属性,而无需每次都创建新样式?如果只需要呈现文本,那将更容易,但我也需要使其可编辑。是否可以使用JTextPane
实现此功能,或者是否有其他swing类提供此功能?