如果我们比较这三行文本
Linné's naming scheme.
{Linné'}s naming scheme.
{{Linné}'}s naming scheme.
在 MinionPro 中排版,然后查看最终的 pdf
我们注意到只有最后一行导致了勉强可以接受的结果。原因是:MinionPro 有错误的撇号字距调整设置。(事实上,这些设置非常糟糕,以至于带有许多撇号的语言,例如法语,根本无法使用标准 MinionPro 包进行排版。)
最好的解决方案是改进 MinionPro。但不幸的是,这个软件包没有得到维护。地下存在一个支持撇号的 MinionPro 版本,但它是一种 hack。
有没有办法调整撇号的字距在乳胶宏中(我使用 dvi-ps-pdf 路线,带有 MinionPro 和 microtype、pdflatex 和 texlive 2014;字体是 .pfb,因此不是 opentype,而是 postscript。)
我尝试了建议
\SetExtraKerning
[ unit = space ]
{ encoding = {OT1,T1,LY1} }
{
' = {3000, }
}
但没有成功。
PS 一个最小的例子是这样的:
\documentclass{book}
\usepackage[OT1,T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{MinionPro}
\usepackage[british]{babel}
\usepackage{microtype}
\begin{document}
Linné's naming scheme.
{Linné'}s naming scheme.
{{Linné}'}s naming scheme.
\end{document}
PPS MinionPro 中的字形“(双引号)的字距调整存在一个相关但较小的问题。
答案1
解决方案是使用MinionPro
选项加载loosequotes
\usepackage[loosequotes]{MinionPro}
梅威瑟:
\documentclass{book}
\usepackage[OT1,T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[loosequotes]{MinionPro}
\usepackage[british]{babel}
\usepackage{microtype}
\begin{document}
Linné's naming scheme.
{Linné'}s naming scheme.
{{Linné}'}s naming scheme.
\end{document}
来自MinionPro
手册:
loosequotes
MinionPro 的引号设置得相当紧。这会导致撇号
loosequotes
的间距不理想。此选项会稍微增加引号的侧边距。此选项需要 pdfTEX 1.40 和 microtype 2.0。请注意,此选项会阻止对包含撇号的单词进行连字。此类单词需要显式连字命令\-
。
如果要使用该\SetExtraKerning
功能,您必须加载microtype
该选项kerning=true
\usepackage[kerning=true]{microtype}
梅威瑟:
\documentclass{book}
\usepackage[OT1,T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{MinionPro}
\usepackage[british]{babel}
\usepackage[kerning=true]{microtype}
\SetExtraKerning
[ unit = space ]
{ encoding = {OT1,T1,LY1} }
{
' = {3000, }
}
\begin{document}
Linné's naming scheme.
{Linné'}s naming scheme.
{{Linné}'}s naming scheme.
\end{document}
为了完整性,如果要更改该字符前后的间距,请使用类似
\SetExtraKerning
[ unit = space ]
{ encoding = {OT1,T1,LY1} }
{
' = {500, 400}
}
其中500
表示间距前和400
间距后字符(以 的千分之一为单位1em
)。