LINUX.ORG.RU

История изменений

Исправление Evgueni, (текущая версия) :

Этого мало. Там следует учитывать кернинг (то есть ширину пары символов) и пробелы не имеют фиксированного размера. В принципе всегда можно узнать ширину конкретной конструкции, но вариантов всё-таки очень много для полной автоматизации. Хотя если упереться, то проблему скорее всего можно решить, но придётся отслеживать все те символы и конструкции, которые люди гарантированно захотят напихать сверх разумного. Естественно всё это будет работать при условии, что шрифты и алгоритмы скажем растеризации не будут меняться.

Иными словами сделать хорошо можно, но сделать идеально вряд ли получится. Так что всегда будет нужен глаз со стороны который будет отлавливать (ну или закрывать глаза на) 1-5% косяков и исправлять их вручную.

Исправление Evgueni, :

Этого мало. Там следует учитывать кернинг (то есть ширину пары символов) и пробелы не имеют фиксированного размера. В принципе всегда можно узнать ширину конкретной конструкции, но вариантов всё-таки очень много для полной автоматизации. Хотя если упереться, то проблему скорее всего можно решить, но придётся отслеживать все те символы и конструкции, которые люди гарантированно захотят напихать сверх разумного. Естественно всё это будет работать при условии, что шрифты и алгоритмы скажем растеризации не будут меняться

Исходная версия Evgueni, :

Этого мало. Там следует учитывать кернинг (то есть ширину пары символов) и пробелы не имеют фиксированного размера. В принципе всегда можно узнать ширину конкретной конструкции, но вариантов всё-таки очень много для полной автоматизации. Хотя если упереться, то проблему скорее всего можно решить, но придётся отслеживать все те символы и конструкции, которые люди гарантированно захотят напихать сверх разумного.