重新定义 \bfseries 命令

重新定义 \bfseries 命令

我正在尝试重新定义\bfseries为一个间隔命令。最简单的方法是将其重新定义为\so来自包的宏soul。问题是,\so需要一个参数(因此类似于\textbf)。

有没有一种好的方法可以获得具有该\bfseries语法的宏,它可以产生字母间距输出(并且还能保证稳健性)?

答案1

您可以\lsstyle从 microtype 包中使用:

\documentclass[a4paper,12pt]{article}
\usepackage{microtype}
\begin{document}

{\lsstyle some text letterspaced} some text not letterspaced

\end{document}

在此处输入图片描述

使用 xelatex 您可以执行类似的操作(您可以定义自己的命令,而不是重新定义 \lsstyle):

\documentclass[a4paper,12pt]{article}
\usepackage{fontspec}
\setmainfont{Latin Modern Roman} %needed for addfontfeature
\usepackage{microtype,ifxetex}
\ifxetex
 \AtBeginDocument{\renewcommand\lsstyle{\addfontfeature{LetterSpace=5}}}
\fi 
\begin{document}

{\lsstyle some text letterspaced} some text not letterspaced

\end{document}

在此处输入图片描述

相关内容