關於Beamer計數器的問題

關於Beamer計數器的問題

我正在嘗試創建一個definition基於的新編號環境exampleblock,但它沒有按預期工作。

我的程式碼:

% !TEX program = xelatex

\documentclass[serif, compress]{beamer}

\usetheme{Warsaw}
\useoutertheme{miniframes}

\begin{document}

\newcounter{definition}
\renewenvironment{definition}[1][]
    {\stepcounter{definition}\begin{exampleblock}{Definition\,\arabic{definition}}}
    {\end{exampleblock}}

\begin{frame}
    \onslide<1->
    \begin{definition}
        qwq1 % expected to be "Definition 1"
    \end{definition}
    \onslide<2->
    \begin{definition}
        qwq2 % expected to be "Definition 2"
    \end{definition}
\end{frame}

\end{document}

然而,幻燈片看起來像

在此輸入影像描述

有人可以告訴我如何\onslide正確使用計數器嗎?

答案1

無需嘗試重新發明輪子,只需使用在definition環境中建立的投影機並啟動定理數:

\documentclass{beamer}

\setbeamertemplate{theorems}[numbered]

\begin{document}

\begin{frame}
    \begin{definition}<1->
        qwq1 % expected to be "Definition 1"
    \end{definition}
    \begin{definition}<2->
        qwq2 % expected to be "Definition 2"
    \end{definition}
\end{frame}

\end{document}

在此輸入影像描述


如果這個環境的藍色definition讓你感到困擾,可以這樣改變:

\documentclass{beamer}

\setbeamertemplate{theorems}[numbered]


\BeforeBeginEnvironment{definition}{%
    \setbeamercolor{block title}{fg=white,bg=example text.fg!75!black}
    \setbeamercolor{block body}{fg=black, bg=block title.bg!10!bg}
}
\AfterEndEnvironment{definition}{
        \setbeamercolor{block title}{use=structure,fg=white,bg=structure.fg!75!black}
        \setbeamercolor{block body}{parent=normal text,use=block title,bg=block title.bg!10!bg}
}


\begin{document}

\begin{frame}
    \begin{definition}<1->
        qwq1 % expected to be "Definition 1"
    \end{definition}
    \begin{definition}<2->
        qwq2 % expected to be "Definition 2"
    \end{definition}
\end{frame}

\end{document}

相關內容