$$
\begin{alignat}{5}
2c_1&\;+\;&5c_2 &\;=\;& 1\\
-c_1&&&\;=\;&-8\\
3c_1&\;+\;&4c_2&\;=\;&12
\end{alignat}
$$
上面的代码自动标记了行 (1)、(2) 和 (3),但是我想要(1),(2)和(3)。
答案1
下面我已更新\maketag@@@
插入内容\tagfont
,您可以通过以下方式进行操作\renewcommand
:
\documentclass{article}
\usepackage{amsmath}
\makeatletter
\def\maketag@@@#1{\hbox{\m@th\normalfont\tagfont#1}}
\makeatother
\newcommand{\tagfont}{}
\begin{document}
\begin{alignat}{5}
2c_1&\;+\;&5c_2 &\;=\;& 1\\
-c_1&&&\;=\;&-8\\
3c_1&\;+\;&4c_2&\;=\;&12
\end{alignat}
\renewcommand{\tagfont}{\bfseries}
\begin{alignat}{5}
2c_1 & {}+{} & 5c_2 & {}={} & 1 \\
-c_1 & & & {}={} & -8 \\
3c_1 & {}+{} & 4c_2 & {}={} & 12 \label{abc}
\end{alignat}
\renewcommand{\tagfont}{}
See~\eqref{abc}.
\end{document}
第一种alignat
保留了原来的格式,而第二种更适合读者,并且在运算符和操作数周围使用自然间距,而不是强制的\;
。
答案2
您可以使用包中的\newtagform
和\usetagform
命令定义标签样式mathtools
。我还简化了您的代码;实际上,您只有三个对齐点(请记住,k 个对齐点通常需要 2k – 1 个 & 符号)。另一方面,您有一个正确的水平间距,添加{}
而不是\;
:
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{mathtools}
\newtagform{bf}{\bfseries(}{)}
\begin{document}
\usetagform{bf}
\begin{alignat}{3}
2c_1&+{}&5c_2 & = {}& 1\\
-c_1&&& = &-8\\
3c_1& + &4c_2& = &12
\end{alignat}
\end{document}