Search
Write a publication
Pull to refresh

Comments 4

HarfBuzz используют очень многие для рендеринга complex scripts (куда входит арабский, Thai, и другие). Его надо было брать с самого начала, остальные библиотеки не настолько хороши, либо очень «жирные».

Кроме того, FreeType может рендерить только тривиальные случаи — например, «отрендерить данную English строку пользуясь вот этим шрифтом», где один символ строки — это один глиф из шрифта. Для complex scripts необходимо делать промежуточное преобразование входной Unicode строки в последовательность «кластеров глифов». Эту задачу и выполняет HarfBuzz. Полученные кластера можно будет скармливать FreeType, так как вся необходимая информация для правильного рендеринга уже получена.
Да в конечном варианте мы используем HarfBuzz вместе с FriBidi. Как и для чего добавили HarfBuzz напишу в следующей статье.
Но HarfBuzz не получилось использовать без FriBidi, так как ему необходимо подавать строчки одного скрипта. Т.е. ему нельзя подавать строку где английские и арабские слова в перемешку, их необходимо разбить и подавать отдельно.
Про FreeType вы правильно написали, так и работает.
Sign up to leave a comment.

Articles