如何在 pdftexcmds 包中使用 pdf@strcmp?

如何在 pdftexcmds 包中使用 pdf@strcmp?

我尝试使用 pdf@strcmp 比较两个字符串,但出现错误:

! Undefined control sequence.
<argument> \pdf 
            @strcmp{abc}{abc}
l.6     \section{\pdf@strcmp{abc}{abc}}

以下是我想运行的操作:

\documentclass{report}
\usepackage{pdftexcmds}

\begin{document}
    \section{\pdf@strcmp{abc}{abc}}
\end{document}

我原本期望看到输出类似 0 的内容。据我所知,如果字符串相等,strcmp 将返回 0;如果 A < B,则返回 -1;否则,则返回 1。我已经安装了该oberdiek软件包,因此我相信我拥有所需的依赖项。

这看起来很简单,但我肯定忽略了一些显而易见的东西,那么,我该如何进行比较呢?

答案1

@要使用名称中带有 的宏,您必须\makeatletter先使用它来更改 at 符号 cat 代码。

以下代码可以工作:

\documentclass{report}
\usepackage{pdftexcmds}

\begin{document}
\makeatletter
    \section{\pdf@strcmp{abc}{abc}}
\makeatother    
\end{document}

在此处输入图片描述

\PS 您还忘了在命令前面加上。

相关内容