摘要:针对以上的问题,我们可以得出中文要解决的问题是压缩和转码。主页中文字体演示与工具使用请前往主页项目实践年接到的最后一个项目需求腾讯云解决方案改版。新的腾讯云解决方案采用了全新的排版方式,更加简洁大气。
我们在日常需求中,经常会碰到视觉设计师对某个中文字体效果非常坚持的情况,因为页面是否高大上,字体选择是很重要的一个因素,选择合适的字体可以让页面更优雅。面对这种问题,我们通常以下方式来进行设计还原:
使用图片背景还原设计,即使用 photoshop 将文本图层多带带导出成网页背景图片。
产生的问题制作与维护成本很高。切图繁琐、高清屏适配繁琐、合并雪碧图更繁琐,后期修改更加繁琐。
用户体验差。导致网页不支持选中、复制、搜索、翻译、矢量缩放,也会影响视障用户使用读屏器操作网页。
带来更多带宽消耗。导出的图片体积随着文本面积增加,且字形无法重复利用,这消耗着大量的服务器资源
WebFont技术提供了在网页使用特殊字体的可能,从而避免用图片的方法。它的实现方法是通过CSS的@font-face引入字体。很多互联网公司已经率先采用了这种方法,比如Apple官网就是采用了自己的字体。Google也推出了免费的WebFont云托管服务,在国外网站自定义字体得到很好的应用。
在中文方面自定义字体却迟迟没有广泛应用,这是有什么原因呢?
中文WebFont的困境: 中文字体体积大英文字体文字部分由26个字母组成,所以字体文件通常不会太大;而中文汉字数量总共约有九万左右, 国标(GB)字库 有6763字, 而根据《现代汉语常用字表》统计数据,常用汉字也要有3500个左右。 中文字体文件通常都会几M的大小,参照现在中国的网络环境,显然不适合在项目中使用。
浏览器支持不同浏览器对字体的支持也是不同的,没有一种可以支持所有浏览器的字体,这就要求我们针对不同的浏览器制作不同的字体。(N=Not supported, P=Partial support, Y=Supported)
针对以上的问题,我们可以得出中文WebFont要解决的问题是:压缩和转码。
Font-Spider中文WebFont解决方案的诞生:为了不让工程与体验制约着设计师对字体选择以及创意的实现,我们利用业余时间解决了中文WebFont的两大问题即压缩和转码,于是便有了 Font-Spider (字蛛)的诞生。作为业界首款中文 WebFont 本地自动化压缩与转码工具,中文字体 web 化问题迎刃而解。它是一个 web 字体工具,通过自动化技术来压缩、转码跨平台的中文字体,让网页自由嵌入中文字体成为可能。
原理爬行本地 html 文档,分析所有 css 语句
记录@font-face语句声明的字体,并且记录使用该字体的 css 选择器
通过 css 选择器的规则查找当前 html 文档的节点,记录节点上的文本
找到字体文件并删除没被使用的字符
编码成跨平台使用的字体格式
编码零干预不需要改变 web 工程师现有的编码习惯、工程师可直接通过 css @font-face与选择器定义并应用字体。
压缩与转码剔除没有使用的字符,通常可将数 MB 的字体压缩成数十 KB 大小,解决中文字体过大的问题,并编码成跨平台兼容的格式。
主页web 中文字体演示与工具使用请前往主页:http://font-spider.org/
项目实践2014年接到的最后一个项目需求——腾讯云解决方案改版。新的腾讯云解决方案采用了全新的排版方式,更加简洁大气。标题部分字体更是采用了Adobe与Google所领导开发的开源字体——思源字体。面对项目中特殊字体的需求,快速整理了实现方案。腾讯云线上的解决方案已经采用了思源的特殊字体。
开源我们把Font-Spider(字蛛)不断完善,并且回馈给开源社区,希望为中文WebFont的发展出一份力,让更多的中文站点可以使用精美的字体。
本文转载自 https://isux.tencent.com/font...
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/112260.html
摘要:字蛛通过分析本地与文件获取中没有使用的字符,并将这些字符数据从字体中删除以实现压缩,同时生成跨浏览器使用的格式。如图使用字蛛版本不建议过高,我使用的版本没有成功,后来改成的版本成功了。 web字体体积大导致加载过慢,对于前端来说是一大需要解决的问题,作为一个前端小白,看不懂文档也是个通病,不过还是花了一些时间和朋友一起研究了这个问题,并找到了解决方案就是字蛛。 字蛛网站:http://...
摘要:的问题没碰到但是我的却一直报错后来把样式表里的文件全部删除居然好用了然后逐类删除逐行删除发现问题在问题在于中的无法解析并找不到字体删除就可以执行了执行完毕再还原回来完美解决 @media的问题没碰到,但是我的却一直报错.后来把样式表里的文件全部删除,居然好用了.然后逐类删除,逐行删除,发现问题在 .clearfix:after{content: 20;display: block;vi...
摘要:的问题没碰到但是我的却一直报错后来把样式表里的文件全部删除居然好用了然后逐类删除逐行删除发现问题在问题在于中的无法解析并找不到字体删除就可以执行了执行完毕再还原回来完美解决 @media的问题没碰到,但是我的却一直报错.后来把样式表里的文件全部删除,居然好用了.然后逐类删除,逐行删除,发现问题在 .clearfix:after{content: 20;display: block;vi...
阅读 1608·2021-11-23 10:07
阅读 2603·2019-08-30 11:10
阅读 2818·2019-08-29 17:08
阅读 1755·2019-08-29 15:42
阅读 3128·2019-08-29 12:57
阅读 2379·2019-08-28 18:06
阅读 3508·2019-08-27 10:56
阅读 363·2019-08-26 11:33