Неправильное поведение пересечения математического шрифта открытого типа в ms word

Я создаю математический шрифт открытого типа (FiraMath) для LaTeX и MS Word с помощью FontForge. При создании глифа \oint я использую ссылку в виде следующего изображения:

image

При использовании сгенерированных otf-шрифтов в LaTeX (на самом деле это XeLaTeX) все идет как надо (читатель PDF — это SumatraPDF):

image

Но при использовании MS Word 2016 поведение пересечения странное:

image

Может ли кто-нибудь объяснить, что произошло, и показать, как решить проблему?

Ссылка на выпуск GitHub: https://github.com/Stone-Zeng/FiraMath/issues/ 6


person stone-zeng    schedule 24.06.2018    source источник
comment
Похоже, слово интерпретирует ваше направление контура как принудительное вырезание. Возможно, вы захотите поменять направление внешнего и внутреннего кругов (youtube.com/watch?v= zmM98PFovDs) или правильно объединить фигуры. Я просмотрел ваш репозиторий на github, кажется, нигде нет файла, который проектирует fontforge?   -  person Mike 'Pomax' Kamermans    schedule 25.06.2018
comment
Я объединил контуры. Исходные файлы fontforge находятся в src/fira-math-xxx.sfdir   -  person stone-zeng    schedule 25.06.2018
comment
похоже, вы закрыли вопрос, так что я думаю, это означает, что вы также можете удалить вопрос здесь. Или напишите ответ, если считаете, что это принесет пользу будущим посетителям.   -  person Mike 'Pomax' Kamermans    schedule 25.06.2018


Ответы (1)


Как указывает @be5invis в https://github.com/Stone-Zeng/FiraMath/issues/6,

Только TTF и CFF2 поддерживают ненулевое заполнение, что позволяет перекрывать контуры.

Поэтому мое решение — просто объединить перекрывающиеся контуры.

person stone-zeng    schedule 25.06.2018