我使用LaTeX写了一份文档,采用双栏格式,11pt字号,Times字体。我的许多单词出现了连字符,每个描述列表项都会显示“badbox”警告(尽管输出中没有问题)。我该怎么解决这个问题?
我使用LaTeX写了一份文档,采用双栏格式,11pt字号,Times字体。我的许多单词出现了连字符,每个描述列表项都会显示“badbox”警告(尽管输出中没有问题)。我该怎么解决这个问题?
虽然可以通过更改TeX的要求或使用ragged选项来解决这个问题,但最好的方法是使用 microtype
包进行修复。只需加载该包即可解决问题:
\usepackage{microtype}
它提供了两个功能来改进段落排版:
您应该在导言区设置连字惩罚:
\hyphenpenalty=750
对于我在信纸上(8.5x11英寸)使用12磅字体的双栏布局,750的值正合适。根据您的需要调整该值。数字越高,连字符就会越少。您还可以查看hyphenat
包,它提供了不仅仅是连字符惩罚。
我一直只是使用\raggedright
,但我从未在整篇论文中使用过。 这个FAQ(这是我常用的LaTeX资源之一)推荐使用ragged2e
包。
哦,还有一个副注:除非我可以在输出中看到它们,否则我从不关注坏盒子。 这可能很愚蠢,但是LaTeX比我更挑剔。
根据另一篇文章的答案,我发现以下设置可以完美地防止断字,而不会难看:
\tolerance=9999
\emergencystretch=10pt
\hyphenpenalty=10000
\exhyphenpenalty=100
\tolerance=9999
允许尽可能多的空格。
\emerencystretch=10pt
允许每行有一些额外的空格。
\hyphenpenalty=10000
完全禁用连字符。
\exhyphenpenalty=100
允许使用已经存在的连字符。