它们不应该看起来完全一样吗?或者Java没有自己的字体?它只是将字体名称映射到操作系统字体吗?
Java 通常使用系统字体,就像其他程序一样。根据规范:“Java 2 平台的所有实现都必须支持 TrueType 字体;对其他字体技术的支持取决于实现。” (java.awt.font 的Javadocs)。
有一个转折点:由于 Java 程序无法提前知道目标平台上可用的字体,因此存在“逻辑字体名称”(“serif”、“monospaced”等)。这些在 Java 中始终可用;Java 运行时会将这些伪字体名称映射到系统上的适当字体。
此映射是可配置的。请参阅http://java.sun.com/j2se/1.5.0/docs/guide/intl/fontconfig.html。
我怀疑有问题的 Java 应用程序使用了这些逻辑字体名称,它们只是映射到 Windows 和 Mac OS 上的不同字体。
归档时间: |
|
查看次数: |
3611 次 |
最近记录: |