После создания генератора указателей дорог, захотелось сделать что-то с символами. И тут мне на глаза попался пост Серёжи Рассказова про новый шрифт Finlandika, специально созданный для навигации Финляндии. Мне так понравился этот шрифт, что решил сделать генератор финских туристических указателей. А главное — добавить себе, наконец, функционал для работы с пачкой векторных форм.
В итоге, собрал генератор.
И прикрутил импорт данных из гугл-таблицы. Этот механизм, как и генерация формы ввода данных в форму, встроен в JP-движок. Достаточно в настройках указать соответствие столбцов данным (если имена столбцов отличаются от кодов данных) и указать обязательные столбцы.
Время на создание самого генератора ушло мало — всего 4—5 часов для обоих шаблонов (со стрелкой внизу и без). А вот с формами надо было повозиться.
Движок JP хранит векторные формы в специальном формате, чтобы можно было любые части формы раскрасить в любые CMYK- или RGB-цвета: в шаблоне указывается 1 цвет или массив цветов. И я «руками» указывал цвета элементам форм: стрелка — белая, фон — синий, форма — зелёная. И так далее. Цвета хранятся в шаблоне знака. До этого у меня были макеты с малым количеством векторных форм (символов), и поэтому такой подход был достаточным — генерил их маленьким скриптом по одной штуке.
А в финских знаках — целая пачка символов! Поэтому я написал скрипт для Иллюстратора, который все указанные артборды конвертирует в набор готовых методов, достаточно передать ему массив цветов. Названия методов — это названия артбордов. Метод рисования в JP-движке — это имя символа (по умолчанию). Всё работает моментально.
И труд был не зря потраченным временем — как раз вскоре появилась задача на конвертацию 90 форм. Открываешь файл с иконками, запускаешь скрипт и через пару секунд получаешь 90 методов рисования иконок.
Особенно это важно при поддержке проекта: представляете — у заказчика поменялось 47 из 90 символов! А если цвета внутри поменялись? Всё переделывать!
А скрипт умеет находить одинаковые и разные цвета элементов символов, чтобы «на входе» был массив из 2–3 нужных цветов для всех форм.
PS: надо будет сделать импорт SVG-файлов ;-))