我得到了以下(部分缩短的)方程式:
我想去掉等式左侧的空间(的左边Q'
),以便标签(0.2)适合放在右侧。
\documentclass[
a4paper,
12pt,
parskip=half
]{scrbook}
\usepackage[showframe]{geometry}
\usepackage{amsmath}
\newcommand*{\op}[1]{\mathrm{#1}}
\begin{document}
\begin{align}
Q'&(s,x) \nonumber\\
&\mid s=(f,r)() \wedge x=\mathcal{E}(r) &&= [\mathcal{E}(f())]\\
&\mid s=(f,r)(q_1,...,q_z) &&= \left[\mathcal{E}(f(p_1,...,p_z)) \middle\vert
\begin{aligned}
&x' = \op{split}(x,r(q_1,...,q_z)),\\
&(x_1,...,x_z) \in x',\\
&p_i \in Q'(q_i,x_i),1 \leq i \leq z
\end{aligned}
\right]
\end{align}
\end{document}
使用flalign
:
使用flalign
和\usepackage{mathpazo}
:
\documentclass[
a4paper,
12pt,
parskip=half,
]{scrbook}
\usepackage[showframe]{geometry}
\usepackage{amsmath}
\usepackage{mathpazo}
\newcommand*{\op}[1]{\mathrm{#1}}
\begin{document}
\begin{flalign}
Q'&(s,x) \nonumber\\
&\mid s=(f,r)() \wedge x=\mathcal{E}(r) &&= [\mathcal{E}(f())]\\
&\mid s=(f,r)(q_1,...,q_z) &&= \left[\mathcal{E}(f(p_1,...,p_z)) \middle\vert
\begin{aligned}
&x' = \op{split}(x,r(q_1,...,q_z)),\\
&(x_1,...,x_z) \in x',\\
&p_i \in Q'(q_i,x_i),1 \leq i \leq z
\end{aligned}
\right] \label{eq:q'_fr}
\end{flalign}
\end{document}
虽然flalign
解决了问题,但mathpazo
似乎扭曲了方程中间的对齐。这是为什么?
答案1
您可以通过反复试验来完成此操作,如下所示:
\documentclass[
a4paper,
12pt,
]{scrbook}
\usepackage[showframe]{geometry}
\usepackage{amsmath,mathtools}
\usepackage{mleftright}
%\usepackage{mathpazo}
\newcommand*{\op}[1]{\operatorname{#1}}
\begin{document}
\begin{alignat}{2}
\mathmakebox[.5em][r]{Q'}
&(s,x) \nonumber\\
&{\mid}\; s=(f,r)() \wedge x=\mathcal{E}(r)
&&= [\mathcal{E}(f())]
\\
&{\mid}\; s=(f,r)(q_1,\dots,q_z)
&&=
\mleft[
\mathcal{E}(f(p_1,\dots,p_z))
\middle\vert
\begin{aligned}
&x' = \op{split}(x,r(q_1,\dots,q_z)),\\
&(x_1,\dots,x_z) \in x',\\
&p_i \in Q'(q_i,x_i),1 \leq i \leq z
\end{aligned}
\mright]
\end{alignat}
\end{document}
但是,当您更改字体或页面参数时,这可能会严重中断。例如,您无需调用即可获得的正常页面参数geometry
不会造成无法克服的问题,因为文本宽度会更大。相反,mathpazo
字形的平均宽度比 Computer Modern 的要大,因此该技巧将不起作用,并且显示根本不适合。
这是例子。在这种棘手的情况下,几乎总是需要进行一些手动调整。
相同的代码mathpazo
;如果你看一下结果,你会发现无论你如何向左推第一个“Q”,材料都不适合。
同样,代码相同(但只是用Q'
代替\mathmakebox[.5em][r]{Q'}
,而不将控制权交给 )geometry
:
只是为了展示页面参数如何影响最终结果,下面是我在不控制geometry
您的原始输入的情况下得到的结果: