首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >与JTextPane关联的StyledDocument的字体

与JTextPane关联的StyledDocument的字体
EN

Stack Overflow用户
提问于 2011-08-05 06:02:26
回答 1查看 2.4K关注 0票数 3

与JTextPane关联的StyledDocument使用什么字体?默认情况下,它是否使用与JTextPane相同的字体?特别是,我想知道字体的大小。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-08-05 13:24:51

StyledDocument只是一个接口。界面没有任何字体。

如果您看一下DefaultStyledDocument类(实现接口)。

代码语言:javascript
复制
public Font getFont(AttributeSet attr) {
    StyleContext styles = (StyleContext) getAttributeContext();
    return styles.getFont(attr);
}

然后在StyleContext的源代码中

代码语言:javascript
复制
public Font getFont(AttributeSet attr) {
    // PENDING(prinz) add cache behavior
    int style = Font.PLAIN;
    if (StyleConstants.isBold(attr)) {
        style |= Font.BOLD;
    }
    if (StyleConstants.isItalic(attr)) {
        style |= Font.ITALIC;
    }
    String family = StyleConstants.getFontFamily(attr);
    int size = StyleConstants.getFontSize(attr);

    /**
     * if either superscript or subscript is
     * is set, we need to reduce the font size
     * by 2.
     */
    if (StyleConstants.isSuperscript(attr) ||
        StyleConstants.isSubscript(attr)) {
        size -= 2;
    }

    return getFont(family, style, size);
}

然后在StyleConstants中。

代码语言:javascript
复制
public static int getFontSize(AttributeSet a) {
    Integer size = (Integer) a.getAttribute(FontSize);
    if (size != null) {
        return size.intValue();
    }
    return 12;
}
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6949125

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档