我正在使用beamer
演示包并尝试结合这篇文章中的示例如何迭代以逗号分隔的列表?与beamer
包裹一起。
在修改上面的例子时,改变
\documentclass{beamer}
\usepackage{xparse}
\ExplSyntaxOn
\NewDocumentCommand{\makeenumerate}{ m }
{
\begin{frame}
\clist_map_inline:nn { #1 } { \frame \fbox{##1} }
\end{frame}
}
\ExplSyntaxOff
\begin{document}
\makeenumerate{a, b ,c, d, ,e }
\end{document}
我想让 abcd 和 e 都位于单独的 beamer 框架中。我不确定如何实现这一点,以及哪种遍历逗号分隔列表的方法最好,我已经尝试了所有方法,但都不起作用。
答案1
\frame
您目前遇到的一个问题是尝试在另一个中创建一个frame
。此外,\frame
接受一个参数,而您没有以正确的方式提供该参数。
这是实施etoolbox
将列表中的每个项目插入到单独的frame
:
\documentclass{beamer}
\usepackage{etoolbox}
\makeatletter
\newcommand\makeenumerate[1]{%
\forcsvlist{\makeenumerate@item}{#1}
}
\newcommand\makeenumerate@item[1]{%
\begin{frame}
\fbox{\Huge #1}
\end{frame}}
\makeatother
\begin{document}
\makeenumerate{a, b ,c, d, ,e }
\end{document}