Я отображаю арабский текст с использованием шрифта Google Noto Sans Serif , и он выглядит следующим образом:
Уведомлениекак выравнивание отключено в некоторых местах .
Мой 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>
строк.
Однако вНа рисунке выше есть две проблемы, которые кажутся явными .
Во-первых, текст не выглядит визуально выровненным должным образом. Чувствуется перемешанный и зубчатый вместо того, чтобы иметь четкую базовую линию. В некоторых частях основное горизонтальное растяжение слова или символов даже на намного выше или намного ниже"среднего" положения горизонтальной базовой линии.
Во-вторых, яне разбираюсь в арабском атм, но кажется, что некоторые символы немного смещены, чтобы не соединяться курсивом аккуратно и аккуратно, как алгоритм рендеринга не работает в определенных ситуациях.
Я просто неправильно понимаю, какэто должно выглядеть, или эти визуальные проблемы на самом деле есть? Если это дефекты, как я могу это исправить и сделать арабский текст более чистым и выровненным по горизонтали, с помощью CSS или иным образом.
Если это вообще важно, я использую wkhtmltopdf для генерации PDF из HTML,что это за изображение.