在 microtype 中,是否增加 '(撇号)周围的字距,但不增加 "(双引号)内的字距?

在 microtype 中,是否增加 '(撇号)周围的字距,但不增加 "(双引号)内的字距?

microtype 包(kerning=true)允许使用

\SetExtraKerning [ unit = space ] { encoding = {OT1,T1,LY1} }{ ' = {500, 400} }

增加撇号前 (500) 和撇号后 (400) 的字距。但是,这也会增大“”两半之间的间距。排版:

He said ``Oh dear!''.   

产生一个正常的左双引号和一个带空格的右双引号。我们如何避免这种副作用,同时保持原始效果,即具有更大字距的撇号?

我用了

\documentclass{book} 
\usepackage[OT1,T1]{fontenc}
\usepackage[utf8]{inputenc}      
\usepackage{MinionPro}      
\usepackage[british,french]{babel}
\usepackage[kerning=true]{microtype} 
\SetExtraKerning[ unit = space ]{ encoding = {OT1,T1,LY1} }{ ' = {500,400} }
\begin{document}

Linné's naming scheme. He said ``Oh dear!''.    

\end{document}

答案1

您可以使用textcmds具有双引号\ldq和命令的包,以及更简单的双引号命令来引用某些文本:\rdq\qq{...}

示例输出

\documentclass{book} 
\usepackage[OT1,T1]{fontenc}
\usepackage[utf8]{inputenc}      
\usepackage[british,french]{babel}
\usepackage[kerning=true]{microtype} 
\usepackage{textcmds}
\SetExtraKerning[ unit = space ]{ encoding = {OT1,T1,LY1} }{ ' = {500,400} }
\begin{document}

Linné's naming scheme. He said ``Oh dear!''. 

Linné's naming scheme. He said \ldq Excellent\rdq\ or better \qq{Excellent}

\end{document}

添加这不会关闭您之前拥有的任何功能,只是增加了对它们的更轻松访问。特别是如果您希望调整这些新的双引号的字距,只需添加适当的微类型规则即可。检查文件textcmds.sty会发现\ldq\textquotedblleft后者是微类型规则的字符规范所需要的。这是一个夸张的例子:

示例输出

\documentclass{book} 
\usepackage[OT1,T1]{fontenc}
\usepackage[utf8]{inputenc}      
\usepackage[british]{babel}
\usepackage[kerning=true]{microtype} 
\usepackage{textcmds}
\SetExtraKerning[ unit = space ]{ encoding = {OT1,T1,LY1} }{
  ' = {500,400},
  \textquotedblleft = {1000,1100},
  \textquotedblright = {1100,1000}
  }
\begin{document}

Linné's naming scheme. He said \ldq Excellent\rdq\ or better \qq{Excellent}.

\end{document}

顺便说一句,我希望你意识到

\usepackage[british,french]{babel}

成为french主要语言。如果你想british成为主要语言

\usepackage[main=british,french]{babel}

相关内容