我想使用这样的语法:
\begin{itemize}
\pro An advantage
\con A disadvantage
\end{itemize}
其中\pro
和\con
替换\item
并且它们具有以下效果:根据给定的颜色为文本着色并将标记类型(可以使用进行全局设置\setbeamertemplate{itemize}[square]
)更改为复选标记或叉号。
目前我有以下内容,其工作足够接近,只是我不知道如何在宏内部本地更改标记类型:
\documentclass{beamer}
\newcommand{\pro}[1]{\item {\color{green}#1}}
\newcommand{\con}[1]{\item {\color{red}#1}}
\begin{document}
\frame{
\begin{itemize}
\pro{pro 1}
\con{con 1}
\begin{itemize}
\pro{pro in subitem}
\end{itemize}
\end{itemize}
}
\end{document}
宏的行为在子项内应该相同。
答案1
您可以使用可选参数来\item[]
设置标记。例如,
\documentclass{beamer}
\usepackage{pifont}
\newcommand{\pro}[1]{\item[\ding{52}] {\color{green}#1}}
\newcommand{\con}[1]{\item[\ding{56}] {\color{red}#1}}
\begin{document}
\frame{
\begin{itemize}
\pro{pro 1}
\con{con 1}
\begin{itemize}
\pro{pro in subitem}
\end{itemize}
\end{itemize}
}
\end{document}