Метод pango_cairo_layout_path не учитывает кернинг

Я использую библиотеку pango для создания некоторого текстового макета и cairo backend для рендеринга. Мне кажется, что метод pango_cairo_layout_path не учитывает кернинг.

Я использую привязки C# для pango и cairo, которые предоставляются с проектом gtk#. Также я использую среды выполнения pango-cairo, которые также включены в проект gtk#.

Вот изображение, демонстрирующее проблему (Шрифт: Arial)

Первый ряд от рендеринга Inkscape, а второй от Панго-Каира

Есть ли известная ошибка в Панго / Каире?... или я делаю что-то не так

Вы знаете какую-нибудь работу вокруг...

заранее спасибо

1 ответ

Решение

Кажется, что pango-cairo бэкэнд в Windows по умолчанию использует Win32 тип шрифта. С этим типом у меня были проблемы с кернингом.

Когда я изменил тип шрифта на freetype, все работало как надо.

Чтобы изменить тип шрифта, используйте:

PangoCairoFontMap * pango_cairo_font_map_new_for_font_type(cairo_font_type_t fonttype);

А также

pango_cairo_font_map_set_default (PangoCairoFontMap *fontmap);

Более подробная информация здесь: https://developer.gnome.org/pango/stable/pango-Cairo-Rendering.html

Другие вопросы по тегам