5.1 KiB
5.1 KiB
in progress // в процессе разработки |
---|
-------6 |
Типограф для Web
Экранная типографика для веба -- способствует повышению читабельности текста в интернете, приближая его к печатной типографике.
Переносы слов
В основе переносов слов лежит фонетический принцип — деление по слогам. И этот принцип типограф решает.
Однако регение не идеально, т.к. на эту основу накладывается множество других факторов:
- Морфологический принцип -- переносы стараются не разрывать значащие части слова (морфемы: приставки, корни, суффиксы, окончания).
- Устоявшиеся практики (традиция) -- Для многих слов существуют традиционные, общепринятые варианты переноса, которые могут не всегда строго следовать фонетическим или морфологическим правилам. Эти традиции формировались десятилетиями и закреплены в словарях и справочниках по типографике.
- Удобочитаемость и эстетика -- иногда правила переноса корректируются для улучшения внешнего вида текста и легкости чтения. Например, стараются не оставлять или переносить слишком короткие части слова (в типографе-etpgrf, это решается с помощью настроек по умолчанию:
defaults.etpgrf_settings.hyphenation.MAX_UNHYPHENATED_LEN
-- длинна части слова не подлежащего переносам;defaults.etpgrf_settings.hyphenation.MIN_TAIL_LEN
-- длинна части слова которое недопустимо переносить или оставлять на строке ("хвост", "сироты").
- Избегают переносов, создающих неблагозвучные или двусмысленные сочетания букв на стыке строк.
- А еще, любые правила, особенно в языке, имеют исключения и существуют слова, которые переносятся вопреки общим закономерностям.
Etpgrf -- работает только на эвристических правилах, основанных на буквенных паттернах. Этого недостаточно, особенно для английского языка. Возможные пути улучшения (TODO):
- Использование словарей переносов (hyphenation dictionaries): Это наиболее точный подход. Существуют готовые словари (часто в формате, используемом TeX), где для каждого слова указаны возможные точки переноса. Интеграция такого словаря — сложная, но самая надежная задача.
- Алгоритмы на основе паттернов (например, алгоритм Франклина Ляна, используемый в TeX): Эти алгоритмы не хранят все слова, а используют набор паттернов и их "весов" для определения оптимальных точек переноса. Они очень эффективны и дают высокое качество, но их реализация или адаптация — нетривиальная задача.
- Гибридный подход: Комбинация эвристических правил для простых случаев и обращение к словарю или более сложному алгоритму для неоднозначных или длинных слов.
- Расширение набора эвристических правил: Можно продолжать добавлять более специфичные правила (например, для диграфов, триграфов, более сложных приставок и суффиксов), но это путь с убывающей отдачей — правил становится много, они могут конфликтовать, а покрытие всех случаев все равно не гарантировано.
- Учет морфологии: Более глубокий анализ морфемной структуры слова.