我有一些旧的 OS 9 字体,其中包含资源分支中的字体数据。当我尝试在 @font-face 中链接此类字体并在浏览器中打开 HTML 时,文本仍以默认字体显示。
在四处搜索时,我发现可以使用 rsrc 属性将字体数据复制到常规的 ttf 文件中。所以我运行了命令 cp <font>/rsrc <font>-attr.ttf
并尝试在@font-face 中链接新文件。同样,文本以默认字体显示。
关于 stackoverflow 的另一个讨论建议使用 xattr -p <font> | xxd -r > <font>-xxd.ttx
二进制打印和复制数据.再次链接此文件无法更改字体。
为了确保 HTML 是正确的,我从同一目录链接了一个更新的 ttf 字体并且它工作正常。有谁知道旧字体是否可以在@font-face 中使用,有或没有任何转换。谢谢。
最佳答案
字体手提箱可以容纳 2 种不同的字体:位图字体和 TrueType 字体。位图字体将是 'NFNT'
资源以及必要的 'FOND'
(字体系列信息)。另一方面,TrueType 字体将是 'sfnt'
资源条目以及必要的 'FOND'
(字体系列信息)。通常,保存位图字体数据的字体手提箱只有字体的二分之一;为了可用,您需要有额外的 PostScript Outline 字体文件(这些文件将有一个 LWFN
图标)。
否则,字体箱可以代表 TrueType 字体,与“PostScript Type 1 字体箱”相比,它是真正独立的。
要将基于资源文件的 Mac TrueType 字体转换为 Windows TrueType 字体,您只需提取 'sfnt'
资源条目。
由于 Rosetta 不复存在,我没有 Resorcerer,所以我设法启动了一个准系统资源文件编辑器。
https://markdouma.com/developer/ResourceFinagler.zip
我刚刚添加了几行,以便您现在可以选择如下图所示的各个 'sfnt'
资源,并将它们拖到 Finder 中以创建各个 Windows TrueType 字体。
关于html - 在 CSS 中使用 @font-face 使用 OS 9 资源分支字体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7412462/