带有文本的行超出了页面边框,如何防止?

带有文本的行超出了页面边框,如何防止?

梅威瑟:

\documentclass{scrartcl}
\RequirePackage[utf8]{inputenc}
\RequirePackage[T1]{fontenc}
\RequirePackage[a4paper,includeheadfoot,inner=2.4cm,outer=2cm,top=1.78cm,bottom=1.5cm,twoside,headheight=1.1cm,headsep=0.9cm,foot=1.2cm]{geometry}
\renewcommand{\familydefault}{\sfdefault}
\RequirePackage[varqu,varl]{inconsolata}

\setlength{\parskip}{0.3cm}
\setlength{\parindent}{0cm}

\begin{document}

Falls Sie von einer VerA.web-Version, die die Konfigurationsdateien
noch nicht in \texttt{/etc/veraweb} ablegt, aktualisieren, müssen Sie
dort zunächst (nur) die gegenüber den in der \texttt{veraweb.war}
ausgelieferten Dateien angepaßten Konfigurationen aus dem Verzeichnis
\texttt{/var/lib/tomcat7/webapps/veraweb/OCTOPUS/config\_*.xml}
Ihrer alten Installation hinkopieren.

\end{document}

(请注意,这些不是我们使用的实际页边距;我对其进行了调整,以展示标准字体的问题。)

渲染结果如下:

MWE 渲染

我怎样才能告诉 pdflatex(我们已经运行了两次)总是是否可以自动防止此类流失,但代价是周围行(字内或可能是悬挂行)的间距会稍微变差?

要清楚的是:我知道我可以稍微打乱段落中的文本来解决这个问题(我也这么做了),但这需要手动操作,而且更改文本以匹配格式并不是我认为 Teχ 的目的,所以我希望有一个自动解决方案(我仍然可以看到 PDF 输出中间距不好的地方并进行打乱顺序,但我不再会这样做了必需的手动审查每一个每次更改后从源构建的 PDF)。

答案1

看完之后这个答案详细说明哪个做什么,以及\sloppy内部做什么,我决定暂时采用以下步骤:

% Zu lange Zeilen
\emergencystretch 5em%

5 的价值埃姆可能太大了,但到目前为止并且从文档来看似乎并没有造成损害。

答案2

您需要说明如何获得足够的空白以使不可断开的字符串转到新行,有两种可能性,允许更大的单词间拉伸或允许在行尾留有空白。

在此处输入图片描述

\documentclass{scrartcl}
\RequirePackage[utf8]{inputenc}
\RequirePackage[T1]{fontenc}
\RequirePackage[a4paper,includeheadfoot,inner=2.4cm,outer=2cm,top=1.78cm,bottom=1.5cm,twoside,headheight=1.1cm,headsep=0.9cm,foot=1.2cm]{geometry}
\renewcommand{\familydefault}{\sfdefault}
\RequirePackage[varqu,varl]{inconsolata}

\setlength{\parskip}{0.3cm}
\setlength{\parindent}{0cm}

\begin{document}

{\sloppy
Falls Sie von einer VerA.web-Version, die die Konfigurationsdateien
noch nicht in \texttt{/etc/veraweb} ablegt, aktualisieren, müssen Sie
dort zunächst (nur) die gegenüber den in der \texttt{veraweb.war}
ausgelieferten Dateien angepaßten Konfigurationen aus dem Verzeichnis
\texttt{/var/lib/tomcat7/webapps/veraweb/OCTOPUS/config\_*.xml}
Ihrer alten Installation hinkopieren.

}

{\raggedright
Falls Sie von einer VerA.web-Version, die die Konfigurationsdateien
noch nicht in \texttt{/etc/veraweb} ablegt, aktualisieren, müssen Sie
dort zunächst (nur) die gegenüber den in der \texttt{veraweb.war}
ausgelieferten Dateien angepaßten Konfigurationen aus dem Verzeichnis
\texttt{/var/lib/tomcat7/webapps/veraweb/OCTOPUS/config\_*.xml}
Ihrer alten Installation hinkopieren.

}

\end{document}

相关内容