Как контролировать размеры \colorbox

Как контролировать размеры \colorbox

Мне нужен длинный узкий горизонтальный цветной прямоугольник, что-то вроде толстой линии, но я не могу сделать высоту ниже определенного значения. Лучшее, что я могу придумать, это:

\documentclass[11pt]{book}
\usepackage{color}
\begin{document}
xxxxx\colorbox{red}{%
\phantom{------------------}
}%
xxxxx 
\end{document}

где число -управляет длиной, но я хотел бымаксимум половинавысота:

введите описание изображения здесь

Я пробовал различные решения, предложенные для вопросов о высоте коробок, но не смог найти ничего, что бы это сделало. Я что-то упустил?

решение1

Проблема в том, что -is находится в поле с белым пространством вокруг него. Вы можете увидеть это, написав

\setlength{\fboxsep}{0pt}
\fbox{-}

который производит

Образец тире

указывая, что поле, содержащее тире, находится на базовой линии и поднимается до высоты заглавной буквы. (На самом деле, ---это создает другой глиф, но применяются те же соображения.) Для лучшего контроля используйте \rule. Синтаксис:

\rule[2pt]{3cm}{1.5ex}

для создания правила ширины 3cm, высоты, 1.5exвсе поднято 2ptнад базовой линией. В вашем случае, чтобы соответствовать x's \rule{2cm}{1ex}должно быть достаточно, так как 1exэто номинальная высота xв шрифте, но есть некоторые оптические эффекты от засечек, поэтому я предлагаю

\rule[-0.05ex]{2cm}{1.1ex}

Поскольку это реальная форма, которую вы хотите видеть, вы можете заключить ее в простую форму, \textcolorвместо того чтобы создавать фантом.

Пример вывода

\documentclass[11pt]{book}

\usepackage{color}

\begin{document}

xxxxx\textcolor{red}{\rule[-0.05ex]{2cm}{1.1ex}}xxxxx

\end{document}

Связанный контент