自定义 algorithmicx 使用的字体

自定义 algorithmicx 使用的字体

我使用algorithmicxXeTeX 排版我的算法。使用fontspec,我将默认字体设置为 Linux Libertine 和历史连字符(例如ctst)。不幸的是,这也是用来排版我的算法的字体algorithmicx,历史连字符在那里看起来非常不合适。

这可能是一个新手的问​​题,但是有没有办法自定义algorithmic环境中使用的字体,而不必在每个环境开始时指定自定义字体?

一个简单的解决方案是定义一个新的环境

\newenvironment{halgorithmic}
   { \begin{algorithmic}\algofont }
   { \end{algorithmic} }

并使用halgorithmic而不是algorithmic。有没有想到更清洁的方法?

答案1

您的解决方案干净清晰,我也许只希望不要将所有内容分成两组,而是直接调整环境:

\let\algorithmicOLD\algorithmic
\def\algorithmic{\algorithmicOLD\algofont}

现在您可以\begin{algorithmic}直接使用。优点是您不会使用错误的字体,从而获得错误的字体。

相关内容