![为什么有一个满满的盒子,里面有 \](https://linux22.com/image/246139/%E4%B8%BA%E4%BB%80%E4%B9%88%E6%9C%89%E4%B8%80%E4%B8%AA%E6%BB%A1%E6%BB%A1%E7%9A%84%E7%9B%92%E5%AD%90%EF%BC%8C%E9%87%8C%E9%9D%A2%E6%9C%89%20%5C.png)
\documentclass{article}
\begin{document}
\hsize 200pt
%A wonderful serenity has taken possession of my entire soul, like these sweet
%mornings of spring which I enjoy with my whole heart.
\[ e=mc^2 \]
\end{document}
给了我一个溢出的水平盒子:
Overfull \hbox (22.0021pt too wide) in paragraph at lines 9--9
[][]
使用$$...$$
代替 可以\[...\]
达到很好的效果。
使用即将发布的可视化调试工具,我看到右侧有一个奇怪的框:
答案1
因为你改变了 TeX 基元\hsize
而没有告诉 LaTeX。你最好\linewidth
使用 LaTeX 显示环境构造来更改,以使所有 LaTeX 数据保持一致。或者\textwidth
在序言中设置整个文档。
答案2
LaTeX\[
指的是\linewidth
,而不是\hsize
。来自latex.ltx
:
\def\[{%
\relax\ifmmode
\@badmath
\else
\ifvmode
\nointerlineskip
\makebox[.6\linewidth]{}%
\fi
$$%%$$ BRACE MATCH HACK
\fi
}
因此,您应该进行更改\linewidth
,或者\[
使用重新定义\hsize
。尝试一下,您会看到警告消失。
这再次表明混合使用 LaTeX 和 TeX 代码有时会很危险。如果 TeX 命令(或长度)有 LaTeX 等效项,我更喜欢在编写 LaTeX 时使用 LaTeX 命令。
关于使用不同的宽度,这里有一些进一步的建议:\textwidth、\linewidth 和 \hsize 之间的区别。