java - Swing 中的哪种字体在所有操作系统中看起来都一样?

标签 java swing user-interface netbeans

我在 Windows 7 下使用带有 JDK6 的 Netbeans 7.0 来设计我的 Java 应用程序的用户界面。我应用系统外观。但它在 Windows 中看起来是我想要的方式,但在 MacOS 中有所不同,更糟糕的是,它在 Linux 中的不同窗口管理器(LXDE、GNOME、KDE、XFCE)中看起来不同。

我所说的不同是指字体的外观和大小。在 Windows 中,如果标签看起来像“v 1.23”,那么在其他操作系统中它看起来像“v ...”,因为字体在该操作系统中变大并且 JLabel 没有足够的空间来显示。这种情况发生在几个地方。

我不想增加标签宽度。我希望标签在所有操作系统中的给定宽度看起来都一样。默认情况下,Netbeans 在我的电脑上使用字体 Tahoma 11pt。我认为它并非在所有操作系统中都可用,因此其他操作系统使用不同的字体。

Arial是一种常见的字体吗?

我应该手动将每个元素的字体更改为 Arial 吗?或者还有其他选择吗?

最佳答案

相反,使用 layout manager和一个 logical font family .这example使用下面的 Font 将 24 磅斜体衬线文本添加到(默认)BorderLayout 的中心,以在不同的平台上获得令人满意的结果。

ta.setFont(new Font("Serif", Font.ITALIC, 24));

苹果操作系统:

Mac

window 7:

Windows

Ubuntu Linux:

Linux

关于java - Swing 中的哪种字体在所有操作系统中看起来都一样?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7187989/

相关文章:

java - 服务器端点调用地址和重定向地址返回不同的IP地址

java - 在 JFrame 中显示 Excel 工作表

java - 我的 JTable 没有显示

cocoa - 是否有一个标准的、有记录的开发模式来创建类似于 iTunes、iCal、iPhoto 等的 UI 布局?

c++ - Qt - QProcess 不工作

java - 如何修改 JavaFX 8 的 DatePicker 上的月份和年份控件?

java - unix date 命令和 java simpledateformat 的差异

java - Thymeleaf 3 迭代 List<List<T>> 的语法

java - 使用 hibernate 和 Oracle 将 Clob 转换为字符串

Java 程序不绘制垂直网格