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



         

Сдвиги относительно базисной линии - часть 2


Кроме вертикального сдвига блоков, команда \raisebox может делать еще одно полезное дело: с ее помощью можно обмануть TeX, заставив его считать, что блок, полученный после сдвига, имеет любую заданную нами высоту и глубину, независимо от того, сколько места реально занимает текст. Именно, эта команда может принимать, наряду с обязательными, необязательные аргументы. Между двумя обязательными аргументами можно указать необязательный аргумент — высоту, которую, по мнению TeX'а, должен иметь сдвинутый блок. Кроме того, после первого необязательного аргумента может стоять второй — глубина, которую, по мнению TeX'а, будет иметь сдвинутый блок. Вот пример:

Строка.\\ Вторая \raisebox{7pt}[1pt][10pt]{Ы}\\ Третья строка.

Строка.\\ Вторая \raisebox{7pt}[1pt][10pt]{Ы}\\ Третья строка.

Буква Ы, поднятая на 7 пунктов над строкой, наложилась на первую строку, поскольку в первом необязательном аргументе команды \raisebox мы приказали TeX'у считать, что блок, образованный поднятой буквой Ы, имеет высоту всего лишь один пункт (стало быть, возвышается над базисной линией второй строки меньше, чем любая буква), и соответственно TeX не сделал дополнительного интервала между первой и второй строками. С другой стороны, третья строка отодвинулась от второй, поскольку во втором необязательном аргументе команды \raisebox мы велели TeX'у считать, что глубина блока, образованного поднятой буквой Ы, равна целым десяти пунктам, и TeX послушно оставил дополнительное место, чтобы этот блок не наложился на третью строку!

Иногда разумно использовать команду \raisebox даже с нулевым обязательным аргументом, только для того, чтобы менять (в глазах TeX'а) высоту и/или глубину блока, не сдвигая его относительно базисной линии. В лекции 9 мы увидим пример такого использования этой команды.




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