首先,我想说我已经阅读了所有相关问题。例如,问题 1,问题2,问题 3,问题 4。但是这些都没有解决我的问题。
我的代码是这样的
\documentclass[12pt,a4paper,portuguese,brazil,openany,twoside]{book}
\pagestyle{plain}
\usepackage[top=3.0cm,left=3.0cm,right=2.5cm,bottom=2.5cm]{geometry}
\usepackage{graphicx,amssymb,stackengine}
\usepackage{amsmath,amsthm,amsfonts}
\usepackage{pgf}
\begin{document}
\begin{equation} \begin{aligned} &1.\ \ol{ax + by} = a\ol x + b \ol y; \\ &2.\ \ol {(\ol x)} = x;\\ &3.\ |\ol x| = |x|;\\ &4.\ |a x| = |a| |x|; \\ &5.\ \ol {xy} = \ol y \> \ol x; \\ &6.\ |xy| = |x| |y|; \\ &7.\ 2\mathrm {Re} (x\bar y)= 2\mathrm{Re} (y\bar x); \\ &8.\ \mathrm{Im} (x\bar y) = - \mathrm{Im} (y \bar x).\end{aligned}
\end{equation}
\end{document}
我只是想让它左对齐,而不是居中。我试过了flalign
,,flaligned
但flalign*
它一直显示相同的错误
Enviroment flaligned undefined.
我能做什么吗?
答案1
enumerate
有了(以及 的帮助) ,一切都简单多了enumitem
。
在示例中,我删除了除语言包之外的所有不必要的包。请注意,您不需要同时加载portuguese
和brazil
。
\documentclass[12pt,a4paper,openany,twoside]{book}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[brazil]{babel}
\usepackage{amsmath}
\usepackage{enumitem}
\usepackage{lipsum} % for some context
\newcommand{\ol}[1]{\overline{#1}}
\let\Re\relax\let\Im\relax % undefine them
\DeclareMathOperator{\Re}{Re}
\DeclareMathOperator{\Im}{Im}
\begin{document}
\lipsum*[2]
\begin{flalign}
&\begin{minipage}{.8\displaywidth}
\begin{enumerate}[itemsep=1ex,leftmargin=*]
\item $\ol{ax + by} = a\bar{x} + b \bar{y}$;
\item $\ol{(\bar{x})} = x$;
\item $|\bar{x}| = |x|$;
\item $|ax| = |a|\,|x|$;
\item $\ol{xy} = \bar{y}\bar{x}$;
\item $|xy| = |x|\,|y|$;
\item $\Re(x\bar{y})= \Re(y\bar{x})$;
\item $\Im(x\bar{y}) = -\Im(y\bar{x})$.
\end{enumerate}
\end{minipage}&&
\end{flalign}
\lipsum[3]
\end{document}
其他可能性(我更喜欢,特别是第二种)。
\documentclass[12pt,a4paper,openany,twoside]{book}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[brazil]{babel}
\usepackage{amsmath}
\usepackage{enumitem}
\usepackage{lipsum} % for some context
\newcommand{\ol}[1]{\overline{#1}}
\let\Re\relax\let\Im\relax % undefine them
\DeclareMathOperator{\Re}{Re}
\DeclareMathOperator{\Im}{Im}
\begin{document}
\lipsum*[2]
\begin{subequations}
\begin{align}
& \ol{ax + by} = a\bar{x} + b \bar{y}; \\
& \ol{(\bar{x})} = x; \\
& |\bar{x}| = |x|; \\
& |ax| = |a|\,|x|; \\
& \ol{xy} = \bar{y}\bar{x}; \\
& |xy| = |x|\,|y|; \\
& \Re(x\bar{y})= \Re(y\bar{x}); \\
& \Im(x\bar{y}) = -\Im(y\bar{x}).
\end{align}
\end{subequations}
\lipsum*[3]
\begin{subequations}
\begin{gather}
\ol{ax + by} = a\bar{x} + b \bar{y}; \\
\ol{(\bar{x})} = x; \\
|\bar{x}| = |x|; \\
|ax| = |a|\,|x|; \\
\ol{xy} = \bar{y}\bar{x}; \\
|xy| = |x|\,|y|; \\
\Re(x\bar{y})= \Re(y\bar{x}); \\
\Im(x\bar{y}) = -\Im(y\bar{x}).
\end{gather}
\end{subequations}
\lipsum[4]
\end{document}
答案2
您是否希望enumerate
在环境中创建一个枚举列表(例如,使用环境)equation
?如果是这样,请将enumerate
材料封装在minipage
环境中,并将小页面封装在方程式中。
以下代码使用itemsep=0pt
选项创建紧密间隔的列表。要创建真正紧密的间距,请用 替换itemsep=0pt
。nosep
并且,如果您希望项目编号显示为(1)
、(2)
等,而不是1.
、2.
等,请将其添加label=(\arabic*)
到环境的可选参数列表中enumerate
。
\documentclass[12pt,a4paper]{book}
\usepackage{enumitem,mathtools}
\DeclarePairedDelimiter{\abs}{\lvert}{\rvert}
\let\Im\relax % undefine \Im and \Re first
\let\Re\relax
\DeclareMathOperator{\Im}{Im}
\DeclareMathOperator{\Re}{Re}
\let\ol\overline
\usepackage[top=3cm,left=3cm,right=2.5cm,bottom=2.5cm]{geometry}
\begin{document}
\begin{equation}
\begin{minipage}{0.5\textwidth}
\begin{enumerate}[wide,itemsep=0pt] % medium-tight spacing
\item $\ol{ax + by} = a\ol x + b \ol y$
\item $\ol{(\ol x)} = x$
\item $\abs{\ol x} = \abs{x}$
\item $\abs{a x} = \abs{a}\abs{x}$
\item $\ol{xy} = \ol y \, \ol x$
\item $\abs{xy} = \abs{x}\abs{y}$
\item $2\Re(x\bar y)= 2\Re (y\bar x)$
\item $\Im(x\bar y) = -\Im (y\bar x).$
\end{enumerate}
\end{minipage}
\end{equation}
\end{document}
答案3
我发现,为了使这个工作正常进行,对原始版本进行的干扰最小的改变是,我将其添加fleqn
到文档类中,并将方程式环境包装在较小的页面环境中。
在没有缩小小页面换行的情况下,我发现方程组的数字位于最右侧,这使它更接近左对齐组。代码在方程正上方有一些比较文本,以显示它确实是最左对齐而不是居中对齐。
\documentclass[12pt,a4paper,portuguese,brazil,openany,twoside,fleqn]{book}
\pagestyle{plain}
\usepackage[top=3.0cm,left=3.0cm,right=2.5cm,bottom=2.5cm]{geometry}
\usepackage{graphicx,amssymb,stackengine}
\usepackage{amsmath,amsthm,amsfonts}
\usepackage{pgf}
\begin{document}
Comparison Text\\
\begin{minipage}{0.45\textwidth}
\begin{equation}
\begin{aligned}
&1.\ \ol{ax + by} = a\ol x + b \ol y; \\
&2.\ \ol {(\ol x)} = x;\\ &3.\ |\ol x| = |x|;\\
&4.\ |a x| = |a| |x|; \\
&5.\ \ol {xy} = \ol y \> \ol x; \\
&6.\ |xy| = |x| |y|; \\
&7.\ 2\mathrm {Re} (x\bar y)= 2\mathrm{Re} (y\bar x); \\
&8.\ \mathrm{Im} (x\bar y) = - \mathrm{Im} (y \bar x).\end{aligned}
\end{equation}
\end{minipage}
\end{document}
您可以(可能也应该)尝试并调整小页面的宽度以满足您的审美需求。您还可以删除手动编号,让系统为您完成此操作,方法是使用align
替换equation
和aligned
;
\documentclass[12pt,a4paper,portuguese,brazil,openany,twoside,fleqn]{book}
\pagestyle{plain}
\usepackage[top=3.0cm,left=3.0cm,right=2.5cm,bottom=2.5cm]{geometry}
\usepackage{graphicx,amssymb,stackengine}
\usepackage{amsmath,amsthm,amsfonts}
\usepackage{pgf}
\begin{document}
Comparison Text\\
\begin{minipage}{0.45\textwidth}
\begin{align}
\ \ol{ax + by} = a\ol x + b \ol y; \\
\ \ol {(\ol x)} = x;\\
\ |\ol x| = |x|;\\
\ |a x| = |a| |x|; \\
\ \ol {xy} = \ol y \> \ol x; \\
\ |xy| = |x| |y|; \\
\ 2\mathrm {Re} (x\bar y)= 2\mathrm{Re} (y\bar x); \\
\ \mathrm{Im} (x\bar y) = - \mathrm{Im} (y \bar x).
\end{align}
\end{minipage}
\end{document}
由于我们左对齐了小页面而不是实际的方程式,因此这看起来很有趣,每行最右边的字符都尽可能左对齐,最长的行可以到达那里。然后你只需要调整小页面的宽度,让数字更接近。