所以,我正在尝试加载一个"条形码"字体,它将普通文本替换为我网页上的条形码.
现在我是使用字体的新手.我试图使用的字体是这样的:
http://www.fontsupply.com/fonts/F/Fre3of9x.html FRE3OF9X.TTF
错误消息是这样的: Failed to decode downloaded font:
我可以看到,该字体正在304网络控制台中加载.那导致这个问题的原因是什么?
HTML
<div class="barcode"><span class="barcodeText">*11111*</span></div>
Run Code Online (Sandbox Code Playgroud)
CSS
@font-face {
font-family: 'FRE3OF9X';
src: url('/fonts/FRE3OF9X.TTF');
}
.barcodeText{
font-family: 'FRE3OF9X', 'Georgia', serif;;
}
Run Code Online (Sandbox Code Playgroud)
结果
*11111*
Run Code Online (Sandbox Code Playgroud)
我也收到了这条消息OTS parsing error: maxp: failed to parse table.但我真的不知道它是什么.
小提琴
https://jsfiddle.net/f2a6gcvu/
编辑
我没有解决这个问题,但改变了字体.9个中的3个工作正常.
您获得解码错误的原因是因为字体实际上已损坏.通过TTX(用于在二进制和XML表单之间切换字体表示的实用程序)运行它给我们:
> ttx FRE3OF9X.TTF
Dumping "FRE3OF9X.TTF" to "FRE3OF9X.ttx"...
Dumping 'GlyphOrder' table...
Error: cmap subtable is reported as having zero length:
platformID 1, platEncID 0, format 0 offset 20. Skipping table.
Dumping 'head' table...
Dumping 'hhea' table...
Dumping 'maxp' table...
Dumping 'OS/2' table...
Dumping 'hmtx' table...
Error: cmap subtable is reported as having zero length:
platformID 1, platEncID 0, format 0 offset 20. Skipping table.
Dumping 'cmap' table...
Dumping 'loca' table...
Dumping 'glyf' table...
Dumping 'name' table...
Dumping 'post' table...
Run Code Online (Sandbox Code Playgroud)
由于cmap结构包含有关字体支持的字符的信息,因此损坏的cmap子表是终端错误.您可以尝试从其他cmap子表中获取损坏的数据(这可能是Photoshop正在做的事情),但这并不能保证做正确的事情.浏览器在谨慎方面是错误的,所以这种字体很容易被拒绝.
怎么做:1.将这个字体报告给网站,以便他们可以修复或删除它,2.选择一个新字体(我看到你已经这样做了),并且3.可能自己拿一份TTX for将来检查坏字体.
| 归档时间: |
|
| 查看次数: |
1447 次 |
| 最近记录: |