我尝试将方程式放在表格中,但结果并不理想。具体来说,拟合度太高了。
\begin{longtable}{|c|c|}
\hline
• & $\begin{array}{ll}
\Rightarrow a+b &> \dfrac{2013}{b}(a+b)+\dfrac{2014}{a}(a+b) \\
&= 2013 + \dfrac{2013a}{b}+\dfrac{2014b}{a} + 2014 \\
&\geqslant 2013 + 2\sqrt{\dfrac{2013a}{b}.\dfrac{2014b}{a}} + 2014 \\
&= \left( \sqrt{2013} + \sqrt{2014} \right)^2
\end{array}$ \\
\hline
• & • \\
\hline
\end{longtable}
我在一张长桌上工作,遇到过很多类似的情况。我该如何解决?
答案1
一些建议:
最重要的是,不要使用
array
默认使用 textstyle-math 设置的环境。请使用aligned
默认为 displaystyle math 的环境。不要使用
.
(点)作为表示乘法的符号;\cdot
而应使用。或者,直接省略该符号,因为实际上并不需要它。备注:如果您希望
\textbullet
第一列的项目对齐在顶部而不是中间,只需使用\begin{aligned}[t]
而不是\begin{aligned}
。在第一行的一个分子项中插入一个(印刷)支柱;这将增加到前一条水平线的垂直距离。
\left(
从印刷上来说,最后一行中由和生成的括号\right)
太大。应使用\bigl(
和\bigr)
。可选:加载
array
包并发出指令\setlength\extrarowheight{2pt}
以创建一个具有(稍微)更“开放”外观的表。
\documentclass{article}
\usepackage{longtable,amsmath,amssymb}
\usepackage{array} % for \extrarowheight macro
\setlength\extrarowheight{2pt} % for a more "open" look
\newcommand\Tstrut{\smash[b]{\strut}} % "top strut"
\begin{document}
\begin{longtable}{|c|c|}
\hline
\textbullet &
$\begin{aligned}
\Rightarrow a+b &> \frac{2013\Tstrut}{b}(a+b)+\frac{2014}{a}(a+b) \\
&= 2013 + \frac{2013a}{b}+\frac{2014b}{a} + 2014 \\
&\geqslant 2013 + 2\sqrt{\frac{2013a}{b}\cdot\frac{2014b}{a}} + 2014 \\
&= \bigl( \sqrt{2013} + \sqrt{2014} \,\bigr)^2
\end{aligned}$ \\
\hline
\textbullet & \textbullet \\
\hline
\end{longtable}
\end{document}
附录回答 OP 的后续问题,即如何自动化(并改进)水平线周围的间距。在我看来,如果想要改进 和 绘制的水平线上方和下方的垂直间距,那么实际上是在问错误的问题。相反,我们\hline
应该\cline
问,我们为什么要使用\hline
和\cline
?书签包提供了宏\toprule
、\midrule
、\cmidrule
和\bottomrule
,它们自动生成好多了间距。使用这些宏代替和\hline
,\cline
并省略所有垂直规则,立即产生更加令人愉悦且易于掌握的布局。如下面的屏幕截图所示。
\documentclass{article}
\usepackage{longtable,amsmath,amssymb,booktabs}
\begin{document}
\begin{longtable}{@{}cc@{}}
\toprule
\endhead
\bottomrule
\endfoot
\textbullet &
$\begin{aligned}[t]
\Rightarrow a+b &> \frac{2013}{b}(a+b)+\frac{2014}{a}(a+b) \\
&= 2013 + \frac{2013a}{b}+\frac{2014b}{a} + 2014 \\
&\geqslant 2013 + 2\sqrt{\frac{2013a}{b}\cdot\frac{2014b}{a}} + 2014 \\
&= \bigl( \sqrt{2013} + \sqrt{2014} \,\bigr)^2
\end{aligned}$ \\
\midrule
\textbullet & \textbullet \\
\end{longtable}
\end{document}
答案2
withcellspace
和amsmath
( mathtools
) 包:
\documentclass{article}
\usepackage{mathtools, amssymb}
\usepackage{cellspace, longtable}
\setlength\cellspacetoplimit{4pt}
\setlength\cellspacebottomlimit{4pt}
\begin{document}
\begin{longtable}{|c|Sc|}% <-- S activate settings for cellspace
\hline
\textbullet &
$\begin{aligned}
\Rightarrow a+b & > \frac{2013}{b}(a+b)+\frac{2014}{a}(a+b) \\
& = 2013 + \frac{2013a}{b}+\frac{2014b}{a} + 2014 \\
& \geqslant 2013 + 2\sqrt{\frac{2013a}{b}\cdot\frac{2014b}{a}} + 2014 \\
& = \bigl( \sqrt{2013} + \sqrt{2014} \,\bigr)^2
\end{aligned}$ \\
\hline
\textbullet & \textbullet \\
\hline
\end{longtable}
\end{document}
答案3
您在数组中使用了显示分数dfrac
,因此需要增加\arraystretch
以容纳它们。例如,
\documentclass{article}
\usepackage{longtable,amsmath,amssymb}
\usepackage[utf8]{inputenc}
\pagestyle{empty}
\begin{document}
\begin{longtable}{|c|c|}
\hline
• & \renewcommand\arraystretch{2.5}$\begin{array}{ll}
\Rightarrow a+b &> \dfrac{2013}{b}(a+b)+\dfrac{2014}{a}(a+b) \\
&= 2013 + \dfrac{2013a}{b}+\dfrac{2014b}{a} + 2014 \\
&\geqslant 2013 + 2\sqrt{\dfrac{2013a}{b}.\dfrac{2014b}{a}} + 2014 \\
&= \left( \sqrt{2013} + \sqrt{2014} \right)^2
\end{array}$ \\
\hline
• & • \\
\hline
\end{longtable}
\end{document}
更新@Mico 在评论中要求在 周围设置更一致的间距>
。切换到aligned
即可。同时,我们booktabs
也可以使用:
\documentclass{article}
\usepackage{longtable,amsmath,amssymb, booktabs}
\usepackage[utf8]{inputenc}
\pagestyle{empty}
\begin{document}
\begin{longtable}{cc}
\toprule
• &\renewcommand\arraystretch{2.5}$\begin{aligned}
\Rightarrow a+b &> \dfrac{2013}{b}(a+b)+\dfrac{2014}{a}(a+b) \\
&= 2013 + \dfrac{2013a}{b}+\dfrac{2014b}{a} + 2014 \\
&\geqslant 2013 + 2\sqrt{\dfrac{2013a}{b}.\dfrac{2014b}{a}} + 2014 \\
&= \left( \sqrt{2013} + \sqrt{2014} \right)^2
\end{aligned}$ \\
\midrule
• & • \\
\bottomrule
\end{longtable}
\end{document}