网站首页 > 技术文章 正文
前言
多年以来,中文网页设计师一直处于一种 “字体匮乏” 的窘境之中。
这是因为从中文 Windows 的第一个版本 3.2 开始,在相当长的一段时期内,系统自带的中文字体就仅仅局限于苍白单调的 “宋黑仿楷”。加上长期以来 Windows 在字体渲染技术方面的严重缺失,使得设计师在为中文网页选择正文字体时,基本上就只有中易宋体的点阵形态这唯一的选择。
直到 Vista 携微软雅黑字体横空出世,中文网页设计师才仿佛看到了世界的曙光。
微软雅黑脱胎于方正集团旗下的新锐字体 “兰亭黑” 家族,不仅字体的间架结构针对屏幕阅读场景进行改造,同时还针对液晶屏幕下小字号的显示效果进行逐字的笔划微调工作(hinting),以保证最终为用户呈现出清晰、平滑、易于阅读的显示效果。
因此,微软雅黑一经推出,便在中文网页设计界引发不小的震动。网页设计师和前端工程师们不禁打起它的主意——如何将微软雅黑字体广泛、安全地应用到网页设计中去?或者说,微软雅黑字体的普及率究竟如何?
微软雅黑在 XP 中的安装率
微软雅黑是 Vista 及更高版本 Windows 的标配字体,但不是 XP 的标配字体。XP 的任何一个 SP 或更新包都没有(将来也不太可能)包含它。
XP 系统上的微软雅黑字体,通常有两种来源:
- 用户主动下载安装。
- 安装 Office 2007 以上版本时自动获得。
由此可见,稍微“高端”一些的 XP 用户都有可能安装了微软雅黑字体,但 具体比率不详。
对此,我的建议是:
- 考虑这个比率不如考虑目标受众群的划分和取舍。
- 在一定程度上考虑好无雅黑情况下的平稳退化。
微软雅黑与 ClearType
ClearType 是微软开发的 次像素字体渲染 技术,这项技术的本质是充分利用液晶显示屏单颗像素内的 RGB 三基色的次像素(sub-pixel,也称作 “亚像素” 或 “子像素”)、独立控制每颗次像素的明暗度,在次像素的级别进行字体的渲染和显示,从而令字体在水平方向上的渲染分辨率达到了原来的三倍。
微软雅黑字体只有在使用 ClearType 技术进行渲染时,才会达到最佳视觉效果。下面的图片展示了不同情况下微软雅黑字体的渲染效果:
- 已启用 ClearType 渲染方式
- 已启用传统的字体平滑渲染方式
- 未启用任何字体平滑技术
从 Vista 开始,Windows 系统默认开启 ClearType 特性。但 Windows XP 是否支持 ClearType 字体渲染模式呢?
ClearType 在 XP 中的启用率
Windows XP 原生支持 ClearType,但可能是出于对性能的考虑,默认是关闭状态。用户可以通过以下步骤在 XP 中启用 ClearType:
控制面板 → 显示 → 外观 → 效果 → 使用下列方式使屏幕字体的边缘平滑:清晰
XP 用户还可以通过安装微软提供的 ClearType 设置工具(ClearType Tuner PowerToy)来获得对 ClearType 效果的更多控制。
(图片来源:Microsoft.com)
那么,在 XP 中手动打开 ClearType 的用户比率有多少?这个数字恐怕不是很乐观。但是幸运的是,IE 7.0 及以上版本都是在自身视口内强制开启 ClearType 的(哪怕你用的不是液晶显示器)。
而 XP 下的非 IE 用户呢?或许你可以假设他们都比较 “高端”,已经给自己的 XP 手动开启 ClearType 了。
结语
在国内,Windows XP 操作系统目前仍然拥有不可忽视的用户数量。如果要在网页中使用微软雅黑作为主力字体,我们不得不考虑 XP 环境下所存在的一些不确定因素。
那么,我们有没有可能对 XP 用户的这些情况进行针对性的探测和统计,以便根据数据来做决策呢?
对于用户的 ClearType 设置情况,网页中的 JavaScript 脚本无法获取。而对于用户是否安装了微软雅黑字体,实际上是有探测方法的,有兴趣的朋友请继续关注后续文章。
希望本文能帮助到您!
点赞+转发,让更多的人也能看到这篇内容(收藏不点赞,都是耍流氓-_-)
关注 {我},享受文章首发体验!
每周重点攻克一个前端技术难点。更多精彩前端内容私信 我 回复“教程”
原文链接:https://github.com/cssmagic/blog/issues/15
- 上一篇: 前后端数据交互(四)——fetch 请求详解
- 下一篇: 前端基础:HTML5 前端基础知识总结
猜你喜欢
- 2024-10-11 前后端数据交互(四)——fetch 请求详解
- 2024-10-11 小白总结:前端HTML基础知识点(1)——元素总结
- 2024-10-11 领导给了你大块文字,晦涩难懂,还要有设计感,快来解救我吧!
- 2024-10-11 高薪前端必备,后端工程师带你学canvas,第一节:图片上绘制字体
- 2024-10-11 零基础教你学前端——66、CSS谷歌字体和Icon图标
- 2024-10-11 「前端添加水印」你真的了解全面吗?
- 2024-10-11 前端OCR图片文字提取功能 #ocr识别
- 2024-10-11 一起学 pixijs(4):如何绘制文字 pic字设怎么上色
- 2024-10-11 HTML网页制作常用标签及说明——前端开发入门
- 2024-10-11 前端框架 Bootstrap 4.3.0 发布,引入自适应字体尺寸
你 发表评论:
欢迎- 501℃几个Oracle空值处理函数 oracle处理null值的函数
- 495℃Oracle数据库的单、多行函数 oracle执行多个sql语句
- 494℃Oracle分析函数之Lag和Lead()使用
- 482℃0497-如何将Kerberos的CDH6.1从Oracle JDK 1.8迁移至OpenJDK 1.8
- 475℃Oracle 12c PDB迁移(一) oracle迁移到oceanbase
- 468℃【数据统计分析】详解Oracle分组函数之CUBE
- 454℃Oracle有哪些常见的函数? oracle中常用的函数
- 450℃最佳实践 | 提效 47 倍,制造业生产 Oracle 迁移替换
- 最近发表
-
- Directus 火了!无代码 SQL 数据的协作应用利器!
- PHP和NodeJS的代码执行效率比较(php和nodejs的区别)
- 工商银行获得发明专利授权:“基于数据库映射动态接口的前端页面应用开发方法及装置”
- FAISS和Chroma:两种流行的向量数据库的比较
- 什么是数据库的索引?(数据库索引的定义和作用)
- Vercel和Neon“首次”推出用于前端云的无服务器SQL数据库
- 记一次前端逻辑绕过登录到内网挖掘
- 学Access好还是MySQL好?(access与mysql的语句区别)
- 惬意!清晨慢品 HTML canvas 标签题,面试知识轻松 get
- 前端实现知识图谱-force(d3.js)(前端知识树)
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端react (48)
- 前端aes加密 (58)
- 前端脚手架 (56)
- 前端md5加密 (54)
- 前端富文本编辑器 (47)
- 前端路由 (55)
- 前端数组 (65)
- 前端定时器 (47)
- Oracle RAC (73)
- oracle恢复 (76)
- oracle 删除表 (48)
- oracle 用户名 (74)
- oracle 工具 (55)
- oracle 内存 (50)
- oracle 导出表 (57)
- oracle 中文 (51)
- oracle链接 (47)
- oracle的函数 (57)
- 前端调试 (52)
- 前端登录页面 (48)
本文暂时没有评论,来添加一个吧(●'◡'●)