Embed шрифты

Всем привет!

Пытаюсь добиться идентичности в отображении графики, загружаемой из swf на flash и windows, используя библиотеку SWF. И собственно столкнулся с неправильным отображением встраиваемых шрифтов в TextField-ах на этих платформах. Поэтому быстренько написал небольшую тестовую программку (исходники).

В ней выводятся два текстовых поля: одно с шрифтом из ресурсов, другое - со встроенным шрифтом - в остальных параметрах они идентичны. Если скомпилировать под flash, то можно увидеть следующую картину:

Слева обычный шрифт, справа - встроенный. Возникает первый вопрос: почему такая разница? При этом при загрузке и отображении swf-файлов применяется именно второй вариант отображения.

Если же скомпилировать под windows, то оба поля будут идентичны:

Отсюда второй вопрос: как можно добиться в windows такого же выравнивания встроенных шрифтов как на flash?

Может кто сталкивался с таким? Возможно есть документация о том, как flash (или haxe) встраивает шрифты?

Сглаживание шрифтов

Скорее всего дело в сглаживании шрифтов. В винде оно по-умолчанию включено.

re

Спасибо, да, сглаживание шрифтов тут играет роль, но разница по идее должна быть незначительной (+-2 пикселя).

В общем то я нашёл в чём причина - дело в неправильном определении параметров встраиваемых шрифтов - Ascent, Descent и Height. После изучения swfmill, насколько я понял, встраиваемый шрифт определяется уже как набор сплайнов, т.е. SFNT. Соответственно, эти его параметры должны браться из соответствующих таблиц, которые можно получить с помощью freetype. Так что отображение (во всяком случае расстояние между строками в тексте и отступы от верхней границы TextField) стало практически совпадать с flash. Если вдруг кто-то столкнётся с тем же, то тут закоммитил свои поправки.

Спасибо!

Отлично. Может оказаться полезным. Pull-request этих поправок в NME планируется?

Я что-то ни разу

Я что-то ни разу pull-реквесты не делал и даже не знаю как это сделать. Могу попробовать. Джошуа там кажется уже возвращался к теме встраиваемых шрифтов в недавних коммитах, может у него лучше решение будет и из более надёжных источников.

Не добавились ссылки на изображения

Вот ссылка на flash версию: http://www.freeimagehosting.net/dxg7r
Вот на windows версию: http://www.freeimagehosting.net/gbm17

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".

Отправить комментарий

Содержание этого поля является приватным и не предназначено к показу.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <blockcode> <dd>
  • Строки и параграфы переносятся автоматически.
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • You can enable syntax highlighting of source code with the following tags: <code>, <blockcode>. The supported tag styles are: <foo>, [foo].
  • Use [gist:####] where #### is your gist number to embed the gist.

Подробнее о форматировании

CAPTCHA
Для отсева спамеров)
9
L
M
P
t
i
Enter the code without spaces and pay attention to upper/lower case.