我是 LaTeX 的初学者,我想知道如何修复用于框定枚举环境数字的阴影框的尺寸。实际上,我希望下面示例中的所有框都具有相同的尺寸(第一个框的尺寸),并且我们看到当我们有 4 或大于 10 的数字时,尺寸会发生变化,我希望它们与框定 1 的尺寸保持相同。这是我的代码:
\documentclass{article}
\usepackage{fancybox}
\setlength{\shadowsize}{2.5pt}
\newcommand{\shadbox}[1]{\raisebox{-0.3\height}{\protect\shadowbox{\hskip0.3em\itshape\bfseries#1\hskip 0.3em}}}
\begin{document}
\begin{enumerate}[label=\protect\shadbox{\arabic*},leftmargin=1.1em]
\item
\end{enumerate}
\end{document}
答案1
编辑:我已经改变了命令,它不仅使用宽度,还使用可选参数的高度和深度。
我已将您的\shadbox
命令更改为采用可选参数。如果您使用可选参数,则宽度将是可选参数的宽度,如果没有可选参数,它将具有自然宽度:
\documentclass{article}
\usepackage{fancybox}
\usepackage{enumitem}
\setlength{\shadowsize}{2.5pt}
\newsavebox\shadboxA
\newsavebox\shadboxB
\newcommand{\shadbox}[2][]
{%
\raisebox{-0.3\height}
{%
\shadowbox
{%
\hskip0.3em
\itshape\bfseries
\if\relax\detokenize{#1}\relax
#2%
\else
\sbox\shadboxA{#1}%
\sbox\shadboxB{\makebox[\wd\shadboxA][c]{#2}}%
\ht\shadboxB=\ht\shadboxA
\dp\shadboxB=\dp\shadboxA
\usebox\shadboxB
\fi
\hskip 0.3em
}%
}%
}
\begin{document}
\begin{enumerate}[label={\protect\shadbox[0]{\clap{\arabic*}}},leftmargin=1.1em]
\item a
\item a
\item a
\item a
\item a
\item a
\item a
\item a
\item a
\item a
\item a
\item a
\item a
\item a
\end{enumerate}
\end{document}