获得" Duchess"字体工作

时间:2015-01-23 16:46:25

标签: fonts

我从Fontpalace下载了一些TTF字体到我的网页zackel.com/fonts/然后我用@font来访问它们。这适用于“宪法”字体,以及我尝试过的所有其他字体 - 除了“公爵夫人”,正如你在这个jsFiddle中看到的那样 - http://jsfiddle.net/mzvswy4e/4/。我已经尝试将Duchess ttf文件从除Fontpalace之外的其他来源复制到我的字体/目录但结果总是相同的:它不起作用。

有谁知道这里发生了什么?

感谢。

@font-face {
    font-family:constitution;   
    src: url(https://zackel.com/fonts/Constitution.ttf);
}

@font-face {
    font-family:duchess;    
    src: url(https://zackel.com/fonts/Duchess.ttf);
}

1 个答案:

答案 0 :(得分:1)

(免责声明:以下是基于2的样本大小的实验性工作,但由https://github.com/devongovett/pdfkit/issues/121证实:某些应用程序似乎需要Unicode cmap。)

我用ttfdump查看了这两种字体,而Duchess.ttf在文件中只有两种编码:

  

'cmap'表 - 字符到字形索引映射表

     'cmap' version: 0
     number of encodings: 2
     number of subtables: 2
     

编码0. PlatformID:1                    EcodingID:0                    SubTable:0,Offset:0x00000014

     

编码1. PlatformID:3                    EcodingID:1                    SubTable:1,偏移量:0x0000011a

The specs建议用于Mac(Id 1)和Windows(Id 3,编码1是Unicode基本平面,UCS-2),而工作字体有三个:

  

'cmap'表 - 字符到字形索引映射表

     'cmap' version: 0
     number of encodings: 3
     number of subtables: 2
     

编码0. PlatformID:0                    EcodingID:0                    SubTable:0,Offset:0x00000124

     

编码1. PlatformID:1                    EcodingID:0                    SubTable:1,Offset:0x0000001c

     

编码2. PlatformID:3                    EcodingID:1                    SubTable:0,Offset:0x00000124

额外的一个是Unicode 1.0。请注意偏移量与Windows编码的相同,因为它们基本上都是相同的Unicode。我的猜测是浏览器需要Unicode编码。我会假设像FontForge这样的工具可以添加它,因为它只是你已经拥有的表的另一个指针。