3

我需要在 JTextPane 中修改字母间距(字体跟踪),但我无法让它工作。

当我使用 JTextArea 时,我可以这样做:

Font font = new Font("Courier New", Font.PLAIN, 10);
HashMap <TextAttribute, Object> attrs = new HashMap<TextAttribute, Object>();
attrs.put(TextAttribute.TRACKING, -0.1);
font = font.deriveFont(attrs);
textArea.setFont(font);

但由于我需要更改行距,我需要使用 JTextPane,并执行以下操作:

textPane.setFont(font)

就像我对 JTextArea 所做的那样不起作用。我尝试的另一件事是:

MutableAttributeSet set = new SimpleAttributeSet();
StyleConstants.setLineSpacing(set, -0.2);
StyleConstants.setFontFamily(set,"Courier New");
StyleConstants.setFontSize(set, 10);
set.addAttribute(TextAttribute.TRACKING, -0.1);
ta.setParagraphAttributes(set, true);

但是跟踪属性不起作用。

我究竟做错了什么?

4

1 回答 1

5

你是说字距吗?这个展示了如何指定自定义字距调整和更多文本效果 http://java-sl.com/gp_effects.html

于 2011-04-15T07:55:06.060 回答