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

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

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

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

Первая строка из рендеринга Inkscape, а вторая строка из pango-cairo.

Есть ли известная ошибка в pango/cairo?... или я делаю что-то не так

Вы знаете какие-нибудь обходные пути...

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


person ZDimitris    schedule 17.08.2015    source источник


Ответы (1)


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

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

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

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

person ZDimitris    schedule 21.09.2015