Команды для управления высотой боксов

Управляет параметрами высоты боксов

Управление высотой в tcolorbox

Основные параметры высоты

Параметр Синтаксис Описание Пример
natural height /tcb/natural height Естественная высота по содержимому natural height
height /tcb/height=⟨length⟩ Фиксированная высота бокса height=3cm
height plus /tcb/height plus=⟨length⟩ Максимальное увеличение высоты height plus=1cm
height from /tcb/height from=⟨min⟩ to ⟨max⟩ Диапазон высот height from=2cm to 5cm
text height /tcb/text height=⟨length⟩ Высота текстовой области text height=4cm
add to height /tcb/add to height=⟨length⟩ Добавление к текущей высоте add to height=0.5cm
add to natural height /tcb/add to natural height=⟨length⟩ Добавление к естественной высоте add to natural height=1cm
height fill /tcb/height fill=true|false|maximum Заполнение оставшегося пространства height fill=true
inherit height /tcb/inherit height=⟨fraction⟩ Наследование высоты от родителя inherit height=0.8
square /tcb/square Квадратный бокс (высота=ширине) square

Распределение пространства

Параметр Синтаксис Описание Пример
space /tcb/space=⟨fraction⟩ Распределение пространства (0-1) space=0.3
space to upper /tcb/space to upper Все пространство в верхнюю часть space to upper
space to lower /tcb/space to lower Все пространство в нижнюю часть space to lower
space to both /tcb/space to both Равное распределение space to both
space to /tcb/space to=⟨macro⟩ Сохранение пространства в макрос space to=\myspace
split /tcb/split=⟨fraction⟩ Позиция разделителя (0-1) split=0.7

Группы высот

Параметр Синтаксис Описание Пример
equal height group /tcb/equal height group=⟨id⟩ Группа с одинаковой высотой equal height group=A
minimum for equal height group /tcb/minimum for equal height group=⟨id⟩:⟨length⟩ Минимальная высота группы minimum for equal height group=A:3cm
minimum for current equal height group /tcb/minimum for current equal height group=⟨length⟩ Минимальная высота текущей группы minimum for current equal height group=2cm
use height from group /tcb/use height from group=⟨id⟩ Использование высоты группы use height from group=A
\tcbheightfromgroup \tcbheightfromgroup{⟨macro⟩}{⟨id⟩} Получение высоты группы \tcbheightfromgroup{\myheight}{A}

Примеры использования

1. Фиксированная высота

\begin{tcolorbox}[height=4cm, valign=center]
  Бокс с фиксированной высотой 4cm
\end{tcolorbox}

2. Автоматическое выравнивание высоты

\begin{tcolorbox}[equal height group=A]
  Первый бокс
\end{tcolorbox}
\begin{tcolorbox}[equal height group=A]
  Второй бокс с большим количеством текста, который делает высоту больше
\end{tcolorbox}

3. Заполнение пространства

\begin{tcolorbox}[height fill]
  Бокс заполнит все доступное вертикальное пространство
\end{tcolorbox}

4. Квадратный бокс

\begin{tcolorbox}[width=3cm, square]
  Квадратный бокс 3x3cm
\end{tcolorbox}

5. Наследование высоты

\begin{tcolorbox}[height=5cm]
  \begin{tcolorbox}[inherit height=0.5]
    Бокс с половиной высоты родителя
  \end{tcolorbox}
\end{tcolorbox}

Особенности работы с высотой:

  1. Для работы некоторых параметров (height fill) требуется библиотека breakable
  2. Параметры групп высот требуют двойной компиляции
  3. natural height - это высота по умолчанию, рассчитываемая автоматически
  4. При использовании equal height group все боксы в группе получают высоту самого высокого бокса
  5. height plus позволяет задать максимально возможное увеличение высоты при необходимости