新命令:默认可选值?

新命令:默认可选值?

鉴于beamer类别。

\newcommand<>...在序言中考虑。

其文档提到了“默认可选值”。

这是什么意思?

答案1

基本\newcommand语法允许您指定“可选参数”;它括在方括号中。您可以为该可选参数指定一个“默认值”,只要您没有通过提供可选参数来覆盖它,就会使用该默认值。比较:

\documentclass[12pt]{article}
%\newcommand{⟨command name⟩}[⟨argument number⟩][⟨default optional value⟩]{⟨text⟩}

\newcommand{\forexample}[2][default optional value]{Do something with \textbf{#1} and \emph{#2}}

\begin{document}
  Use my \forexample{no optional argument given}

  Use my \forexample[this overrides the DOV]{optional argument given}
\end{document}

beamer用其“覆盖规范”语法(即)扩展此语法<>。这允许您根据所处的“覆盖编号”使命令的行为有所不同。例如:

\documentclass[12pt]{beamer}
%\newcommand<>{⟨command name⟩}[⟨argument number⟩][⟨default optional value⟩]{⟨text⟩}

\newcommand<>{\forexample}[2][default optional value]{{\color#3{red}{Do something with \textbf{#1} and \emph{#2}}}}
% the extra braces in this example are to group the \color command.

\begin{document}
\begin{frame}
  Use my: \forexample<1>{no optional argument given}

  Use my: \forexample<3>[this overrides the DOV]{optional argument given} 
\end{frame}
\end{document}

在这里,您应该看到框架的第一行在“覆盖编号 1”上显示为红色,两条线在编号 2 上均显示为黑色,然后第二行(但不是第一行)在编号 3 上显示。

相关内容