我正在尝试使用fontlibrary.org加载字体以将文档生成为PDF。我目前在网站上使用这些相同的字体,并且一切正常。但是,当我尝试使用这些字体打印文档时,strong
不会以粗体显示,而em
不会以斜体显示。要变通解决此问题,我必须这样做(它已经是sass
,所以您可以想象相应的CSS):
body {
font-family: "HkGroteskRegular", sans-serif;
strong {
font-family: "HankenGroteskBold", sans-serif;
font-weight: bold;
}
em {
font-family: "HankenGroteskItalic", sans-serif;
font-style: italic;
}
}
h1, h2, h3, h4, h5, h6 {
font-family: "NormungRegular", serif;
strong {
font-family: "NormungBold", serif;
font-weight: bold;
}
em {
font-family: "NormungItalic", serif;
font-style: italic;
}
}
code, pre {
font-family: 'FantasqueSansMonoRegular', monospace;
strong {
font-family: "FantasqueSansMonoBold", monospace;
font-weight: bold;
}
em {
font-family: "FantasqueSansMonoItalic", monospace;
font-style: italic;
}
}
所以我有几个问题:
wkhtmltopdf
)找不到它们?浏览器和wkhtmltopdf
是否都错误地加载了字体文件?@font-face
规则正确吗?我必须自己写这些以确保吗? 更新日期:2018-10-14 。我注意到,当我下载字体以便可以在本地找到它们时,一切正常。我怀疑发生这种情况是因为本地安装的字体名称遵循字体变体的命名约定,允许浏览器,“打印预览”和pandoc
来查找它们。 如果有人确认命名约定可以解决问题,我将非常感激。在这种情况下,我可以调整@font-face
规则以从fontlibrary.org加载字体,以便我不需要在本地安装字体。
答案 0 :(得分:1)
我认为这是Fontlibrary如何共享其字体的结果。如果在最底部查看文件https://fontlibrary.org/face/hk-grotesk(包含字体css的链接),则会看到标有“不赞成使用以下规则”的部分。
如果您使用该部分的字体名称(即“ Hanken Grotesk”)而不是特殊名称(如“ HankenGroteskBold”),则网络浏览器似乎会找到正确的粗体和斜体形式。我只是使用这些特殊名称而感到麻烦(就我而言,使用Libertinus字体)。
不幸的是,由于这些名称被标记为“已弃用”,因此我不知道它们将继续工作多长时间。我也不知道为什么Fontlibrary设置了此命名约定,这使得使用字体比必要的字体更加困难(我认为)。