\colorboxの寸法を制御する方法

\colorboxの寸法を制御する方法

長くて細い横長の色の付いた長方形、つまり太い線のようなものが欲しいのですが、高さを一定以下にすることができません。私が思いつく最善の方法は次のとおりです。

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

数によって-長さが決まりますが、せいぜい半分高さ:

ここに画像の説明を入力してください

ボックスの高さに関する質問に対して提案されたさまざまな解決策を試しましたが、それを実現するものは見つかりませんでした。何か見落としているのでしょうか?

答え1

問題は、-周囲に空白のあるボックスが配置されていることです。これは次のように書くとわかります。

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

生成する

サンプルダッシュ

は、ダッシュを含むボックスがベースライン上にあり、大文字の高さまで上がることを示します。(実際には---異なるグリフが生成されますが、同じ考慮事項が適用されます。)より細かく制御するには、を使用します\rule。構文は次のとおりです。

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

3cm幅、高さのルールを生成し、1.5exすべて2ptベースラインより上に上げます。あなたの場合は に合わせるだけでx十分\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}

関連情報