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

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

Управление высотой в 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 позволяет задать максимально возможное увеличение высоты при необходимости