Перейти к содержанию
TextArray
100% локально

Выравнивание текста

Перекомпонуйте простой текст в выровненные по блоку строки точной ширины символов.

Входные данные
Выходные данные

Выравнивание текста

Текстовые процессоры выравнивают текст, изменяя расстояние между буквами на крошечные доли — простой текст не может этого сделать, но моноширинное выравнивание может: распределять целые дополнительные пробелы в промежутках между словами до тех пор, пока каждая строка не будет иметь одинаковую ширину. Именно это и делает этот инструмент. Вставьте текст, установите ширину строки в символах, и каждый абзац снова превратится в чистый блок, где каждая строка, кроме последней, будет точно такой же ширины, как и следующая.

Алгоритм является классическим для набора текста: жадный перенос до целевой ширины, затем равномерно заполняет пробелы в словах каждой строки, оставляя крайним левым пробелам остаток. Последняя строка каждого абзаца остается неровной слева с одинарными пробелами, точно так, как это было бы в книге. Пустые строки проходят нетронутыми, поэтому текст, состоящий из нескольких абзацев, сохраняет свою структуру, а существующие разрывы строк внутри абзаца обрабатываются как мягкие — текст повторно перемещается как один поток, что вам и нужно при вставке из электронного письма или PDF-файла.

Ширина измеряется в символах, что обеспечивает идеальное выравнивание результата везде, где используется шрифт фиксированной ширины: комментарии к коду, файлы README, страницы руководства, текстовые сообщения электронной почты, документы ASCII, вывод терминала. Буквы с ударением и смайлы считаются за один столбец каждая. Слово длиннее ширины получает собственную удлиненную линию, а не разрывается.

Все работает локально в вашем браузере — текст никогда не покидает ваше устройство. В сочетании с кнопкой копирования задача «сделать этот абзац аккуратным в файле фиксированной ширины» превращается в пятисекундную работу.

FAQ

Почему последняя строка каждого абзаца не растянута?
Именно так работает выравнивание блоков при печати: растяжение короткой последней строки приведет к огромным пробелам. В последней строке сохраняются одинарные пробелы и выравнивание по левому краю, как и в последней строке любого выровненного абзаца в книге.
Как распределяются дополнительные места?
Равномерно по промежуткам между словами, а остаток идет в крайние левые промежутки. Строка, требующая 5 дополнительных пробелов на 3 пробела, получает 2, 2, 1. Распределение детерминированное — одни и те же входные данные всегда дают одинаковый результат.
Что происходит со словами, длина которых превышает ширину строки?
Они размещаются на отдельной строке и превышают ширину, а не переносятся или обрезаются — URL-адрес или длинный идентификатор остаются нетронутыми и доступны для поиска.
Уважает ли он существующие разрывы строк?
Разрывы строк внутри абзаца считаются мягкими и перераспределяются; пустые строки являются границами абзаца и сохраняются. Чтобы выровнять каждую исходную строку отдельно, сначала добавьте между ними пустую строку.
Мой текст где-нибудь загружен?
Нет. Выравнивание полностью выполняется в вашем браузере, и ваш текст никогда не покидает ваше устройство.