Уроки. Смена шрифтов в переводах RenPy.
Из этого урока вы сможете узнать несколько способов смены/замены шрифтов.
Внимание! Речь пойдёт только о переводах в отдельных файлах, а не тех, которые производятся непосредственно в файлах проекта. Всё сказанное ниже — это личный опыт работы с переводами Ren'Py и может содержать какие-то неточности.
Бывает, когда шрифт в переводимом проекте не поддерживает кириллицу, и в таком случае вместо русского текста на экран выводятся квадратики, кракозябры или вообще пустота. Для решения этой проблемы я вижу два основных способа: физическая замена шрифтов в проекте и переключения шрифтов при смене языка.
Физическую замену шрифтов я рассматривать не буду. Тут и так понятно, что надо просто заменить шрифты проекта на свои. Минус этого способа — шрифты изменяются для всех языков.
Переключение шрифтов при смене языка является несколько более сложным в исполнении способом, но он позволяет добавлять шрифты только для определённого языка, не затрагивая оригинальных шрифтов проекта. Шрифты в этом способе меняются при смене пользователем используемого языка в проекте.
Переключение основных шрифтов проекта, прописанных в файле gui.rpy.
Кусок из файла gui.rpy:
gui.text_font — шрифт основного текста в диалоговом окне
gui.name_text_font — шрифт имён персонажей в диалоговом окне gui.interface_text_font — шрифт интерфейса.
Код для смены этих шрифтов при смене языка для вставки в ваши файлы перевода:
В 1-ой строке вместо russian должен быть указан идентификатор вашего языка.
Строки 2-4 должны идти с отступом к 1-ой, обычно это 4 пробела.
Незабываем добавить прописанные шрифты в папку с переводом или в папку game игры.
Всё. Теперь шрифты меняются при смене языка.
Переключение шрифтов, прописанных в стилях проекта.
Для примера есть такой стиль:
Код для смены шрифта этого стиля при смене языка для вставки в ваши файлы перевода:
В 1-ой строке вместо russian должен быть указан идентификатор вашего языка.
В примере изменены все параметры стиля. Но можно не трогать другие, а изменить только шрифт, тогда строк 3-5 не нужно прописывать, все они будет унаследованы от стиля.
Всё. Теперь шрифты стиля меняются при смене языка.
Переключения шрифтов, которые прописаны в Character.
Пример:
who_font — шрифт имени персонажа в диалоговом окне
what_font — шрифт диалогов этого персонажа
Способ 1. Трудоёмкий. Нужно прописывать шрифт во всех диалогах этого персонажа. Как это выглядит:
Всё. Теперь шрифты стиля меняются для этого диалога при смене языка.
Способ 2. Код для смены шрифтов для этого персонажа при смене языка для вставки в ваши файлы перевода:
В 4-ой строке вместо russian должен быть указан идентификатор вашего языка, а также указан идентификатор персонажа. Если не указывать персонажа/ей, то указанные шрифты в 5 и 6 строке будут применяться ко всем персонажам.
Этот способ может ограничено использоваться и для случая а).
Всё. Теперь шрифты стиля меняются для этого диалога при смене языка.
Переключение шрифтов "намертво" прописанных в скринах проектов.
Код скрина проекта, в котором прописан шрифт для текста:
Нужно скопировать скрин от начала до конца и разместить его в файлах своего перевода, после чего внести изменения:
Во 2-ой строке вместо russian должен быть указан идентификатор вашего языка.
Всё. Теперь шрифты в этом скрине меняются для этого места при смене языка.
Это основные способы изменения шрифтов при смене языка, которые я использую.
На этом завершаю и, надеюсь, что вам это было полезно.
Pretender
Однозначно в закладки для начинающих переводчиков.
May 30 2023 11:11 
1
Дмитрий Перевозкин
Нажимаю в ренри "создать переводы". И - их нет. В доступе только часть системных текстов - сохранить-загрузить, а диалогов в файле нет вообще. Шо делать?)
Sep 21 2025 20:34 (changed)
lf2mr
Дмитрий Перевозкин, возможно, игра запакована в rpa-архивы, а RenPy считывает текст для переводов только с rpy-файлов. Если так, то сначала игру надо распаковать.
Sep 22 2025 04:49 

1