Windows 中的版式
作为语言的视觉表示形式,版式的主要任务是传达信息。 Windows 类型系统可帮助你在内容中创建结构和层次结构,以便最大程度地提高 UI 中的可读性和可读性。
Segoe UI Variable 是 Windows 的新系统字体。 它是对经典 Segoe 字体的全新演绎,并使用可变字体技术在非常小的尺寸下动态提供出色的易读性,并在显示尺寸下改进轮廓。
提示
本文介绍如何 将 Fluent Design 语言 应用于 Windows 应用。 有关详细信息,请参阅 Fluent Design - 版式。
使用 Segoe Fluent Variable
Segoe UI 变量支持两个轴,以便对文本进行精细控制: 权重 和 光学大小。
- 权重轴 (
wght
) 以从细(100)到粗体(700)的权重递增。 - 光学大小轴 (
opsz
) 默认为自动和打开。 它控制字体中计数器的形状和大小,以较小的大小和个性确定可读性(对于从 8pt 到 36pt 的光学缩放)。
使用 XAML 通用控件时,默认情况下会为支持的语言选择 Segoe UI Variable 字体。 使用此字体或其他带有光轴的可变字体时,光学尺寸将自动匹配请求的字体大小。 使用 HTML 时,也会自动进行光学缩放,但需要在 CSS 中指定 Segoe UI Variable 字体。
权重
权重名称 | 权重轴值 | 可视 |
---|---|---|
浅色 | 300 | |
Semilight | 350 | |
常规 | 400 | |
半曲 | 600 | |
加粗 | 700 |
光轴
Windows 11 中的版式最佳做法
Windows 11 根据显示文本的上下文使用具有以下属性的 Segoe UI Variable。
Attribute | 值 | 备注 |
---|---|---|
Weight | 常规,半粗体 | 大多数文本使用常规粗体,标题使用半粗体 |
对齐 | 左,中 | 默认左对齐,仅在极少数情况下居中对齐,例如图标下方的文本 |
最小值 | 14px 半粗体,12px 正常 | 小于这些大小和重量的文本在某些语言中难以辨认 |
套管 | 句子大小写 | 对所有 UI 文本使用句子大小写,包括标题 |
截断 | 省略号和剪切 | 大多数情况下使用省略号;仅在极少数情况下使用剪裁 |
示例
WinUI 3 库应用包括大多数 WinUI 3 控件、特性和功能的交互式示例。 通过 Microsoft Store 获取应用,或在 GitHub 上获取源代码
Windows 应用中的版式
作为语言的视觉表示形式,版式的主要任务是传达信息。 它的样式应永远不妨碍该目标。 本文介绍如何在 Windows 应用中设计版式以帮助用户轻松高效地了解内容。
字体
应用的全部 UI 应使用同一种字体,建议始终使用 Windows 应用的默认字体 Segoe UI Variable。 其设计目的是为保持不同字体大小和像素密度下的最佳可读性,并提供可润色系统内容的清晰、明朗的美学效果。
若要在应用上显示非英语语言或为应用选择另一种字体,请参阅语言和字体,了解我们推荐的 Windows 应用字体。
大小和缩放
XAML 应用中的字体大小在所有设备上自动缩放。 缩放算法可确保大屏幕上 10 英尺外的 24 像素字体与距离几英寸的小屏幕上的 24 像素字体一样清晰。
因系统缩放的工作原理,设计时采用的是有效像素而非实际物理像素,所以不必更改字体大小来适应不同尺寸的屏幕的分辨率。
层次结构
用户在扫描页面时依赖于视觉层次结构:标题用于总结内容,正文文本用于提供更多详细信息。 若要在应用中创建清晰的视觉层次结构,请遵循 Windows 字体渐变。
类型渐变
Windows 字体渐变可在页面上的字型之间建立关键关系,帮助用户轻松阅读内容。 所有大小都采用有效像素,并且针对在所有屏幕大小上运行的 Windows 应用进行了优化。
Windows 11 对 UI 中的各种类型的文本使用以下值。
示例 | Weight | 大小/线高 |
---|---|---|
小型 | 12/16 epx | |
文本 | 14/20 epx | |
文本半粗体 | 14/20 epx | |
文本 | 18/24 epx | |
显示半粗体 | 20/28 epx | |
显示半粗体 | 28/36 epx | |
显示半粗体 | 40/52 epx | |
显示半粗体 | 68/92 epx |
有关更多详细信息,请查看有关使用 XAML 字体渐变的指南。
对齐
默认 TextAlignment 是左对齐,在大多数情况下,左边对齐但右边不对齐可提供一致的内容编排效果和统一的布局。 有关 RTL 语言,请参阅调整布局和字体以支持全球化。
<TextBlock TextAlignment="Left">
字符计数
保持每行 50–60 个字母,以方便阅读。
不要使用少于 20 个字符或每行 60 个字符,因为很难阅读。
剪裁和省略号
当文本数量超出可用空间时,建议剪裁文本并插入省略号 [...],这是大多数 UWP 文本控件的默认行为。
<TextBlock TextWrapping="WrapWholeWords" TextTrimming="Clip"/>
剪辑文本,并在启用多行时换行。
不要使用省略号来避免视觉混乱。
注意
如果未对容器进行完善定义(例如,不区分背景颜色),或者存在用于查看更多文本的链接,则使用省略号。
语言
Segoe UI Variable 是用于英语、欧洲语言、希腊语和俄语的字体。 对于其他语言,请参阅以下建议。
全球化/本地化字体
使用 LanguageFont 字体映射 API 以编程方式访问特定语言的建议字体系列、大小、粗细和样式。 LanguageFont 对象提供对各种类别内容的正确字体信息的访问权限,包括 UI 标头、通知、正文文本和用户可编辑的文档正文字体。 有关详细信息,请参阅 调整布局和字体以支持全球化。
非拉丁语言的字体
字体系列 | 样式 | 备注 |
---|---|---|
Ebrima | 常规、粗体 | 非洲语言脚本的用户界面字体(阿德拉姆文、埃塞俄比亚文、西非书面文、索马里文、提芬纳格文、瓦伊文)。 |
Gadugi | 常规、粗体 | 北美语言脚本的用户界面字体(加拿大音节文字、切罗基语、奥塞治文)。 |
Leelawadee UI | 常规、半光、粗体 | 东南亚语言脚本的用户界面字体(布吉斯语、高棉语、老挝语、泰语)。 |
Malgun Gothic | 常规 | 适用于朝鲜语的用户界面字体。 |
Microsoft JhengHei UI | 常规、粗体、浅色 | 繁体中文的用户界面字体。 |
Microsoft YaHei UI | 常规、粗体、浅色 | 简体中文的用户界面字体。 |
缅甸文 | 常规 | 缅甸脚本的回退字体。 |
Nirmala UI | 常规、半光、粗体 | 南亚语言脚本的用户界面字体(孟加拉语、查克马文、梵文、古吉拉特语、锡克教文、埃纳德语、马拉雅拉姆语、曼尼普尔文、奥里亚语、欧甘语、僧伽罗语、索拉文、泰米尔语、泰卢固语)。 |
Segoe UI | 常规、斜体、浅斜体、黑色斜体、粗体、粗斜体、浅色、半光、半蓬勃、黑色 | 阿拉伯语、亚美尼亚语、格鲁吉亚语和希伯来语的用户界面字体。 |
SimSun | 常规 | 旧版中文 UI 字体。 |
Yu Gothic UI | 细体、半细、常规、半粗、粗体 | 日语的用户界面字体。 |
字体
Sans-serif 字体
Sans-serif 字体是标题和 UI 元素的绝佳选择。
字体系列 | 样式 | 备注 |
---|---|---|
Arial | 常规、斜体、粗体、粗体斜体、黑色 | 支持欧洲和中东语言脚本(拉丁文、希腊语、西里尔文、阿拉伯语、亚美尼亚语和希伯来语)。 黑粗体仅支持欧洲语言脚本。 |
Calibri | 常规、斜体、粗体、粗体斜体、浅斜体、浅斜体 | 支持欧洲和中东脚本(拉丁文、希腊文、西里尔文、阿拉伯语和希伯来语)。 阿拉伯语仅在直立中可用。 |
Consolas | 常规、斜体、粗体、粗体斜体 | 固定了支持欧洲脚本(拉丁文、希腊文和西里尔文)的宽度字体。 |
Segoe UI | 常规、斜体、浅斜体、黑色斜体、粗体、粗斜体、浅色、半光、半蓬勃、黑色 | 欧洲和中东脚本(阿拉伯语、亚美尼亚语、西里尔文、格鲁吉亚语、希腊语、希伯来语、拉丁语)和 Lisu 脚本的用户界面字体。 |
Selawik | 常规、半光、浅色、粗体、半曲 | 计量方面与 Segoe UI 兼容的开源字体,用于其他平台上不希望包含 Segoe UI 的应用。 在 GitHub 上获取 Selawik。 |
Serif 字体
Serif 字体非常适合呈现大量文本。
字体系列 | 样式 | 备注 |
---|---|---|
Cambria | 常规 | 支持欧洲脚本的 Serif 字体(拉丁语、希腊文、西里尔文)。 |
Courier New | 常规、斜体、粗体、粗体斜体 | 支持欧洲和中东语言脚本(拉丁文、希腊语、西里尔文、阿拉伯语、亚美尼亚语和希伯来语)的 Serif 固定宽度字体。 |
格鲁吉亚 | 常规、斜体、粗体、粗体斜体 | 支持欧洲脚本(拉丁文、希腊文和西里尔文)。 |
宋体, Times New Roman | 常规、斜体、粗体、粗体斜体 | 支持欧洲脚本(拉丁文、希腊文、西里尔文、阿拉伯语、亚美尼亚文、希伯来语)的旧字体。 |
可变字体
可变字体有利于精确控制文本的外观。
字体系列 | Axes | 备注 |
---|---|---|
Bahnschrift | 粗细、宽度 | 支持拉丁文、希腊语和西里尔文的可变字体。 |
Segoe UI Variable | 粗细、光学尺寸 | 支持拉丁文、希腊语和西里尔文的可变字体。 |
符号和图标
字体系列 | 样式 | 备注 |
---|---|---|
Segoe MDL2 Assets | 常规 | 应用图标的用户界面字体。 有关详细信息,请参阅 Segoe Fluent Icons 字体 文章。 |
Segoe UI 表情符号 | 常规 | 表情符号的用户界面字体。 |
Segoe UI 符号 | 常规 | 符号的后备字体。 |