biblatex 中的水平盒溢出

biblatex 中的水平盒溢出

我刚刚在使用 biblatex 处理较长的作者和标题时遇到了一个问题:输出超出了文本的右边距,因为 biblatex 没有在日期前插入换行符。请看下面的图片,看看我到底在说什么。

水平盒过满

黑框是由于 drafts 选项造成的;虽然您无法真正看到文本比其他行长,但当我添加其他引用时,这一点清晰可见(这是一个最小示例)。如您所见,我使用的是 babel 和 ngerman,如果没有这个包,日期 ( Mar. 19, 2014) 也可以正常工作,不会出现水平框过满的情况。

这是上面输出的代码:

\documentclass[draft, 12pt]{article}
\usepackage[backend=bibtex, style=alphabetic]{biblatex}\addbibresource{bibliography.bib}
\usepackage{filecontents}
\begin{filecontents*}{bibliography.bib}
@ONLINE{first,
  author = {Das ist der erste Autor},
  title = {Viel zu lange Quellenangabe im Literaturverzeichnis},
  date = "2014-03-19"
}
@ONLINE{second,
  author = {Other Author},
  title = {Reference},
  date = "2014-03-19"
}
\end{filecontents*}
\usepackage[a4paper, hmargin={40mm, 20mm}]{geometry}
\usepackage[ngerman]{babel}
\usepackage{newtxtext}
\begin{document}
\cite{first}\cite{second}
{\renewcommand*{\bibfont}{\small}
\printbibliography
}
\end{document} % <-- this is line 23

Biblatex 报告了此警告:

Overfull \hbox (0.29396pt too wide) in paragraph at lines 23--23
[]\T1/ntxrx/m/n/10.95 Das ist der ers-te Au-tor. \T1/ntxrx/m/it/10.95 Viel zu lan-ge Quel-len-an-ga-be im Li-te-ra-tur-ver-zeich-nis\T1/ntxrx/m/n/10.95 . 19. März|
 []

我已经尝试使用 biblatex 和 上的各种选项microtype,但都不起作用。我无法更改字体、大小和边距。

仅当我引用第二个参考文献时才会出现此问题,因此我在我的 MWE 中包含了其中两个。

您是否知道如何让 biblatex 在日期前包含换行符或以其他方式调整行以使文本不再超出右边距?

答案1

将以下内容添加到您的序言中:

\emergencystretch=1em

这样允许进行额外的换行,并且每行“可容忍”的空白量增加 1em。

或者,按照 Ulrike Fischer 的建议,使用包选项加载microtype包,final以确保即使在使用draft类选项时也能激活微印刷功能。

这两种方法都会导致示例中的警告消失。

相关内容