您不能使用键将参数传递给命令吗?

您不能使用键将参数传递给命令吗?

我在大学使用自己的LaTeX序言,因此我相当习惯使用诸如 之类的工具创建宏xparse。但是,我不确定为什么我不能做一些事情来代表我在两张图片之间进行选择。

我的想法是,我有一个全局布尔值,用于将所有内容设置为“暗模式”,这是我在草稿中所使用的。本质上,重要的是我有

\setboolean{DARKMODE}{true}

我使用 SVG 稍微修饰一下我的论文(细节并不重要)。我有一个浅色和深色模式版本的 SVG,并使用包来svg实现这一点(我这样做是因为,据我所知,您无法从 中设置 SVG 的颜色LaTeX)。

目前,我有以下内容:

\newcommand{\AddSvgHeight}[1]{%
    \ifthenelse{\boolean{DARKMODE}}{%
        \includesvg[height=#1px]{MySvg_White}
    }{%                      
        \includesvg[height=#1px]{MySvg_Black}
    }
}

我想将参数(宽度)传递给\includesvg命令使用的高度键。但是,我收到错误:

包 scrbase 错误:未知选项高度=['.\OtherCommand

\OtherCommand使用该命令的命令在哪里。

我尝试了几种变体,但都存在相同或类似的问题。为什么会发生这种情况?我该如何定义此命令?

答案1

我肯定是打错了,因为我确定我这样做了,它按我想要的方式工作。我决定重试明显的解决方案:

\newcommand{\AddSvgHeight}[1][]{%
    \ifthenelse{\boolean{DARKMODE}}{%
        \includesvg[#1]{Pengu_White}%
    }{%                      
        \includesvg[#1]{Pengu_Black}%
    }%
}

它允许我使用任何键值选项,就我而言,这比手动传递它们更好。

相关内容