在 Beamer 列表中创建自定义项目类型

在 Beamer 列表中创建自定义项目类型

我想使用这样的语法:

\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}

勾号和叉号

相关内容