如何打造定制的 itemize 环境

如何打造定制的 itemize 环境

有时在 beamer 中我喜欢使用 itemize 如下(代码主要来自https://topanswers.xyz/tex?q=1334):

\documentclass{beamer}
\setbeamersize{text margin left=10mm,text margin right=5mm} 
\setbeamertemplate{frametitle}[default][center]
\newenvironment{grayenv}{\only{\setbeamercolor{local structure}{fg=black!15}}}{}
\begin{document}
\begin{frame}{Frame Title}
\setbeamertemplate{itemize items}[circle]
\addtolength{\leftmargini}{-0.7cm}
\begin{itemize}[<+-|gray@+(1)->]
\setlength\itemsep{5pt plus 1fill}
\item line one
\item line two
\item<+-> line three
\end{itemize}
\end{frame}
\end{document}

这会使旧项目要点的项目要点标记淡出,并且还有其他一些我认为有用的功能。请注意,最后的 \item 必须有 <+->,这样我们就不会得到所有标记都为灰色的新幻灯片。

有没有办法创建一个新的环境myitemize来捕捉我定制的 itemize 环境的所有功能?

答案1

您需要\myitemize根据\itemize命令定义命令并在其中添加您的设置,\endmyitemize命令与 \enditemize

\documentclass{beamer}

\setbeamersize{text margin left=10mm,text margin right=5mm} 
\setbeamertemplate{frametitle}[default][center]
\newenvironment{grayenv}{\only{\setbeamercolor{local structure}{fg=black!15}}}{}
\setbeamertemplate{itemize items}[circle]

\addtolength{\leftmargini}{-0.7cm}

\newcommand{\myitemize}{\itemize[<+-|gray@+(1)->]
\setlength\itemsep{5pt plus 1fill}
\def\Item{\item<+->}
}
\let\endmyitemize\enditemize


\begin{document}
\begin{frame}{Frame Title}

\begin{myitemize}
\item line one
\item line two
\Item line three
\end{myitemize}

\end{frame}
\end{document}

相关内容