我在 overleaf 上使用了以下最小的乳胶代码,试图创建一个 12pt、1in 页边距、信纸大小的 Times New roman 文档:
\documentclass[12pt, letterpaper, fleqn, notitlepage]{article}
\usepackage[utf8]{inputenc}
\usepackage[margin=1in]{geometry}
\usepackage{newtxtext}
\usepackage{color}
\usepackage{amsmath,amssymb,amsfonts,amsthm}
\begin{document}
$$Entropy(\text{D}) = -\sum\limits_{d \in D} p(d) \log_{2}p(d) $$
$$Entropy(\text{S}) = p(s+)\Bigg [ -\sum\limits_{d \in D} p(d | s+) \log_{2}p(d | s+)\Bigg ] \\
+ p(s-)\Bigg [-\sum\limits_{d \in D} p(d | s-) \log_{2}p(d | s-)\Bigg ]$$
\end{document}
我正在尝试简单地将所有方程式左对齐并隐藏方程式编号。
以下是我尝试过但没有成功的方法:
fleqn
在文档选项中\begin{align}
和\end{align}
\begin{flalign*}
和\end{flalign*}
\setlength\mathindent{0pt}
任何帮助都将不胜感激。谢谢。
答案1
像这样?
(红线表示文本边框)
\documentclass[12pt, fleqn]{article}
\usepackage[letterpaper,
margin=1in]{geometry}
\usepackage{newtxtext}
\usepackage{mathtools,amssymb,amsthm}
\setlength{\mathindent}{0pt} % <----
\begin{document}
\[
\mathrm{Entropy}(D) = -\sum\limits_{d \in D} p(d) \log_{2}p(d)
\]
some text?
\[
\mathrm{Entropy}(S)
\begin{multlined}[t][0.5\linewidth]
= p(s+)\Bigg[-\sum\limits_{d \in D} p(d | s+) \log_{2}p(d | s+)\Bigg] \\
+ p(s-)\Bigg[-\sum\limits_{d \in D} p(d | s-) \log_{2}p(d | s-)\Bigg]
\end{multlined}
\]
\end{document}
请注意,文档代码中也纠正了方程中的错误。
答案2
您可以使用align*
环境、的fleqn
和alignedleftspaceno
选项amsmath
以及\@mathmargin
零来实现这一点。要拆分长等式,请插入split
。
如果您只是希望方程式左对齐而没有对齐点,则可以使用lgather
来自的环境mathtools
。
该fleqn
选项应转到amsmath
或加载它的任何包。如果您使用 AMS 类(例如),则应仅将其提供给文档类amsbook
。
它设置方程式左边,并设置缩进\@mathmargin
。 将其设置为0pt
使你向左齐平。
\documentclass[12pt, letterpaper, notitlepage]{article}
\usepackage[margin=1in]{geometry}
\usepackage{iftex}
\usepackage{xcolor}
\usepackage[fleqn, alignedleftspaceno]{amsmath}
\usepackage{mathtools}
\usepackage{amsthm}
\ifPDFTeX
\usepackage{newtxtext, newtxmath}
\else
\usepackage{unicode-math}
\defaultfontfeatures{Scale = MatchLowercase}
\setmainfont[Scale = 1.0]{TeX Gyre Termes}
\setmathfont{TeX Gyre Termes Math}
\fi
% Set the left margin used by fleqn to 0pt.
\makeatletter
\AtBeginDocument{\@mathmargin0pt\relax}
\makeatother
\DeclareMathOperator{\Entropy}{Entropy}
\begin{document}
\begin{align*}
\Entropy(\mathrm{D}) &= -\sum\limits_{d \in D} p(d) \log_{2}p(d) \\
\intertext{Oh, and by the way:}
\begin{split}
\Entropy(\mathrm{S}) &=
p(s+)\Bigg [ -\sum\limits_{d \in D} p(d | s+) \log_{2}p(d | s+)\Bigg ] \\
&\hphantom{=} + p(s-)\Bigg [-\sum\limits_{d \in D} p(d | s-) \log_{2}p(d | s-)\Bigg ]
\end{split}
\end{align*}
\end{document}
我做了一些改动,例如将数学字体设置为与 Times 匹配,定义一个像或\Entropy
一样工作的运算符,以及将(与周围文本的当前格式匹配)更改为(数学模式下的直立字母)。\log
\sin
\text
\mathrm
拆分方程式的第二行的对齐方式非常灵活。例如,您可以删除\hphantom
以将 =` 对齐+ with the
到上方,或者在其后添加更多空格。