Деванагари
Aug. 26th, 2006 06:38 pmСделал серию задачек на деванагари.
После корейского ожидал халяву - деванагари действительно очень простая письменность:
- пишем слева направо;
- есть знаки для слогов "согласная + А";
- есть знаки, меняющие гласную предыдущего знака (Unicode называет их "dependent vowels" - "зависимые гласные");
- есть особая "гласная" означающая "отмену предыдущей гласной".
- есть "независимые гласные" (пока что видел применения только для начала слова);
Вроде как всё. Первые две задачки на этом прокатили. Третья - нет...
Требуется написать слог "сви". Кодируется эта последовательность довольно очевидно: "са" + "отмена гласной" + "ва" + "замена гласной на и". А вот отрисовываться это должно так:
1) нарисовать знак "са";
2) "отмена гласной" пририсовывается обычно как аксантик под знаком;
3) но поскольку это ещё не конец слова, вместо 2) нужно склеить два "согласных" знака (лигатура), точнее склеить левую половинку первого знака с целым вторым;
4) приписать зависимую "И", которая является исключением и рисуется не сверху-снизу (что я уже видел в предыдущих задачах) и не справа (что выглядело бы просто как следующая буква), а слева от лигатуры.
Тут я серьёзно задумался о судьбе бедных программистов, реализовывавших это в шрифтах.
Проверил - шрифт Chrysanthi, справившийся с простыми задачками, забуксовал. Т.е. он просто тупо отрисовывал комбинацию "са" + "отмена гласной", затем "ва", затем (справа!) зависимую "и".
Arial Unicode MS рисует отлично (в очередной раз "Ура Майкрософту!"), но не поставляется бесплатно.
Перебрад ещё - только 4-й шрифт (Chandas) корректно отрисовывал этот слог.
Но при этом он рисовал некоторые знаки (NNA и независимую A) не так, как у меня в книжке. Смотрю на том же сайте лежит ещё один шрифт деванагари. Chandas - южный стиль, Uttara - северный. Проверил - действительно моя книга набрана северным стилем (Arial при этом, очевидно, реализует только одно написание, как выяснилось - южное).
Первая мысль - какой ужас! Никогда не встречал подобного. Два "принципиально" разных написания одного алфавита.
Потом вспомнил про "готический шрифт", который (в сегодняшнем понимании) есть не что иное, как альтернативная отрисовка стандартых латинских букв. И далеко не всегда тривиально опознаваемо.
Затем задумался о copy-paste. Выяснил, что лигатуры типа описанного выше "сви" копируются только целиком.
Тоже первая мысль "ужас", затем вспоминаю про букву "Ё", в которой нельзя скопировать только букву "Е". Или там "Ы". Мы просто привыкли.
Результат мне скорее нравится, единственное отличие в написании от "книжного" - склейка VA и JA в лигатурах (всё тот же "сви"). И южный, и северный варианты выглядят немного не так. Какие там ещё стороны света остались? Ладно, и так почти сутки на это убил...
После корейского ожидал халяву - деванагари действительно очень простая письменность:
- пишем слева направо;
- есть знаки для слогов "согласная + А";
- есть знаки, меняющие гласную предыдущего знака (Unicode называет их "dependent vowels" - "зависимые гласные");
- есть особая "гласная" означающая "отмену предыдущей гласной".
- есть "независимые гласные" (пока что видел применения только для начала слова);
Вроде как всё. Первые две задачки на этом прокатили. Третья - нет...
Требуется написать слог "сви". Кодируется эта последовательность довольно очевидно: "са" + "отмена гласной" + "ва" + "замена гласной на и". А вот отрисовываться это должно так:
1) нарисовать знак "са";
2) "отмена гласной" пририсовывается обычно как аксантик под знаком;
3) но поскольку это ещё не конец слова, вместо 2) нужно склеить два "согласных" знака (лигатура), точнее склеить левую половинку первого знака с целым вторым;
4) приписать зависимую "И", которая является исключением и рисуется не сверху-снизу (что я уже видел в предыдущих задачах) и не справа (что выглядело бы просто как следующая буква), а слева от лигатуры.
Тут я серьёзно задумался о судьбе бедных программистов, реализовывавших это в шрифтах.
Проверил - шрифт Chrysanthi, справившийся с простыми задачками, забуксовал. Т.е. он просто тупо отрисовывал комбинацию "са" + "отмена гласной", затем "ва", затем (справа!) зависимую "и".
Arial Unicode MS рисует отлично (в очередной раз "Ура Майкрософту!"), но не поставляется бесплатно.
Перебрад ещё - только 4-й шрифт (Chandas) корректно отрисовывал этот слог.
Но при этом он рисовал некоторые знаки (NNA и независимую A) не так, как у меня в книжке. Смотрю на том же сайте лежит ещё один шрифт деванагари. Chandas - южный стиль, Uttara - северный. Проверил - действительно моя книга набрана северным стилем (Arial при этом, очевидно, реализует только одно написание, как выяснилось - южное).
Первая мысль - какой ужас! Никогда не встречал подобного. Два "принципиально" разных написания одного алфавита.
Потом вспомнил про "готический шрифт", который (в сегодняшнем понимании) есть не что иное, как альтернативная отрисовка стандартых латинских букв. И далеко не всегда тривиально опознаваемо.
Затем задумался о copy-paste. Выяснил, что лигатуры типа описанного выше "сви" копируются только целиком.
Тоже первая мысль "ужас", затем вспоминаю про букву "Ё", в которой нельзя скопировать только букву "Е". Или там "Ы". Мы просто привыкли.
Результат мне скорее нравится, единственное отличие в написании от "книжного" - склейка VA и JA в лигатурах (всё тот же "сви"). И южный, и северный варианты выглядят немного не так. Какие там ещё стороны света остались? Ладно, и так почти сутки на это убил...