但其实那不是最优解决方案,因为字体文件不止有 TTF 格式,常见的字体格式还有 OTF、WOFF 和 WOFF2 等。 WOFF 本质上是包含了基于 sfnt 的字体(如 TrueType、OpenType 或开放字体格式),且这些字体均经过 WOFF 的编码工具压缩,以便嵌入网页中。 其兼容性如下: [image-20220130224605119] WOFF2 WOFF 2 标准在 WOFF1 的基础上,进一步优化了体积压缩,带宽需求更少,同时可以在移动设备上快速解压。 与 WOFF 1.0 中使用的 Flate 压缩相比,WOFF 2.0 是使用 Brotli 方法进行的压缩,压缩率更高,所以文件体积更小。 WOFF 字体比 TTF 字体有更小的体积和更好的表现性。 WOFF 2 字体是对 WOFF 字体的升级。
WOFF格式 WOFF文件格式是用WOFF (Web Open Font Format)创建的网页开放字体格式, Web开放字体格式(Web Open Font Format,简称WOFF)是一种网页所采用的字体格式标准
woff文件 Web开放字体格式(Web Open Font Format,简称WOFF)是一种网页所采用的字体格式标准。 可以将其用python的字符串转成woff格式文件。 import base64 with open('1.woff','wb') as f: f.write( base64.b64decode(jsobject["woff"]) ) 其转成woff格式的文件 如下 woff文件转xml –fontTools 对于woff文件,其实有时候我们很难观察到其具体的逻辑是什么,或者说是很难总结其规律。 (用于爬虫) 将1.woff文件转成xml文件 from fontTools.ttLib import TTFont font=TTFont('1.woff') font.saveXML('1.xml'
IIS下使用ZUI或者Bootstrap类的前端UI时,常会用到.woff字体,但是默认IIS不会解析这个后缀的文件(跟邮件.msg后缀一样),我们可以在设置woff字体的MIME类型,但是显然太麻烦了 <system.webServer> <staticContent> <remove fileExtension=".<em>woff</em>" /> <mimeMap fileExtension =".<em>woff</em>" mimeType="font/x-font-<em>woff</em>" /> </staticContent> </system.webServer> 为什么先加一个remove
二、字体格式 —— .eot、.woff、.ttf、.svg 1. 字体格式介绍 目前最主要的几种网络字体(web font)格式包括WOFF,SVG,EOT,OTF/TTF。 WOFF WOFF是Web Open Font Format几个词的首字母简写。 WOFF字体通常比其它字体加载的要快些,因为使用了OpenType (OTF)和TrueType (TTF)字体里的存储结构和压缩算法。这种字体格式还可以加入元信息和授权信息。 部分的因为这种格式容易被复制(非法的),这才催生了WOFF字体格式。然而,OpenType有很多独特的地方,受到很多设计者的喜爱。 /fonts/singlemalta-webfont.woff') format('woff'), url('..
<nonFilteredFileExtension>ttf</nonFilteredFileExtension> <nonFilteredFileExtension>woff </nonFilteredFileExtension> <nonFilteredFileExtension>woff2</nonFilteredFileExtension>
2.菜单项选择Font=》Properties,打开Font Properties弹窗。
很久之前写过windows20008服务器无法加载woff文件的问题,文章是:解决网站部署svg/woff/woff2字体404错误的方法,今天来说下Nginx无法加载woff的问题,我目前使用的是程序是 lnmp,宝塔控制面板,使用的TP5,但是在后台访问的时候无法加载woff文件,页面提示502 bad gateway,使用f12查看开发者信息,所有的woff都是502,所有页面的小图片均已无法显示, (gif|jpg|jpeg|png|bmp|swf|eot|otf|ttf|woff|woff2|svg)$ { expires 30d; error_log /dev/null; access_log /dev/null; } 注意,配置文件是存在的,仅仅需要添加其中的“|eot|otf|ttf|woff|woff2|svg”后缀即可 ,允许.woff等后缀文件进行跨域显示。
在上次从css的@font-face提取出字体URL链接时,就包含了eot和woff两种格式。鉴于woff字体更容易被分析,所以我们上次选择了只下载woff字体格式,今天这篇文章也一样。 我们使用上次下载的address.woff文件作为已知训练集,然后将shopNum.woff字体文件的轮廓图,进行一定的乱序处理,看看能否正确的提取出需要的文字。 首先使用FontCreator.exe打开shopNum.woff字体文件,然后修改轮廓图顺序。 最终在我一顿操作后,形成下面的顺序: 再将字体导出为random.woff。 那么我们能否通过address.woff文件和已知字符列表作为训练集,正确匹配出random.woff文件每个Unicode代码点对应的字符呢? 作为训练集,random.woff是要处理的目标字体。
,woff,ttf】(如果有其他格式可以添加),然后操作分别选择【节点缓存TTL】和【浏览器缓存TTL】,行为设置【自定义时间】,时间可以设置成【365】天,也就是一年,因为字体文件本身就不需要经常更换 文件压缩 虽然WOFF2已经是经过优化的字体格式,但确保EdgeOne支持并开启了压缩功能,如gzip或Brotli压缩,可以进一步减小文件体积。 ) format('woff2'); } body,a{font-family:HarmonyOS_Sans_SC;} 【HarmonyOS_Sans_SC】字体文件名称,url是字体文件的路径,这样, <link rel="preload" href="/tools/fonts/HarmonyOS_Sans.subset.<em>woff</em>2" as="font" type="font/<em>woff</em>2" crossorigin 通过上述方法的组合使用,可以有效降低WOFF2字体文件在CDN上的流量消耗。
我们可以到第一字体网去下载http://www.diyiziti.com/ 转换字体格式 将下载好的字体转换成.eot、 .woff、 .woff2三种格式,文件名可以是任意英文可以根据自己的喜好命名( 上传字体 将转换好的.eot、 .woff、 .woff2三种格式字体上传到自己网站任何位置(建议上传到CDN这样字体渲染速度比较快)。 调用代码 @font-face { font-family: "kali"; src: url(https://bbskali.cn/.woff2) format("woff2"), url(https://bbskali.cn/.woff) format("woff"), url(https://bbskali.cn/.ttf) format("truetype"), 、 .woff2三种格式路径保持一致,否则字体将不会正常显示。
上传至私有云存储进行调用 在这之前需要先做一项准备工作,我们手上的字体文件通常只有一种格式,而为了满足不同浏览器的需要,我们需要将其扩展为五种格式,分别为.ttf .eot .woff .woff2 . /fonts/yourfont.woff2') format('woff2'),url('../fonts/yourfont.woff') format('woff'),url('.. ') format('woff2'),url('https://cdn.jsdelivr.net/gh/Ratodo/Lib/fonts/siyuan/siyuan.woff') format('woff ') format('woff2'),url('https://cdn.jsdelivr.net/gh/Ratodo/Lib/fonts/AWan/AWan.woff') format('woff'), /fonts/yourfont.woff2') format('woff2'),url('../fonts/yourfont.woff') format('woff'),url('..
一直以来又一个困惑,就是网站本身没有js错误,但是状态栏一致在提示有错误,相对于本站也有一个类似的错误,那就是404,简单的看了下,一致在显示.woff页面错误,然后打开了网站错误页的详情,才知道是因为服务器 IIS不认SVG,WOFF/WOFF2 这几个文件类型,只要在IIS上添加MIME 类型即可。 文件扩展名:.woff (或者显示404页面的文件) MIME类型:application/x-font-woff 其他类型,例如: 文件扩展名 MIME类型 .svg image/svg+xml .woff application/x-font-woff .woff2 application/x-font-woff OK
,因此更加倾向于使用 node 库 ttf2woff2 转换。 OTF 转 WOFF2 除了 TTF ,美术同学还经常提供 OTF 给我们,这是微软和 Adobe 共同研发的字体,因此在 windows 平台还是比较流行的。那如何将其转换成 WOFF2 呢? 使用 python otf2ttf 生成 ttf 文件 后,就可以使用上面提到的将 ttf 转换成 woff2 的方法获取到 woff2 了。 /myfont.woff2') format('woff2'); } body { font-family: myfont; } 假如这个 myfont.woff2 文件大小为 4M,而网络下载速度只有 /myfont.woff2') format('woff2'); } 注意,CSS 中只需要定义字体就行,而不要使用使用这个字休。
在使用ace模板的过程中就曾遇到过图标不显示的情况, 1、在iis和vs运行都不能显示图标,添加缺失的字体库后可以访问 2、把项目签入到阿里云时再一次失效,解决方法是添加Mime类型 .woff application /x-font-woff .woff2 application/x-font-woff .svg image/svg+xml 3、在使用H+模板的时候又出现了问题,然后前两种都没能解决问题,因为mvc webconfig中的system.webServer节点添加配置 代码如下 <system.webServer> <staticContent> <remove fileExtension=".<em>woff</em> "/> <mimeMap fileExtension=".<em>woff</em>" mimeType="application/x-font-<em>woff</em>" /> <remove fileExtension =".<em>woff</em>2"/> <mimeMap fileExtension=".<em>woff</em>2" mimeType="application/x-font-<em>woff</em>2" /> <remove
下载自己喜欢的字体 下载自己喜欢的字体,字体格式为.ttf 转化字体格式 将下载好的字体转换成.eot、 .woff、 .woff2三种格式,文件名可以是任意英文,没有特殊要求,可以根据自己的喜好命名( 上传字体至服务器 将转换好的.eot、 .woff、 .woff2、.ttf、.svg、.otf格式字体上传到自己网站任何位置,只要和后面的代码路径一致就可以了。 插入CSS代码 @font-face { font-family: "ziti"; src: url("https://你的文件路径/ziti.woff2") format("woff2"), url("https://你的文件路径/ziti.woff") format("woff"), url("https://你的文件路径/ziti.ttf") format(" font-display: swap; } body{ font-family: 'ziti' } ; 以上代码的url链接为字体文件路径链接,可自行更改,“ziti”为字体名称,比如ziti.ttf,ziti.woff
这里介绍一个查看woff字体内部对应编码的网站: http://fontstore.baidu.com/static/editor/index.html 下图是我随机将woff文件打开后的样子! 这里再做解释,第一次我们取网站上的一个字体并解码为xx.woff,并得到映射关系,相应的编码相应的字体对象,而编码又与字体对应,反过来,当我们随机取得网上另外一个yy.woff字体时,我们知道了该字体的对象 关系图如下: xx.woff 字体->编码->对象 yy.woff 字体->对象->编码->字体 下面我们来实战吧! /maoyan.woff') maoyan_fonts.saveXML("text.xml") 对应关系 以我的woff为例,定义映射关系! def get_content(self): html = self.get_html() data_woff = self.get_woff(html)
/font/aaa.woff') format('woff'), } 注释: 其中font-family: ‘xxx’; 中的 xxx 字体名称(可随意命名,需要与使用时的名字保持一直) src: url /font/aaa.woff’) format(‘woff’), 其中aaa为字体文件名,woff为文件格式,有的可能是woff2,也可能是ttf.之类. url指的是调用的外部文件链接,可以是本地,可以是远程 (eot|otf|ttf|woff|woff2)$ { add_header Access-Control-Allow-Origin *; } 如使用的是Apache: 根目录 .htaccess (ttf|otf|eot|woff|woff2)$"> Header set Access-Control-Allow-Origin "*" 字体可已去这个网址免费下载: https://
luna/OpenSans-Light.963eb32907744d9a0d6b.woff luna/OpenSans-LightItalic.e7cc7120e670a8073073.woff2 luna /OpenSans-SemiboldItalic.3343e54368719e3786f7.woff2 luna/OpenSans-BoldItalic.c36b5ac7c2dddf6f525c.ttf ttf luna/fontawesome-webfont.b06871f281fee6b241d6.ttf luna/OpenSans-LightItalic.97534dd409492b05b11a.woff svg luna/OpenSans-Italic.9b30f13428e1b4a659ae.ttf luna/OpenSans-ExtraBoldItalic.bc511bacf828ac9e833e.woff2 .svg luna/OpenSans-Italic.525074686dfb8aa36b1b.woff luna/MaterialIcons-Regular.012cf6a10129e2275d79.woff
302&text=0123456789】 三、下载后,解压后都是.ttf文件,在【https://www.fontsquirrel.com/tools/webfont-generator】可将字体文件转换成woff2 ,svg,woff格式等,将下载后的文件解压至项目文件夹中。 /assets/fonts/digital-7.woff2") format("woff2"), url("../.. /assets/fonts/digital-7.woff") format("woff"), url("../..