Как сделать так, чтобы текстовый документ выглядел одинаково для Mac и Windows, несмотря на разницу в размере шрифта 72/96 DPI - PullRequest
0 голосов
/ 08 января 2019

У нас есть приложение для редактирования документов, включающее текстовые элементы; приложение работает как на Windows, так и на MacOS.

Однако в настоящее время мы сохраняем размеры шрифта в точках , что приводит к тому, что макет будет выглядеть по-разному, когда документ, созданный на одной платформе, открыт на другой.

Например, при создании на Mac и открытии в Windows текст становится намного больше, поэтому перенос слов происходит в разных местах абзаца.

Наивное применение коэффициента преобразования размера шрифта из-за различий ядра 72/96 DPI платформы не сокращает его (даже игнорируя масштабирование экрана и придерживаясь 100% на данный момент!)

Как ни странно, мелкие шрифты (12pt и ниже iirc) в Windows выглядят гораздо меньше в таком масштабе, что, вероятно, указывает на то, что линейный масштаб в любом случае не подходит.

Так как же размеры шрифта должны храниться в документе, чтобы вы могли последовательно отображать текст в Mac / Windows?

Обычно шрифт запрашивается в точках, а не в пикселях (разумеется, мы не в браузере), поэтому даже если мы храним высоту шрифта в пикселях, нам потребуется некоторая волшебная формула для преобразования этого значения обратно в значение точки. Также есть несколько метрик высоты шрифта ..

Тщательно запутался!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...