gpt4 book ai didi

java - 与 JTextPane 关联的 StyledDocument 的字体

转载 作者:塔克拉玛干 更新时间:2023-11-02 07:55:51 26 4
gpt4 key购买 nike

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

最佳答案

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

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

public Font getFont(AttributeSet attr) {
StyleContext styles = (StyleContext) getAttributeContext();
return styles.getFont(attr);
}

然后在 StyleContext 的源中

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 中。

public static int getFontSize(AttributeSet a) {
Integer size = (Integer) a.getAttribute(FontSize);
if (size != null) {
return size.intValue();
}
return 12;
}

关于java - 与 JTextPane 关联的 StyledDocument 的字体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6949125/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com