四、字体与排版 Typography

Roboto和Noto是Android和Chrome的默认字体。

Roboto是Android的默认字体。Roboto字体没有完全支持所有语言。

Noto是一个包含所有语言的字体,它是Chrome的默认字体。

文本类型

  • 英文和类似英文的(例如拉丁文、希腊文和西里尔文)
  • 密集型(例如汉文、日文和韩文)
  • 高长型(南亚、东南亚和中东的语言)

应用栏
标题类型,Medium 20sp

按钮
英文:Medium 14sp,全部大写
密集型:Medium 15sp,全部大写
高长型:Bold 15sp

副标题
英语:Regular 16sp(移动设备),15sp(桌面端)
密集型:Regular 17sp(移动设备),16sp(桌面端)
高长型:Regular 17sp(移动设备),16s设备(桌面端)

正文(body)1
英文:Regular 14sp (移动设备),13sp (桌面端)
密集型:miRegular 15sp (移动设备),14sp (桌面端)
高长型:Regular 15sp (移动设备),14sp (桌面端)

文本对比度
最少:4.5:1
优先:7:1

语言分类(Language categorization)

可分为三类:
英文和类似英文:拉丁文(越南语除外)、希腊文和西里尔文,Roboto和Noto都支持。Roboto已经完全覆盖到在Unicode 7.0中已被定义的所有拉丁文、希腊文和西里尔文。目前被支持的文字数已经翻了一倍,从以前的版本中大约2000字到目前大约4000字。

文字高长型:这一类的语言需要更大的行距以适应更大的字形,这类文字的国家包括南亚、东南亚和中东地区(像阿拉伯文、印地文、泰卢固文、泰文、越南文)。Noto支持这些语言。

文字密集型:这一类语言也需要更大的行距以适应更大的字形,这类文字的国家包括中国、日本和韩国。Noto支持这些语言。
你可以在这里查看 完整列表 。

字体(Typeface)

Roboto
Roboto已经能够很好的支持跨平台运用。Roboto略有点宽和圆,这可以使它在平台上显示得更加清晰,这也是它能够被广泛运用的原因。

Roboto案例
Roboto字母 A-Z 和数字

Roboto字重
Roboto有六种粗细: Thin、Light、Regular、Medium、Bold 和 Black。

Roboto字体粗细

Noto
Noto的垂直度量与Roboto一致。

Noto字体:英语和CJK(汉文,日文和韩文)
Noto字体:泰文和印度文(梵文)

Noto字重
Noto中的CJK(中文,日文和韩文)有7种粗细: Thin、Light、DemiLight、Regular、Medium、Bold 和 Black。Regular粗细的Noto CJK字重与Roboto Regular相同。

Noto字体中CJK的粗细

Noto中泰文、梵文和所有其他主要生活语言都有Regular和Bold字重。

Noto字体中泰文和印度文(梵文)的粗细

Google font directory(A directory of open-source web fonts)

Hinted字体
字体hinting(也被成为instructing)是用来调整(扭曲)一个字形,以便在低分辨率屏幕中生成更加清晰的文本。但作为取舍,hinted字体要比unhinted版本消耗更多的空间。

所有的Roboto和Noto字体都有hinted版本和unhinted版本。在此,Google建议:
在 Android和Mac OS X系统上使用unhinted版本的字体,因为两者不支持hinted版本。
在 Chrome OS、Windows以及 Linux系统上使用hinted版本版本。

Font stack(字体堆叠,是CSS字体系列宣告中的一份字体清单)
对于Android和web属性,font stack应该先指定Roboto、Noto字体,然后再指定字体无衬线。

样式(Styles)

过多的使用字型和字体样式非常容易毁掉布局。网格可以帮助你更好的在有限的范围内进行文字排版。

在典型使用场景下,字型和字体样式能够平衡内容密度和阅读舒适度。字体的单位sp(安卓开发用的字体大小单位,scaleable pixels),它能让大型字号获得更好的 可访问性

英文和类似英文文本
拉丁文、希腊文和西里尔文。

基本样式是基于 12、14、16、20 和 34sp的字体进行排版的。

举例:陈列(Display)样式的使用
举例:标题(Headline)样式的使用

就构成因素来说,应用栏中出现的文本需要使用“标题”样式,Medium 20sp。

举例:标题(Title)样式的使用

在某些情况下, 使用较大的“副标题”样式而不是较小的“正文”样式。这些情况包括了信息以小片段的形式呈现或标题搭配了“正文”样式文本等。

举例:副标题(subheading)样式的使用
举例:正文(Body)的使用
举例:主体(Body)样式的使用

按钮样式(Medium 14sp,全部大写)适用于所有按钮。对于那些没有大写的语言,考虑使用有色文本使它们从普通文本中突显出来。

举例:按钮(Button) 样式的使用

密集型文字
中文、日文、韩文。

字重:Noto CJK文本有七种粗细,就像Roboto中的英语一样。

字体大小:对于需要大写的标题,可以使用比同等英文字体大1px的字体作为大写。对于字体大小大于标题字体的,英文类型的大小正合适。

举例:密集型语言
例子:日文,副标题
例子:日文,正文
例子:日文,正文1
例子:繁体中文,副标题
例子:繁体中文,正文
例子:繁体中文,正文1

高长型文字
南亚、东南亚和中东地区(像阿拉伯文、印地文,泰卢固文,泰文,越南文)

字重:使用Regular,因为Medium在Noto中不可用。Google建议不要使用Bold,因为从母语者反馈回来的信息表示Bold会显得字体太重。

字体大小:对于需要大写的标题,可以使用比同等英文字体大1px的字体作为大写。对于字体大小大于标题字体的,英文类型的大小正合适。

举例:高长型文字
举例:副标题(subheading)样式的使用,印地文
举例:正文(Body)样式的使用,印地文
举例:正文1(Body1)样式的使用,印地文
举例:副标题(subheading)样式的使用,泰文
举例:正文(Body)样式的使用,泰文
举例:正文1(Body1)样式的使用,泰文

行距

为了达到最佳的阅读效果和合适的间距,行高要根据每个字体的大小和粗细来决定。只有“正文”、“副标题”、“标题”和较小的文本类型中才允许换行。其它文本类型应以单行形式出现。

英文和类似英文文本

英文和类似英文的类型以及行距
对比的案例
个别例子-增加行高

密集型和高长型文字
对两类型的所有语言文字,其行高都要大于英语语言文字0.1em。英语及其类似语言一般只使用到em box中的一部分,通常是x-height下方的部分。但是如中文、日文和韩文(CJK)这样的象形文字就会用到整个em box。字体高的语言中通常会有降部或/和升部。为了CJK达到和英文一样设计目的-避免高长型字体因行高的原因出现被“剪掉”的现象,高长型字体的行高必须大于英语及其类似语言以及密集型语言(CJK)。

行高:密集型和高长型语言
行高的对比案例,泰文和印度文
行高的对比案例,中文和日文

其他排版指南

颜色&对比
文本颜色与背景颜色太像会导致用户很难阅读。但是,对比过于强烈的文本也会导致很难阅读。这一点在浅色文本与深色背景的组合上尤其明显。

要获得良好的辨识度,文本应当满足一个最低的对比度,也就是 4.5:1(依据亮度值计算)。其中,7:1的对比度是最适合阅读的。

这些色彩组合同样要考虑到用户对于不同文本对比度的不同反应。

浅色背景上的对比
深色背景上的对比
在图片上的对比
在插画上的对比

大号文字与动态类型
为了更好的用户体验,使用动态类型文本代替小号文本或允许进行省略的大号文本。

如果使用得当,大号文字会让应用显得更加有趣,更容易对页面布局进行区分,以及更有助于用户快速理解内容。

动态类型文字能使大号文字可以在文本允许长度未知的情况下显示在其范围之内。动态类型下文字的大小会根据可用空间和字体大小来选择排版模式。

动态类型的例子
动态类型的UI运用

换行
下图展示了换行的最佳案例:

可行

避免在一行中留下巨大空隙。尽量避免行的末端留下一个很短的单词(如介词)。换行之前要考虑好避免单词断字。

不可行

字间距

行的长度
Baymard的研究给了我们一些有关行的长度和文字可读性方面的建议:
“如果你想拥有良好的阅读体验,建议每行大约60个字符。每一行的适量字符数是保证文字可读性的关键因素。”
“太长——如果一行文本太长,用户的注意力会很难集中在文字阅读上。这是因为文本过长导致用户很难看清楚一句话的开头和结束在哪里。”
“太短——如果一行文本太短,眼睛需要经常来回观看(换行),这样会打破读者的阅读节奏。文本太短的话也会让人产生压力,会使他们还没读完当前行的文字就去读下一行的文字(因此会有潜在跳过重要词句的问题)”
来源: “Readability: the Optimal Line Length,”
baymard.com/blog/line-l…

英文正文每一行的理想长度。这些数字代表每一行的字符数。
英文短的文本行的理想长度。这些数字代表每一行的字符数。

语言类别参考

为了便于国际化,Google已将语言分为三个类别:英文和类似英文的、高长型的、密集型的。
英文和类似英文的:拉丁文(越南文外)、希腊文、西里尔文、希伯来文、亚美尼亚文和乔治亚文。

高长型的:此类文本需要更高的行高以适应更大的字形,这类文本包括南亚、东南亚和中东的语言,像阿拉伯文、印地文、泰卢固文、泰文、越南文。

密集型的:此类文本需要更高的行高以适应更大的字形,但与高长型的文字有着不同的标准。这类文字包括中文、日文和韩文。

2017 Material design 第三章第四节《字体与排版》相关推荐

  1. 2017 Material design 第三章第三节《图像》

    三.图像(Imagery) 图像不仅是一种装饰,它还是一种能够帮助用户理解以及区分你产品的强大工具. 大胆.形象.有意义的图像能够帮助你吸引用户. 无论气氛是压抑.柔和还是明亮.多彩,以下的设计准则以 ...

  2. 2017 Material design 第三章第一节《颜色》

    第三章节<样式> 一.颜色(Color) Material Design的色彩受大胆活泼的色调启发,并配合柔和的环境,阴影和高光组成. 颜色工具(Color Tool) 颜色工具可以帮助你 ...

  3. matlab 通过矩阵变换使图像旋转平移_数字图像处理|P11 第三章 第四节 图像的几何变换...

    第四节 几何变换 图像生成过程中,由于系统本身具有非线性或拍摄角度不同,会使生成的图像产生几何失真.几何失真一般分为系统失真和非系统失真,系统失真是有规律的.能预测的:非系统失真则是随机的.例如:(1 ...

  4. 初级会计实务--第三章第四节、应交税费

    第四节.应交税费 1.应交税费概述 2.应交增值税 是以商品再流转过程中实现的增值额作为计税依据而征收的一种流转税 六气两水油烟煤,三农饲料和化肥 图书报纸和杂志,音像电子二甲醚 交邮建筑不动产,电信 ...

  5. 微信小程序教学第三章第四节(含视频):小程序中级实战教程:下拉更新、分享、阅读标识...

    为什么80%的码农都做不了架构师?>>>    下拉更新.分享.阅读标识 本文配套视频地址: https://v.qq.com/x/page/h0554i4u5ob.html 开始前 ...

  6. 哈尔滨工业大学软件构造课程笔记第三章第四节

    3.4 面向对象的编程(OOP) 1. 基本概念:对象.类.属性和方法 对象 现实世界中的对象有两个共同特征:它们都有状态和行为. 识别现实对象的状态和行为是开始考虑面向对象编程的好方法. 对于你看到 ...

  7. 计算机网络离不开光缆,九年级物理全册 第二十一章 第四节 越来越宽的信息之路习题课件 新人教版.ppt...

    九年级物理全册 第二十一章 第四节 越来越宽的信息之路习题课件 新人教版.ppt 第二十一章信息的传递,第四节越来越宽的信息之路,1微波的性质更接近光波,大致沿_______传播,需要每隔_____k ...

  8. 传热学环肋肋效率matlab程序,传热学 第二章第四节 通过肋片的导热.pdf

    传热学 第二章第四节 通过肋片的导热 第四节 通过肋片的导热 第二章 导热基本定律及稳态导热 传热 学 第一节 导热基本定律 (Heat Transfer ) 第二节 导热微分方程式 (Heat Tr ...

  9. 第四章第四节数据资产盘点-数据资产梳理

    第四章第四节数据资产盘点-数据资产梳理 在完成业务价值链.数据场景梳理后,盘点业务流程环节中产生的重要数据 ,仍以贷款为例,如图所示: 比如在授信业务节点会产生客户信息和授信合同信息等数据快,这个业务 ...

  10. 第二章 第四节:替换和切割

    Python基础入门(全套保姆级教程) 第二章 第四节:替换和切割 strip() 去掉字符串左右两端的空白符(空格, \t, \n) s = " 你好, 我叫 周杰伦 " s1 ...

最新文章

  1. MySQL-04:数据内容操作-增删改查-基本命令笔记
  2. linux6同步时间,centos 6.x 同步网络时间
  3. Flask Jinja2 模板中的变量和过滤器
  4. svn ignore 的用法
  5. java画虚线_在java中绘制虚线
  6. 三维点云学习(4)5-DBSCNA python 复现-2-kd-_tree加速
  7. php中table,thinkphp中的table方法怎样使用?
  8. Android基础知识之智能指针:强指针和弱指针
  9. win7玩游戏窄屏变宽频的方法
  10. 利用FreeImage对图像转格式遇到的问题一则
  11. 中国1-4线城市互联网价值分布
  12. AXI总线,AXI_BRAM读写仿真测试
  13. 工商阿里忙互殴 苏宁高调打假争做主角?
  14. 乒乓球十一分制比赛规则_乒乓球比赛规则
  15. python68个内置函数_Python中68个内置函数的总结
  16. sql 修改时间正价 2天_“熬夜3天,修改17遍,我终于写出了1篇稿费2万的稿子”...
  17. linux最新bbr加速,CentOS 7.8 安装BBR加速
  18. 浙江杭州一男子网恋1年求见面, 开门一看这美女长得像“李逵”
  19. swift 图像蒙版,image mask
  20. PS中内容感知移动工具的使用

热门文章

  1. Excel 2016 对数据做线性回归分析步骤
  2. python windows api截图_Winapi快速截图并打开
  3. oracle mysql odbc驱动程序_oracle odbc驱动下载
  4. 怎样在计算机上安装计算器,如何在win10系统电脑上重新安装计算器
  5. appuim+python自动化测试计算器实例
  6. 重命名从喜马拉雅下载的音频文件
  7. cognos ibm 收购_IBM Cognos与Linux上的Sterling Selling and Fulfillment Suite集成
  8. 外卖红包小程序0基础搭建附教程+源码
  9. 深入浅出通信原理知识点10
  10. 安卓常用应用市场包名和常用APP包名