其实这个问题并不新鲜。早在 2007 年就有人提出过这个问题德克萨斯, 和已回答同时。
但是,我无法应用答案中提到的补丁,因此我决定在这里提问。考虑以下代码:
\documentclass{article}
\usepackage{amsmath,amssymb}
\begin{document}
\fbox{\begin{minipage}{6cm}
\begin{align*}
&H(x) \colon \\
&\qquad \textnormal{Select a random $|x|$-bit prime $q$.} \\
&\qquad \textnormal{Let } r \in_R \mathbb{Z}^*_q \\
&\qquad \textnormal{Output } \langle r, r^{h(x)} \bmod q \rangle
\end{align*}
\end{minipage}}
\end{document}
它会产生类似这样的结果:
如你所见,H(x)上方有一个额外的空行。
我怎样才能将其删除?
答案1
使用empheq
包裹
\documentclass{article}
\usepackage{amsmath,amssymb}
\usepackage{empheq}
\begin{document}
\begin{empheq}[box=\fbox]{align*}
&H(x) \colon \\
&\qquad \textnormal{Select a random $|x|$-bit prime $q$.} \\
&\qquad \textnormal{Let } r \in_R \mathbb{Z}^*_q \\
&\qquad \textnormal{Output } \langle r, r^{h(x)} \bmod q \rangle
\end{empheq}
\end{document}
导致
你甚至可以用
\begin{empheq}[box=\colorbox{yellow}]{align*}
答案2
设置:\abovedisplayskip
0pt
\documentclass{article}
\usepackage{amsmath,amssymb}
\begin{document}
\fbox{\begin{minipage}{6cm}
\setlength\abovedisplayskip{0pt}
\begin{align*}
&H(x) \colon \\
&\qquad \textnormal{Select a random $|x|$-bit prime $q$.} \\
&\qquad \textnormal{Let } r \in_R \mathbb{Z}^*_q \\
&\qquad \textnormal{Output } \langle r, r^{h(x)} \bmod q \rangle
\end{align*}
\end{minipage}}
\end{document}
答案3
不要用align
这个,这是tabular
\fbox{\renewcommand{\arraystretch}{1.2}
\begin{tabular}{l@{}l}
\makebox[2em][l]{$H(x)$:}\\
& Select a random $|x|$-bit prime $q$. \\
& Let $r \in_R \mathbb{Z}^*_q$ \\
& Output $\langle r, r^{h(x)} \bmod q \rangle$
\end{tabular}}
你甚至不需要猜测对齐的宽度。