如何使行间距看起来很好

时间:2014-02-18 12:52:06

标签: java swing jtextcomponent

我开发了一些项目,当我拖动单词并单击特殊按钮时,它可用于标记单词。

我想围绕一个单词制作标签(开始和结束标签用红色)(请参考考试图片,这个) 但是当它在开始和标记处被标记时文本结尾,它采用零空格(如图2)。 当我拖动那些空格时,没有真正的空间(空格或“”或“\ nbsp” - 不,从不),这只是空格!

我无法选择那个空间!

产品图。链接here

这是我的代码:

属性:

static final Color TAG_COLOR = new Color(255, 50, 50);
static final Color PLAIN_TXT_COLOR = new Color(0, 0, 0);
public static SimpleAttributeSet plainAttr = new SimpleAttributeSet();
public static SimpleAttributeSet tagAttr = new SimpleAttributeSet();

StyleConstants.setAlignment(plainAttr, StyleConstants.ALIGN_JUSTIFIED);
StyleConstants.setForeground(plainAttr, PLAIN_TXT_COLOR);
StyleConstants.setFontSize(plainAttr, 11);
StyleConstants.setBold(plainAttr, false);

StyleConstants.setAlignment(tagAttr, StyleConstants.ALIGN_JUSTIFIED);
StyleConstants.setForeground(tagAttr, TAG_COLOR);
StyleConstants.setFontSize(tagAttr, 11);
StyleConstants.setBold(tagAttr, true);

标记功能:

public static void tag_functiont() {
    String taggedName = "tagMark";
    int start_sel = mainEditText.getSelectionStart();
    int end_sel = mainEditText.getSelectionEnd();
    String selected = mainEditText.getSelectedText();
    StyledDocument doc = mainEditText.getStyledDocument();      
    if(selected == null || selected.isEmpty()) return;
    try {
        String bTag = "__B:"+taggedName+"__";
        String eTag = "__E:"+ taggedName +"__";

        doc.insertString(start_sel, bTag, tagAttr);
        doc.insertString(start_sel+bTag.length()+selected.length(), eTag, tagAttr);
    } catch (Exception e) {
        e.printStackTrace();
    }
}

我也完成了属性选项的所有可能性。 (某些字体,各种排列;中心,右,左,对齐)

有人可以提出一条建议吗?


解决

我在主要来源中添加了“textPane.setContentType(”html / text“);如此愚蠢。 它触发了<p> & <div>个标签..所以段落变坏了。

0 个答案:

没有答案