css - PDF 上的小写拉丁字符

标签 css pdf utf-8 fonts mpdf

我使用 mPDF 库生成 PDF。

我用的是Open Sans字体,内容有ä等拉丁字符

如果是纯 ä,它会正确显示,

但问题是如果我在这段文字中添加了一个font-variant: small-caps;。变成这样:

enter image description here

我测试了 ä 的大写是否有问题:

enter image description here

但是没有。如果您尝试选择并复制带有“框”的单词 ä(我指的是第一张图片).. 然后将其粘贴到某个位置。您将拥有正确的nationalität

那么问题来了,那里的问题是什么?它在字体上吗?在 PDF 中?在 CSS 中?或者在编码(目前是utf-8)?

我该如何解决?

我知道我可以使用类似的东西:

<span class="bigger-font">N</span><span class="smaller-font">ATIONALITÄT</span>

然后我会得到我想要的结果。但我真的很想使用 font-variant: small-caps; 因为这样更容易。

最佳答案

我修好了。

不知 Prop 体的技术解释,

但经过大量的尝试和错误,解决问题......我找到了解决问题的方法。我刚刚在标记中添加了一个 大写 拉丁字符列表,因此 PDF 已经呈现了 大写 拉丁字符以在 font-variant: small-caps 中使用;

<span style="visibility: hidden; font-family: open_sans;">
    ÀÁÂÃÄÅÈÉÊËÌÍÎÏÐÒÓÔÕÖØÙÚÛÜÝÑÇÆ <!-- pre render it. small-caps may use them later. -->
</span>
<font>
    Nationalität <!-- It will now rendered correctly. -->
</font>

因为看起来 font-variant: small-caps; 在生成 PDF 的最后一个过程中应用,它无法从字体中获取 大写 拉丁字符家庭。

我无法扎实地解释和证明问题的原因。我不知道技术原因。如果你们中的一些人对此有所了解。请告诉我们。

关于css - PDF 上的小写拉丁字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42116675/

相关文章:

css - Wordpress 页脚小部件未对齐

php - 如何强制 XPath 使用 UTF8?

objective-c - 将 UIView 转换为 PDF 会更改图像颜色

pdf - 使用apache fop 0.95在pdf中从左到右显示阿拉伯语文本

pdf - knit 1.5/patchDVI 1.9 似乎没有生成 evince + emacs 可接受的一致性

php - UTF-8 安全等同于 PHP 中的 ord 或 charCodeAt()

python - 如何在 Python 中区分正确的和错误的 unicode 编码字符串?

javascript - 根据条件在 PHP 中包含 CSS 和 JS

html - ie中没有设置背景大小

html - 在 div 下打开下拉菜单