问题是:如何全局设置要执行的跟踪量microtype
的\textls
命令?
更多细节:
该microtype
包提供了设置字母间距的选项。这称为letterspacing
或tracking
。microtype
将自动执行此操作,仅适用于直立小写字母,而不适用于全大写字母或斜体小写字母。但是,可以使用命令手动设置\textls
,请参阅以全大写字母和斜体小写字母进行跟踪了解详情。
为了避免每次使用命令时都必须指定跟踪量\textls
,如上面链接的问题所示,我想使用 全局设置它\SetTracking
。参见microtype
下的手册5.3
:
\SetTracking 命令允许指定不同字体或字体集的跟踪量。它也将由 \textls 命令评估 [...]。
此命令的结构为\SetTracking[<options>]{<set of fonts>}{<tracking amount>}
,请参阅5.3
。<set of fonts>
在 手册中对此进行了说明4
,其中写道:
如果属性列表为空或缺失 [...],则不构成限制。换句话说,这相当于为该属性指定所有可能的值。
鉴于此,应该可以使用它来设置调用\SetTracking{}{<tracking amount>}
时使用的跟踪量。\textls
但是,出于某种原因,这不起作用。在下面的 MWE 中,该命令\SetTracking{}{500}
似乎被忽略了。似乎只有设置letterspace = 50
为microtype
选项才会被评估。
问题:如何全局设置要执行的跟踪量\textls
?
\documentclass{article}
\usepackage[tracking = true, letterspace = 50]{microtype}
\SetTracking{}{500}
\usepackage{libertine}
\begin{document}
\textls{ABCD} \textsc{abcd} \textls[500]{\textit{ABCD \textsc{abcd}}}
\end{document}
答案1
\documentclass{article}
\usepackage[tracking = true, letterspace = 50]{microtype}
\SetTracking{encoding=*}{500}
\SetTracking{encoding=*, shape=sc}{50}
\usepackage{libertine}
\begin{document}
\textls{ABCD} \textsc{abcd} \textls[500]{\textit{ABCD \textsc{abcd}}}
\end{document}