通常,tag 只用于标注。但是,我想使用 tag 来写一些比标签更长的文本。
图像:
WMF:
\documentclass{article}
\usepackage{amsmath}
\usepackage[margin=1.00cm]{geometry}
\begin{document}
Here I want,
\begin{align}
\sqrt{\smash[b]{1-x^2}}+\sqrt{\smash[b]{1-y^2}}=C\,\,(0<C<2). \notag
\\[-17pt]
\tag*{$(\sqrt{\smash[b]{1-x^2}}\sqrt{\smash[b]{1-y^2}}\ne 0000000000000000000)$}
\end{align}
However, I can only do this,
\begin{align}
\sqrt{\smash[b]{1-x^2}}+\sqrt{\smash[b]{1-y^2}}=C\,\,(0<C<2).
\tag*{$(\sqrt{\smash[b]{1-x^2}}\sqrt{\smash[b]{1-y^2}}\ne 0000000000000000000)$}
\end{align}
This is not centered.
\begin{align*}
\sqrt{\smash[b]{1-x^2}}+\sqrt{\smash[b]{1-y^2}}=C\,\,(0<C<2)\text{.}
\hfill(\sqrt{\smash[b]{1-x^2}}\sqrt{\smash[b]{1-y^2}}\ne 0).
\end{align*}
Here hfill doesn't work.
\end{document}
还有其他方法可以达到像第一个公式那样的效果吗?谢谢!
答案1
不要滥用\tag
设置方程式一部分的条件。
如果您确实想要右边距的条件(但您不应该),您可以使用flalign
并手动在右侧添加一些空间。
或者,更好的方法是,不要强迫条件,而是判断一下是否添加一些水平空间,以实现“几乎居中”。
\documentclass{article}
\usepackage[margin=1cm,showframe]{geometry}
\usepackage{amsmath} % for 'gather*' environment
\usepackage{mathtools} % for \cramped
\begin{document}
First way, which I'd prefer
\begin{alignat*}{2}
\hspace{4em}
& \sqrt{1-x^2}+\sqrt{1-\smash[b]{\cramped{y^2}}}=C \quad (0<C<2).
&\qquad&
\sqrt{1-x^2}\sqrt{1-\smash[b]{\cramped{y^2}}}\ne 0.00000000000000000) \\
&\sqrt{1-x^2}+\sqrt{1-\smash[b]{\cramped{y^2}}}=C \quad (0<C<2).
\end{alignat*}
Second way, which I dislike
\begin{flalign*}
&\hspace{6em}&&
\sqrt{1-x^2}+\sqrt{1-\smash[b]{\cramped{y^2}}}=C \quad (0<C<2).
&&\sqrt{1-x^2}\sqrt{1-\smash[b]{\cramped{y^2}}}\ne 0.00000000000000000) \\
&&&
\sqrt{1-x^2}+\sqrt{1-\smash[b]{\cramped{y^2}}}=C \quad (0<C<2).
\end{flalign*}
\end{document}
请注意我是如何得到平方根下的指数的狭窄样式的。
答案2
我建议您将参数包含\tag*
在指令中\llap
。
环境的第二行内容gather*
按构造水平居中。比较第 1 行和第 2 行的内容可发现,第 1 行的内容(除了较长的标签...)也水平居中。因此,OP 的格式化目标已实现。
\documentclass{article}
\usepackage[margin=1cm,showframe]{geometry}
\usepackage{amsmath} % for 'gather*' environment
\begin{document}
\begin{gather*}
\sqrt{\smash[b]{1-x^2}}+\sqrt{\smash[b]{1-y^2}}=C \quad (0<C<2).
\tag*{\llap{($\sqrt{\smash[b]{1-x^2}}\sqrt{\smash[b]{1-y^2}}\ne 0.00000000000000000$})} \\
\sqrt{\smash[b]{1-x^2}}+\sqrt{\smash[b]{1-y^2}}=C \quad (0<C<2).
\end{gather*}
\end{document}
答案3
这将使等式居中,但我必须减少边距以使其适合。
\documentclass{article}
\usepackage{amsmath}
\usepackage[margin=0.5cm, showframe]{geometry}
\begin{document}
Here I want,
\begin{flalign*}
\phantom{(\sqrt{\smash[b]{1-x^2}}\sqrt{\smash[b]{1-y^2}}\ne 0000000000000000000)} &&
\sqrt{\smash[b]{1-x^2}}+\sqrt{\smash[b]{1-y^2}}=C\,\,(0<C<2). &&
(\sqrt{\smash[b]{1-x^2}}\sqrt{\smash[b]{1-y^2}}\ne 0000000000000000000)
\end{flalign*}
\end{document}