Фурка и шрифты: хочу мнений

Давайте обсуждать.

Недавно я с помощью товарищей, понимающих во всяких линуксах, разобрался, что же не даёт фурке работать на этой чудо-платформе. Это оказались проприетарные TrueType шрифты, которые фурка берёт прямо из стандартной папки Fonts из установки Windows.

В результате было принято стратегическое решение отвязать фурку от виндовых шрифтов. Я нашёл два подходящих (с засечками и без) бесплатных шрифта и встроил их в фурку. Заодно сделал два алиаса — «serif» и «sans», на которые можно ссылаться из кода и использовать в разных размерах.

Например

textfont = "serif[36]"


сделает шрифт 36-го размера стандартного начертания с засечками. Удобно? Удобно.

Заодно я отпилил поиск TTF-файлов в папке Fonts винды. Ибо нефиг. На линуксах их нет, поэтому пусть автор кладёт TTF в папку с квестом, если хочет использовать шрифт в игре.

Однако, возникла проблема, которую я и хочу с вами обсудить.

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

Моя идея была в том, что если автор использует, скажем, «georgia.ttf» и этого файла нет в папке с игрой, то мапировать такие ссылки в «serif». А какой-нибудь, «arial.ttf» — в «sans». Но тут возникает проблема. Потому что авторы использовали и другие начертания стандартных виндовых шрифтов. Например, «georgiab.ttf» — полужирное.

Я могу поступить двумя способами.

Вариант 1. Мапировать все начертания в стандартное. Тогда полужирное начертание перестанет быть таковым, но размер и тип шрифта, по крайней мере, сохранится.

Вариант 2. Добавить в фурку всякие начертания. Например, сделать стандартные «sefif-bold», «serif-italic», «serif-bold-italic» и встроить соответствующие файлы шрифтов. При таком подходе есть плюс — авторы получают «искаропки» множество начертаний и могут их использовать в квестах, не заморачиваясь с поиском подходящих TTF-файлов. Но есть и два минуса. Во-первых, фурка распухнет, потому что придётся все файлы пихать в неё. А во-вторых, фурка распухнет ещё больше. Потому что глупо делать все начертания для «serif» и не сделать то же самое для «sans». По оценкам, после такой переделки фурка будет весить около 5 мегабайт. Не бог весть что в современных реалиях, да. Но для кого-то это может быть важным.

Так вот. Прошу совета. Как лучше поступить? Стоит ли этим заморачиваться? И вообще.

12 комментариев

major-kolz
есть некоторое количество игр, ссылающихся на стандартные шрифты Windows
Если таких шрифтов около десятка, то можно (чтобы не перепаковывать все игры) сделать дополнительную папку со шрифтами. Изначально она пуста (программа не раздувается), наполняется пользователем при встрече со старыми играми. То есть, если шрифт не найден в папке с игрой — ищем в специальной папке. Если нет и там — выводим предупреждение о недостающем шрифте и ссылку на страницу на форуме с разъяснениями. Оттуда его можно скачать и в заветную папку распаковать. Кому не охота возится — качается их все гурьбой и о совместимости не задумывается.

Но тогда встаёт вопрос о правах — вряд ли можно распространять ту же Geogria
fireton
Ну о том и речь. Если б можно было взять Georgia, я б и не парился. Речь же о доступности на Линуксе, плюс об изменении подхода к доступности шрифтов в целом…
major-kolz
Тогда вопрос нужно ставить так: «как часто использовалось нестандартное начертание?». Если в каждой второй игре — то, однозначно, вариант 2. В противном случае можно все приводить к стандартному, а старые игры, в которых начертание отыгрывает важную роль — перепаковать с бесплатными шрифтами.

На мой взгляд необходимость фичи с начертаниями не очень велика чтобы её встраивать. В смысле если её еще нет — то она и не очень нужна (сам курсивом или полужирным почти не пользуюсь; а вот INSTEAD выводит реакции курсивом — и это красиво)
Irremann
Целиком и полностью поддерживаю отход от проприетарщины =). Я конечно за всю фурку не знаю, но мне кажется что игр, где автор сильно заморачивался шрифтами не так уж и много.
Надо вайн поставить и потестировать кстати.
spline
fireton , а новую версию с свободными шрифтами уже можно получить где-нить или пока нет даже тестовой сборки в общем доступе?
fireton
Вообще-то нет. Но я прям задумался о ночных сборках. ;)

Могу собрать билд на попробовать.
fireton
Собрал тестовый билд. Пробуй.
Брать здесь: ftp://home.zhuchkovs.com/fireurq/
epoxa
Мне больше нравится 2-й вариант
Peter
Не знал что ответить, но все таки подумав, скажу. Кажется правильней таки запаковать фурку с минимальным, но полным набором шрифтов.

В инстеде, правда, только sans (normal/bold/italic/bolditalic). Но там было всегда так, и если нужно было что-то большее — игра тащила с собой.

В фурке, вероятно, надо и санс и сериф — если игры это широко использовали.
fireton
Ну вот я тоже склоняюсь к этому варианту…