Очень часто в играх можно встретить рисованные шрифты
Для чего они используются:
Красивее, чем системные
Требуют меньше памяти
Одинаково смотрятся на всех устройствах
Рисованный шрифт — это картинка с нарисованными в ней буквами и символами
Рисованный шрифт, конечно, хорошо, но доставляет множество проблем переводчику, а именно:
Необходимо нарисовать свои собственные шрифты
Необходимо изменять «индексный файл»
Итак, как же переводить игры с рисованным шрифтом:
Простой метод: 1. На место каждой буквы в оригинальном шрифте подставить свою (заменить оригинальные шрифты своими) 2. И переводить игру
Пример шрифта:
Профессиональный метод: 1. Нарисовать свои шрифты 2. Добавить их к оригинальным 3. Обновить индексный файл 4. Переводить игру
Пример шрифта:
Теперь немного подробнее
На вход игры подается картинка со шрифтами, индексный файл, файл с текстом. Файл с текстом считывается игрой, и при выводе на экран символ заменяется на соответствующий кусочек картинки шрифтов, расположение которого берется из индексного файла. Непонятно? Рассмотрим еще подробнее.
Допустим, есть картинка со шрифтами:
А также индексный файл, в котором указываются ширина и высота каждой буквы и смещение с начала изображения, с которого выполняется обрезание картинки:
А/17/17/0 Б/17/17/17 В/17/17/34
Здесь последняя цифра — это смещение от начала изображения (начало — левый верхний угол), с которого будет «вырезана» буква длиной 17 (вторая цифра). Вырезается прямоугольник, ширина и высота которого вторая и треться цифры в индексном файле:
Далее, если необходимо отобразить на экране строку текста, текст посимвольно заменяется на вырезанные картинки:
Строка: АБВВАВББА
После замены:
Вот таким образом работают рисованные шрифты. Пример был приведен с самым простым шрифтом и индексным файлом (точно такой используется в играх jarbull)
Теперь вернемся к методам перевода. Простой метод — заменить каждый оригинальный символ на свой, главное, чтобы размер своих букв умещался в ограничивающем прямоугольнике (на картинках выше показан красным), то есть был меньше или равен оригинальным буквам. Вот здесь и начинаются сложности, если шрифт меняется, например, с английского на русский:
1. Попробуйте что-нибудь вместить на место англ. буквы «i» ) 2. В английском языке 26 букв, в русском — 33! Где взять еще 7 или больше, если на место буквы «i» ничего не уместить?
Часто в шрифтах встречаются еще и другие символы, на место которых можно поместить русские буквы. Что касается изменения файла с текстом, придется писать именно теми буквами, на место которых были установлены русские.
Если соответствия букв, например, такие:
И = N Г = G Р = R А = A
Придется текст заменять не на «ИГРА», а: «NGRA»
Для автозамены букв можно использовать программу, которая заменяет ваши обычные русские строки на нужный вид
Плюсы метода:
Быстро и просто
Минусы:
Текст пишется только латиницей (оригинальными буквами)
В игре нельзя использовать другие шрифты, например, в «об игре» название или производителя придется писать на русском
Теперь профессиональный метод, он дается далеко не всем. Основная сложность — понять, как считывается индексный файл, где хранятся длины и смещения, исправить этот файл с учетом добавленного шрифта. (Более подробно о таком переводе в другой теме)
Плюсы метода:
Профессиональный перевод, можно использовать любые шрифты