在处理前端页面的时候经常遇到要求把指定的文字变成某种字体,这样就需要引入中文字体。而由于中文字库字符的数量很多,所以一个较为全的中文字体都是非常大的,动辄5、60兆。一旦加载了中文字体就会导致网页非常的慢。在没有在线字体的时候,都是需要放在本地服务器的,百兆带宽的服务器尚且都觉得慢,更别说国内的云服务器了,3兆5兆10兆的带宽下载这个字体至少需要100秒,这肯定是不可取的。下面说说一个出来很久的方案,顺便做个笔记。
简单来说就是字体精简,选中一段文字,在字体字库中找出来对应的字符,把其他的字符删除,这样这个字体就可以做到体积小还能显示需要的效果。这样的流程看起来非常费劲,而这篇文章的解决方法就是使用百度做的项目Fontmin,自动精简字体。支持Windows、macOS、命令行。
项目地址:https://github.com/ecomfe/fontmin
只需要选择字体,输入要显示的一段文字,就能生成精简后的字体,倒入也就是几百kb,不太影响用户体验。当然这个方法也会存在一定的弊端,就是不适合需要经常变动的文字段落,每次都需要手动生成字体。下面是我在最近的项目上使用的效果。
One comment
很好很强大