计时器倒计时和进度条

计时器倒计时和进度条

我想创建一个包含计时器进度条的投影仪,如下所示: 在此处输入图片描述 在此处输入图片描述 在此处输入图片描述 (这些图片来自 powerpoint)

这是为我的学生准备的,每张幻灯片都是一个问题,所以我希望能够制作一个像上面一样的进度条,每张幻灯片上都有不同的计时器。

我尝试过使用蒂克兹动画包,但无法制作类似的东西。

我发现最好的解决方案是使用时钟制作一个计时器的包,但它是无法倒计时所以我们无法轻易知道还剩多少时间。

这是一个可编译的代码:

\documentclass[french]{beamer}
\usepackage{babel} 
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}

\usetheme{Warsaw}
\usecolortheme{beaver}

\usepackage{tikz}
\usepackage[font=Times,timeinterval=1, timeduration=2,resetatpages=all]{tdclock}

\begin{document}
\initclock
\begin{frame}
\begin{tikzpicture}[remember picture, overlay,shift={(current page.south west)}] 
\draw (11.8,8) node{\boxed{{\Huge\cronoseconds}}} ;
\draw (12,7.2) node{/45s} ;
\end{tikzpicture}
 \end{frame}
\end{document}

在此处输入图片描述

任何帮助都将不胜感激。谢谢。


编辑@samcarter 的答案 在此处输入图片描述

答案1

生成阴影的最简单方法是pgf(或tikz)。这也可以用于创建一个循环,循环执行 n 次不同的阴影迭代。然后可以使用 Beamer 自动显示每张幻灯片 1 秒\transduration{1}(这假设您的计算机速度无限快,不需要任何时间来渲染幻灯片。您可能需要用稍短的时间替换 1。)

\documentclass{beamer}

\usepackage{tikz}

\begin{document}

\begin{frame}

\transduration{1}

\foreach \x in {0,...,50}{\only<+>{

    \pgfdeclarehorizontalshading{myshade}{1em}{%
        color(0\textwidth)=(rgb:green,50;-green,\x;red,\x);
        color(\x*0.0175\textwidth)=(rgb:green,50;-green,\x;red,\x);     
        color(0.1\textwidth+\x*0.0175\textwidth)=(white);
      color(\textwidth)=(white)
    }
    \begin{pgfpicture}{0pt}{0pt}{\textwidth}{1em}
        \pgfpathrectangle{\pgfpointorigin}{\pgfpoint{\textwidth}{1em}}
    \pgfusepath{clip}
    \pgftext[left,base]{\pgfuseshading{myshade}}
    \pgftext[x=.9\textwidth,y=0.5em] {\x s / 50s}
  \end{pgfpicture}

}}

\end{frame}

\end{document}

在此处输入图片描述


快速将其移动到页面顶部:

\documentclass{beamer}

\usepackage{tikz}

\begin{document}

\begin{frame}[t]

\transduration{1}
\foreach \x in {0,...,50}{\only<+>{

    \pgfdeclarehorizontalshading{myshade}{1em}{%
        color(0\paperwidth)=(rgb:green,50;-green,\x;red,\x);
        color(\x*0.0179\paperwidth)=(rgb:green,50;-green,\x;red,\x);  
        color(0.1\paperwidth+\x*0.0179\paperwidth)=(white);
      color(\paperwidth)=(white)
    }
    \begin{tikzpicture}[remember picture, overlay,xshift=-1cm,yshift=0.3cm]
        \pgfpathrectangle{\pgfpointorigin}{\pgfpoint{\paperwidth}{1em}}
    \pgfusepath{clip}
    \pgftext[left,base]{\pgfuseshading{myshade}}
    \pgftext[x=.9\paperwidth,y=0.5em] {\x s / 50s}
  \end{tikzpicture}

}}

\end{frame}

\end{document}

在此处输入图片描述

相关内容