gpt4 book ai didi

Java/swing 字体调整大小无法跨平台工作

转载 作者:行者123 更新时间:2023-11-30 08:18:59 27 4
gpt4 key购买 nike

我有一个包含以下代码的 swing 应用程序,它尝试调整组件的字体大小:

Font f = new Font(Font.SERIF,Font.PLAIN,16);
component.setFont(f);

该程序使用 14 点字体加载,并且我包含一个组件,该组件允许用户将组件大小调整为上面的 16 点字体。当我在我在(Debian)上编译的计算机上运行它时,它按预期工作,但我在 Mac 和 Windows 计算机上测试了它,字体调整大小功能根本不起作用。但是,在所有平台上,字体都是衬线字体。有什么想法为什么会发生这种情况吗?

最佳答案

您平台上组件的默认 UI 委托(delegate)可能会抢占您的设置。或者,请考虑以下其中一项:

  • 在现有字体上使用deriveFont(),如图here .

    component.getFont().deriveFont(16f)
  • 使用可用的sizeVariant,如图here .

size variant

  • 使用自定义 UI 委托(delegate),如图所示 herehere .

custom UI delegate

关于Java/swing 字体调整大小无法跨平台工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29235228/

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