部分页面内容超出页面边界

部分页面内容超出页面边界

我们创建了这样的文件:

\documentclass[a5paper]{report}
%\usepackage[showframe, margin=1cm]{geometry}

\usepackage[pdftex,colorlinks=true,allcolors=blue]{hyperref}

\begin{document}

    \paragraph{Aaaaaaaaaa bbbbbbbbbbbbbbbbbb ccccccccccccc dddddddddddddddd eeeeeeeeeeeeeeeee}

    Aaaaaaaaaaaaaaaaaaaaaaaaaa bbbbbbbbbbbbbbbbbbbbbb ccccccccccccc ddddddddddddddd eeeeeeeeeeeeeeeee.

    \url{http://example.com/aaaaaaaaaaaaaaaaa_bbbbbbbbbb_cccccccccccccccc_ddddddddd_eeeeeeeee}

\end{document}

当我使用命令将其转换为 pdf 时pdflatex -synctex=1 -interaction=nonstopmode "latex-experimenting".tex(实际上 TeXstudio 就是这样做的),我得到了这样一个文件:

文件格式错误

起初我以为只有使用包时才会出现该问题geometry,但是没有使用该包我也重现了该问题。

我并不要求这些“假词”用部分连字符连接,只要在需要时将它们移到下一行,我就满意了。

我究竟做错了什么?

答案1

您可以尝试使用参数\emergencystretch\tolerance。它们会影响段落如何分成行。

基本上,命令\sloppy和的作用是\fussy
\sloppy增加\tolerance\emergencystretch重置
\fussy这些参数的 LaTeX 默认值。
\hfuzz\vfuzz也会改变,但这不会影响生成的 .pdf 文件的外观。这会影响 TeX 何时打印由于框已满而导致的错误消息。)

大卫·卡莱尔 (David Carlisle) 的这些解释可能会引起人们的兴趣。

\documentclass[a5paper]{report}
%\usepackage[showframe, margin=1cm]{geometry}

\usepackage[pdftex,colorlinks=true,allcolors=blue]{hyperref}

\makeatletter
\newcommand*\avoidhyphens{%
  \emergencystretch\hsize
  \tolerance 200%
  \hfuzz .1\p@
  \vfuzz\hfuzz
}%
\makeatother

\begin{document}
    \hrule height 0pt width 0pt depth 0pt
    \kern-1in
    \kern-\topmargin
    \kern-\headheight
    \kern-\headsep
    %\kern-\topskip
    \vfill\verb|\fussy| is default:\vfill

    % The sectionng command "\paragraph" creates a vertical gap of 3.25ex with report. Let's remove that:
    \kern-3.25ex
    \paragraph{Aaaaaaaaaa bbbbbbbbbbbbbbbbbb ccccccccccccc dddddddddddddddd eeeeeeeeeeeeeeeee}

    Aaaaaaaaaaaaaaaaaaaaaaaaaa bbbbbbbbbbbbbbbbbbbbbb ccccccccccccc ddddddddddddddd eeeeeeeeeeeeeeeee.

    \url{http://example.com/aaaaaaaaaaaaaaaaa_bbbbbbbbbb_cccccccccccccccc_ddddddddd_eeeeeeeee}

    \vfill\verb|\avoidhyphens|:\vfill

    \avoidhyphens
    \kern-3.25ex
    \paragraph{Aaaaaaaaaa bbbbbbbbbbbbbbbbbb ccccccccccccc dddddddddddddddd eeeeeeeeeeeeeeeee}

    Aaaaaaaaaaaaaaaaaaaaaaaaaa bbbbbbbbbbbbbbbbbbbbbb ccccccccccccc ddddddddddddddd eeeeeeeeeeeeeeeee.

    \url{http://example.com/aaaaaaaaaaaaaaaaa_bbbbbbbbbb_cccccccccccccccc_ddddddddd_eeeeeeeee}

    \vfill\verb|\sloppy|:\vfill

    \sloppy
    \kern-3.25ex
    \paragraph{Aaaaaaaaaa bbbbbbbbbbbbbbbbbb ccccccccccccc dddddddddddddddd eeeeeeeeeeeeeeeee}

    Aaaaaaaaaaaaaaaaaaaaaaaaaa bbbbbbbbbbbbbbbbbbbbbb ccccccccccccc ddddddddddddddd eeeeeeeeeeeeeeeee.

    \url{http://example.com/aaaaaaaaaaaaaaaaa_bbbbbbbbbb_cccccccccccccccc_ddddddddd_eeeeeeeee}

    \vfill\verb|\fussy|:\vfill

    \fussy
    \kern-3.25ex
    \paragraph{Aaaaaaaaaa bbbbbbbbbbbbbbbbbb ccccccccccccc dddddddddddddddd eeeeeeeeeeeeeeeee}

    Aaaaaaaaaaaaaaaaaaaaaaaaaa bbbbbbbbbbbbbbbbbbbbbb ccccccccccccc ddddddddddddddd eeeeeeeeeeeeeeeee.

    \url{http://example.com/aaaaaaaaaaaaaaaaa_bbbbbbbbbb_cccccccccccccccc_ddddddddd_eeeeeeeee}

    \vfill\verb|\raggedright|:\vfill

    \begingroup\raggedright
    \kern-3.25ex
    \paragraph{Aaaaaaaaaa bbbbbbbbbbbbbbbbbb ccccccccccccc dddddddddddddddd eeeeeeeeeeeeeeeee}

    Aaaaaaaaaaaaaaaaaaaaaaaaaa bbbbbbbbbbbbbbbbbbbbbb ccccccccccccc ddddddddddddddd eeeeeeeeeeeeeeeee.

    \url{http://example.com/aaaaaaaaaaaaaaaaa_bbbbbbbbbb_cccccccccccccccc_ddddddddd_eeeeeeeee}

    \endgroup
    \vfill

\end{document}

在此处输入图片描述

相关内容