gpt4 book ai didi

html - 为什么阿拉伯语 Noto 字体(或其他阿拉伯语字体)在 HTML/CSS 中呈现不正确?

转载 作者:行者123 更新时间:2023-11-28 19:14:44 26 4
gpt4 key购买 nike

我正在使用 Google Noto Sans Serif Font 渲染阿拉伯文本,它看起来像这样:

enter image description here

请注意对齐如何在某些地方偏离很多

enter image description here

我的 HTML 文档非常简单,基本上是这样的:

<html>
<head>
<meta charset="utf-8">
<style>
@font-face {
font-family: Noto;
src: url(./arabic.ttf);
}

body {
font-family: "Noto";
}

.line {
white-space: pre;
}
</style>
</head>
<body dir='rtl'>
the arabic text...
</body>
</html>

它所做的只是将 Google Noto 字体添加到 body然后是一堆 <div class='line'>arabic text...</div>行。

但是,在上图中,有两个感觉刺眼的问题。

首先,文本似乎视觉对齐不正确。它感觉困惑参差不齐,而不是有一个清晰的基线。某些部分,单词或字符的主要水平延伸甚至远高于远低于水平基线的“平均”位置。

其次,我不擅长阿拉伯语 atm,但似乎有些字符略有移动,以免以一种干净利落的方式草书连接,就像渲染算法在某些情况下搞砸了一样。

我只是误解了它的外观,还是这些视觉问题确实存在?如果这些是缺陷,我该如何修复它并通过 CSS 或其他方式使阿拉伯语文本更清晰且水平对齐。

如果它完全相关,我正在使用 wkhtmltopdf 从 HTML 生成 PDF,这就是该图像的内容。

最佳答案

我认为问题在于转换 (wkhtmltopdf) 而不是 CSS。为什么不使用像 Chrome 这样的浏览器将 HTML 转换为 PDF?它对阿拉伯语文本效果更好。阿拉伯文本通常需要比正常文本更高的行高,例如1.6

body {
line-height: 1.6;
}

附带说明一下,我推荐 Vazir字体。它以最佳方式呈现包含变音符号的文本。

关于html - 为什么阿拉伯语 Noto 字体(或其他阿拉伯语字体)在 HTML/CSS 中呈现不正确?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58568080/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com