“\hbox 过满”问题

“\hbox 过满”问题

这显示了有问题的代码

我遇到了溢出问题,但我不知道该如何解决。为什么

\rule{\textwidth}{0.6pt}\\[\baselineskip]   
\vspace{0.5cm}

如果文本不负责任,会给出过度错误吗?

答案1

我可以使用以下测试代码精确复制 OP 的问题:

\documentclass[12pt]{article}

\begin{document}

\rule{\textwidth}{0.6pt}

\end{document}

具体来说,我收到以下警告信息:

段落第 5-6 行的 \hbox 过满(宽了 17.62482pt)

请注意,这Overfull \hbox (17.62482pt too wide)也出现在 OP 报告的警告消息中。

\noindent解决办法是什么?我建议在指令之前立即发出指令\rule

最后的评论:不一定是文本会导致出现 overfull-hbox 警告;它也可以是水平规则。

答案2

溢出是由于段落缩进造成的。因此\rule前面应该加上\noindent

但是,当您flushleft按照该规则执行操作时,只需将规则放在其中即可。

这也\\[\baselineskip]\vspace{0.5cm}并不是很好的编程,\\无论如何都不应该在那种情况下使用:只需在规则后使用一个空白行,然后跟上所需的垂直空间量。

添加列来tabular获取空间也不是最好的方法:看看下面的代码,其中插入了列之间的特定距离。

\documentclass[a4paper]{book}

\newcommand{\printauthor}{A. Uthor}
\newcommand{\matnr}{176--761}
\newcommand{\abgabedatum}{July 38, 2043}


\begin{document}

\begin{flushleft}

\rule{\textwidth}{0.4pt}

\vspace{1cm}

\begin{tabular}{@{} l @{\hspace{2em}} l @{}}
\textbf{von:}         & \printauthor \\
                      & Matrikelnummer: \matnr \\
\textbf{Betreuer:}    & Dr.\ Daniel Brunner \\
\textbf{Abgabedatum:} & \abgabedatum
\end{tabular}

\end{flushleft}

\end{document}

根据您的喜好调整长度。

在此处输入图片描述

相关内容