首先回答一个在多个平台被提问的问题——目前我使用的操作系统之一是桌面环境为 GNOMEUbuntu 17.10。今天就来说说关于系统配置或美化的问题。

Linux 系统在桌面端的发展缓慢,目前比较成熟的几个桌面环境都不够成熟。Unity 有着强有力的商业支持,但也将才不久的将来被“抛弃”,Ubuntu 18.04 LTS 开始将 GNOME 作为默认的桌面环境 。然而 GNOME 也差强人意,交互被指责偏向触控用户。

如果你一直在 哔哩哔哩 关注我,那你一定看过我发布的许多关于 elementary OS 介绍 。这是一款注重用户界面的发行版,在其开发文档中,将 设计 一项放在极为重要的地位,这与这一团队本身就是从做图标发展而来不无关系,至今他们开发进度的主要发布平台 Medium 上也多发布设计上的改进。但今天介绍的内容和这一发行版没什么关系,因为不支持。

Adapta 支持的桌面环境,Eta 在 Title bar 等处节省空间,Nokto 即暗色版本。

在我看来,“过度”的美化会陷入怪圈,不但会拖累正常的开发,还会导致审美情趣紊乱,影响到设计相关工作本身。所以,利用 Gtk+ 的特性,我们可以用极少的时间精力获得良好的使用界面。

本站介绍的内容与字体紧密关联,因此,本次遴选介绍的 Gtk+ 主题必然是对字体有着基本的重视。

Adapta-gtk-theme Adapta-project 的一部分,同属这一项目的 Adapta-backgrounds 和它一样,设计风格都是遵循 Google 在 2014 年的 I/O 上发布的 Material Design

这并不是一个新的项目,已经有一年左右多的历史了,故已大体完善。

在官方的 README 中,第一段并非是安装指南,而是使用前的注意事项,且一整段都是关于字体的配置问题。

我简单翻译了一下这一段,可以作为参考:


字体排印

Adapta 很大程度上依赖 Material Design,特别是 字体 部分.

  1. Noto Sans

– Noto(即 NO TOfu,意思为消除排印中出现的 Unicode 文本缺失而显示的“豆腐快”)是一款支持 TrueType 或 OpenType 且覆盖大量语言的无衬线字体。
– 由 Monotype 和 Adobe 开发。 1 – Adapta 使用的字重:400、(500)、700。

  1. Roboto

– 非常著名的 Android 中的默认 TrueType 字体(英文部分)。 2 – 对多语言支持不佳。
– Adapta 使用的字重:400、500、700。

请注意:

  • Roboto 与 Adapta 十分协调,但在部分地域中,会造成“豆腐块”。
  • Noto Sans 或许在某些地域中显示良好, 但 Noto Sans 缺少 500 (Medium) 字重。有些指向 500 的元素可能会自动指向 400。
  • 但 Noto Sans CJK 支持 500 字重。

Adapta 使用 NotoSans 作为 Gnome-Shell 和 Cinnamon 的主要字体家族(Cantarell 作为后备字体)。
在有些发行版中,用户需要安装 ‘fonts-noto-hinted’。

Adapta 设计与 13px(或 14px) 的 Roboto 字体保持一致。
在 GNOME 中,”window-scaling-factor = 1.0″ 意味着 ‘-gtk-dpi = 96’,也就是说:

13 [px] x 72 [pt/inch] / 96 [px/inch] = 9.75 [pt]
14 [px] x 72 [pt/inch] / 96 [px/inch] = 10.5 [pt]

这就是为什么 ‘13.33px = 10pt’ 在 Gtk+ 3.2x 的主题中被用于 rem/px 换算的原因(GTK+ 3.18.x 主题中直接使用 em 单位)。

请注意:

Noto Sans CJK (泛中日韩) OpenType 字体实际上 比 Roboto 字体高 0.1em,所以如果 10pt 的 Roboto 字体在你的液晶显示器上显示正常,则可设置 Noto Sans CJK 字体家族为 9pt。

可通过诸如 gnome-gont-viewer 之类的 font-viewer 工具检验字体是否正确。


以上就是 Adapta-gtk-theme 的 Before using Adapta 部分。我们可以看出这一主题贯彻 Material Design 十分彻底,遵循了其对字体的指导。下面是我翻译的一段 Material Design 的 Guidelines 中 StyleTypography(风格 – 字体排印)的 Typeface(字体)部分:


Roboto
Roboto 已经十分完善,可应用于更广泛的平台。它更加宽松、更加清晰、更加美观。

Roboto 字体示例
Roboto 的 A 至 Z 以及数字

Roboto 字体的字重
有六个字重:Thin、Light、Regular、Medium、Bold 以及 Black。

Roboto 字重

Noto
Noto 的垂直尺寸与 Roboto 兼容。

Noto Sans 的英文及中日韩示例
Noto Sans 的泰文及天城文示例

Noto 字体的字重
Noto Sans CJK(中日韩)有七个字重:Thin、Light、DemiLight、Regular、Medium、Bold 以及 Black。Noto Sans CJK Regular 与 Roboto Regular 相对应。

Noto Sans CJK 字重

Noto 字体对泰文、 伽里字母以及其他主要的“活着的”语言都提供了 Regualr 和 Bold 字重。

Noto Sans 泰文和天城文字重

微调字体
微调是嵌入字体修改(扭曲)字形以在低分辨率显示器上优化效果。作为权衡,微调字体比未微调版本消耗更多空间。

Roboto 和 Noto 都提供了微调和未微调的版本。谷歌建议:
在 Android 和 macOS 上使用未微调版本。
在 Chrome OS、Windows 和 Linux 上使用微调字体。

字体栈
对于 Android 和 网页属性,字体栈应当先指定 Roboto 和 Noto,再指定 san-serif。


以上及是 Material Design 中关于字体排印的指导。

最后贴上我的配置方式:

希望这篇文章对你有所帮助。


 

(译)注:

  1. Adapta-gtk-theme 的 README 中关于 Noto Sans 的介绍有个问题,即将 Noto 字体的开发全归于 Adobe,这也是因为 Noto Sans 提供了对东亚地域支持的 Noto Sans CJK 而广为人知。在我提交 Issue #414 后作出了修正。关于这一点,我会在以后的文章中探讨。
  2. Android 从 API level 21 开始就已经 支持 OpenType 了,但 Roboto 字体依然是 TrueType

  1. Noto Sans CJK 的西文部分实际上是修改过的 Source Sans, 和真正的 Noto Sans 不一样, 你的配图里是前者。
    另外, 印地语所用的文字, 汉语中一般称作天城体字母。

    1. 感谢指正,文章中关于天城文的内容已更改。Noto Sans 和 Source Sans 确实存在区别,Noto Sans 的 LGC 来自 Droid Sans,而 Droid Sans 是后来被蒙纳收购的 Ascender 设计的,Noto Sans 系列早期的非 CJK 部分也是和蒙纳合作的,后来的 Noto CJK Sans 和 Adobe 合作,故而 LGC 沿用 Adobe 的 Source 字体家族。

发表评论

电子邮件地址不会被公开。 必填项已用*标注