Работа в системе LaTeX

         

Бесконечно сжимаемые интервалы


Мы уже два раза упомянули про клей с бесконечной сжимаемостью. Настало время объяснить, какими командами его создавать. Из многих способов укажем один, наиболее часто встречающийся. Команда \hss вставляет в строку клей, естественный размер которого равен нулю, и который при этом обладает бесконечной растяжимостью (подобно \hfil) и бесконечной сжимаемостью. Типичное применение такого "бесконечно сжимаемого" клея — создавать блоки, ширина которых меньше реального размера текста, или блоки с наложением текстов. В самом деле, посмотрите на такой пример:

\hbox to 50pt {Кот\hss Пес}\\ \hbox{Кот\hss Пес}\\ \hbox to 30pt {Кот\hss Пес}\\ \hbox to 15pt {Кот\hss Пес}\\ \hbox to 0pt {Кот\hss Пес}

\hbox to 50pt {Кот\hss Пес} \hbox{Кот\hss Пес} \hbox to 30pt {Кот\hss Пес} \hbox to 15pt {Кот\hss Пес} \hbox to 0pt {Кот\hss Пес}

Если мы просим сделать ширину блока больше естественной, команда \hss действует так же, как и \hfil; когда мы создаем блок с естественной шириной, слова "Кот" и " Пес" стоят вплотную друг к другу (естественная ширина клея, созданного \hss, равна нулю). Интересные вещи начинаются, когда мы просим, чтобы ширина была

30\,\rm pt
(что меньше естественной). Интервал между словами при этом приходится уменьшить; поскольку его естественный размер равен нулю, то после уменьшения интервал становится отрицательным, т. е. слово " пес" сдвигается влево (накладываясь на слово "Кот"), причем сдвигается так, чтобы ширина блока (т. е. расстояние от начала слова "Кот" до конца слова "Пес") равнялась требуемым
30\,\rm pt
. Когда же мы наконец просим, чтобы ширина блока равнялась нулю, слову "Пес" приходится сдвинуться влево настолько, чтобы расстояние от его конца до начала слова "Кот" равнялось нулю - иными словами, кот и пес меняются местами! Заметим, кстати, что точка отсчета всех наших блоков совпадает с точкой отсчета буквы К из слова "Кот".

Еще один пример использования \hss: как создать блок, точка отсчета которого будет находиться в правом, а не левом конце текста (мы столкнулись с этой проблемой в лекции 5)? Ответ: надо сказать




Содержание  Назад  Вперед