Команды для встраивания объектов и боксов в боксы (embedding)

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

Управление встраиванием (Embedding) в tcolorbox

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

Параметр Синтаксис Описание Пример
before /tcb/before=⟨code⟩ Код, выполняемый перед боксом before={\par\medskip}
after /tcb/after=⟨code⟩ Код, выполняемый после бокса after={\par\medskip}
nobeforeafter /tcb/nobeforeafter Отключает пробелы до/после бокса nobeforeafter
force nobeforeafter /tcb/force nobeforeafter Принудительно отключает пробелы force nobeforeafter

Вертикальные отступы

Параметр Синтаксис Описание Пример
before skip balanced /tcb/before skip balanced=⟨glue⟩ Вертикальный отступ с учетом базовой линии before skip balanced=1cm
after skip balanced /tcb/after skip balanced=⟨glue⟩ Вертикальный отступ после с базовой линией after skip balanced=1cm
beforeafter skip balanced /tcb/beforeafter skip balanced=⟨glue⟩ Отступы до/после с базовой линией beforeafter skip balanced=0.5cm
before skip /tcb/before skip=⟨glue⟩ Простой вертикальный отступ перед before skip=10pt
after skip /tcb/after skip=⟨glue⟩ Простой вертикальный отступ после after skip=10pt
beforeafter skip /tcb/beforeafter skip=⟨glue⟩ Простые отступы до/после beforeafter skip=10pt

Горизонтальные отступы

Параметр Синтаксис Описание Пример
left skip /tcb/left skip=⟨length⟩ Горизонтальный отступ слева left skip=1cm
right skip /tcb/right skip=⟨length⟩ Горизонтальный отступ справа right skip=1cm
leftright skip /tcb/leftright skip=⟨length⟩ Отступы слева и справа leftright skip=1cm

Выравнивание и позиционирование

Параметр Синтаксис Описание Пример
baseline /tcb/baseline=⟨length⟩ Установка базовой линии baseline=3mm
box align /tcb/box align=⟨alignment⟩ Выравнивание бокса (bottom, top, center, base) box align=top

Особые параметры

Параметр Синтаксис Описание Пример
ignore nobreak `/tcb/ignore nobreak=true false` Игнорировать запрет разрыва после заголовка
before nobreak /tcb/before nobreak=⟨code⟩ Код перед боксом при запрете разрыва before nobreak={\noindent}
parfillskip restore `/tcb/parfillskip restore=true false` Восстанавливать значение \parfillskip

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

1. Базовые вертикальные отступы

\begin{tcolorbox}[
  before skip balanced=1cm,
  after skip balanced=0.5cm,
  colframe=blue
]
Бокс с кастомными отступами
\end{tcolorbox}

2. Горизонтальное позиционирование

\begin{tcolorbox}[
  left skip=2cm,
  right skip=1cm,
  colframe=red
]
Бокс со смещением по горизонтали
\end{tcolorbox}

3. Выравнивание по базовой линии

Текст \begin{tcolorbox}[nobeforeafter, box align=base, colframe=green]
Выровнено по базовой линии
\end{tcolorbox} продолжение текста

4. Интеграция в поток текста

\begin{tcolorbox}[
  nobeforeafter,
  box align=base,
  colback=yellow,
  colframe=orange
]
Встроенный в текст бокс
\end{tcolorbox} продолжение текста.

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

  1. Параметры *balanced учитывают базовую линию текста для более точного выравнивания
  2. nobeforeafter полностью убирает бокс из отдельного абзаца
  3. Для точного контроля вертикального положения используйте комбинацию baseline и box align
  4. Параметры с skip изменяют bounding box, что может влиять на общий макет

Советы:

  1. Для встраивания в текст используйте nobeforeafter + box align=base
  2. Для сложных макетов предпочтительнее *balanced версии отступов
  3. При работе с разрываемыми боксами учитывайте поведение ignore nobreak
  4. Для восстановления стандартного поведения \parfillskip используйте parfillskip restore