gpt4 book ai didi

java - SWT - 获取等宽字体的操作系统无关方式

转载 作者:IT老高 更新时间:2023-10-28 21:14:04 25 4
gpt4 key购买 nike

在 SWT 中有没有一种方法可以简单地获得等宽字体,并且可以在各种操作系统中使用?

例如。这适用于 Linux,但不适用于 Windows:


Font mono = new Font(parent.getDisplay(), "Mono", 10, SWT.NONE);

或者我是否需要一种方法来尝试加载不同的字体(Consolas、Terminal、Monaco、Mono)直到一个不为空?或者,我可以在启动时在属性文件中指定它。

我尝试从 Display 获取系统字体,但不是等宽字体。

最佳答案

我花了一段时间猛烈抨击这个,直到我意识到显然 eclipse 必须可以访问等宽字体才能在其文本字段、控制台等中使用。出现了一点挖掘:

Font terminalFont = JFaceResources.getFont(JFaceResources.TEXT_FONT);

如果您感兴趣的只是获取一些等宽字体,那么这很有效。

编辑:或基于@ctron 的评论:

Font font = JFaceResources.getTextFont();

编辑: 警告(基于@Lii 的评论):这将为您提供配置的文本字体,它可以被用户覆盖,并且可能不是等宽字体。但是,它将与编辑器和控制台中使用的字体保持一致,这可能是您想要的。

关于java - SWT - 获取等宽字体的操作系统无关方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/221568/

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