![使比 \textwidth 更宽的方程式居中?](https://linux22.com/image/386721/%E4%BD%BF%E6%AF%94%20%5Ctextwidth%20%E6%9B%B4%E5%AE%BD%E7%9A%84%E6%96%B9%E7%A8%8B%E5%BC%8F%E5%B1%85%E4%B8%AD%EF%BC%9F.png)
答案1
答案2
我提出了另外三种可能的布局,包括mathtools
和/或nccmath
:
\documentclass{article}
\usepackage{mathtools, nccmath}
\usepackage{lipsum}
\begin{document}
\lipsum[11]
\begin{fleqn}[-0.75em]
\begin{equation}
\begin{aligned}[b]
&\hspace{0.67em} f(x) = \\
& \frac{\Bigl(6x-x^2 + \cfrac{x^5}{20}-\dotsm\Bigr) +\Bigl(x^3-\cfrac{x^6}{2} + \cfrac{x^9}{3}-\dotsm\Bigr) + \Bigl(x^3-\cfrac{x^6}{2} + \cfrac{x^9}{3}-\dotsm\Bigr)-6x}%
{\Bigl(x^3-\cfrac{2x^5}{3} + \cfrac{23x^7}{45}-\dotsm\Bigr)-x^3}
\end{aligned}
\end{equation}
\end{fleqn}
\bigskip
\begin{equation}
f(x) = \mfrac{\Bigl(6x-x^2 + \cfrac{x^5}{20}-\dotsm\Bigr) +\Bigl(x^3-\cfrac{x^6}{2} + \cfrac{x^9}{3}-\dotsm\Bigr) + \Bigl(x^3-\cfrac{x^6}{2} + \cfrac{x^9}{3}-\dotsm\Bigr)-6x}%
{\Bigl(x^3-\cfrac{2x^5}{3} + \cfrac{23x^7}{45}-\dotsm\Bigr)-x^3}
\end{equation}
\bigskip
\begin{equation}
f(x) = \frac{\splitfrac{\Bigl(6x-x^2 + \cfrac{x^5}{20}-\dotsm\Bigr) +\Bigl(x^3-\cfrac{x^6}{2} + \cfrac{x^9}{3}-\dotsm\Bigr)} {+ \Bigl(x^3-\cfrac{x^6}{2} + \cfrac{x^9}{3}-\dotsm\Bigr)-6x}}%
{\Bigl(x^3-\cfrac{2x^5}{3} + \cfrac{23x^7}{45}-\dotsm\Bigr)-x^3}
\end{equation}
\end{document}
答案3
这是另一种将太宽而无法容纳在文本区域中的方程式居中的方法。它类似于 Skillmon 在此评论,但它会将方程式包裹在一个宽度恰好等于方程式最大值的框中,而不是宽度为零的框中。这样就可以根据需要将方程式编号推到下一行。
\documentclass{article}
\usepackage{showframe} %% <- Makes the text margins visible
\usepackage{amsmath}
\begin{document}
\begin{equation}
\makebox[\displaywidth]{$\displaystyle
f(x) =
\frac{
\Bigl( 6x - x^2 + \dfrac{x^5}{20} - \dotsb \Bigr)
+ \Bigl( x^3 - \dfrac{x^6}{2} + \dfrac{x^9}{3} - \dotsb \Bigr)
+ \Bigl( x^3 - \dfrac{x^6}{2} + \dfrac{x^9}{3} - \dotsb \Bigr)
- 6x
}{
\Bigl( x^3 - \dfrac{2x^5}{3} + \dfrac{23x^7}{45} - \dotsb \Bigr) - x^3
}
$}
\end{equation}
\end{document}
代码可能大部分都是不言自明的,但无论如何这里有一个简短的解释:
\makebox[<width>]{<content>}
<width>
创建一个包含(居中)的宽度的框<content>
。\displaywidth
是当前显示数学环境的最大宽度。$\displaystyle <equation>$
以显示样式(带有大分数、求和符号等)生成方程组。
替代方案:减少方程中的空白处
作为让方程式超出页边距的替代方法,我建议减少方程式各部分之间的间距。可以按如下方式进行:
\documentclass{article}
\usepackage{showframe} %% <- Makes the text margins visible
\usepackage{amsmath}
\newcommand*\squeezespaces[1]{% %% <- #1 is a number between 0 and 1
\thickmuskip=\scalemuskip{\thickmuskip}{#1}% %% <- around =, \rightarrow, etc.
\medmuskip=\scalemuskip{\medmuskip}{#1}% %% <- around +, \times, etc.
\thinmuskip=\scalemuskip{\thinmuskip}{#1}% %% <- around \sum, \sin, etc.
\nulldelimiterspace=#1\nulldelimiterspace %% <- around fractions
\scriptspace=#1\scriptspace %% <- after sub-/superscripts
}
\newcommand*\scalemuskip[2]{% %% <- scales muskips, including stretch/shrink
\muexpr #1*\numexpr\dimexpr#2pt\relax\relax/65536\relax
} %% <- based on https://tex.stackexchange.com/a/198966/156366
\begin{document}
\begin{equation}
\squeezespaces{.6}
f(x) =
\frac{
\Bigl( 6x - x^2 + \dfrac{x^5}{20} - \dotsb \Bigr)
+ \Bigl( x^3 - \dfrac{x^6}{2} + \dfrac{x^9}{3} - \dotsb \Bigr)
+ \Bigl( x^3 - \dfrac{x^6}{2} + \dfrac{x^9}{3} - \dotsb \Bigr)
- 6x
}{
\Bigl( x^3 - \dfrac{2x^5}{3} + \dfrac{23x^7}{45} - \dotsb \Bigr) - x^3
}
\end{equation}
\end{document}
这三种长度\thickmuskip
,\medmuskip
并\thinmuskip
确定插入各种类型的数学原子之间的空间量(参见这个答案以很好地概述每个值的使用情况)。\nulldelimiterspace
和\scriptspace
分别插入在分数周围和下标/上标之后。 我将它们每个值都减少到其原始值的 60%(仅在此等式中)。
如果您希望方程编号出现在同一行,您当然可以进一步压缩方程。下图是通过替换上一个文档中的 生成.6
的.45
。
答案4
你可以简单地将\hss
等式的两边相加:
\hsize=7cm
\hbox to\hsize{|:left margin \hss text \hss right margin:|}
$$
\hss This is an equation which slightly exceeds margins \hss
$$