# Timer chrono countdown and progress bar

I would like to create a beamer containing a progress bar for a timer looking like this : (these images are from powerpoint)

It's for my student, each slide is a question so I would like to be able to make a progress bar like above with a different timer on each slide.

I've tried to use the tikz and animate package but couldn't make something similar.

The best solution that I found is to use the tdclock package to make a chrono but it is impossible to countdown so we can't realy easily see how much time left.

Here is a compilable code :

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


Any help will be very apriciate. Thank you.

Edit for the answer of @samcarter

The easiest way to produce shadings is pgf (or tikz). This can also be used to create a loop over n different iterations of the shading. Beamer can then be used to automatically show each slide for 1 second using \transduration{1} (this assumes your computer is infinitely fast and does not need any time to render the slides. You might have to replace 1 with a slightly smaller time.)

\documentclass{beamer}

\usepackage{tikz}

\begin{document}

\begin{frame}

\transduration{1}

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

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[x=.9\textwidth,y=0.5em] {\x s / 50s}
\end{pgfpicture}

}}

\end{frame}

\end{document}


Quick hack to move it at the top of the page:

\documentclass{beamer}

\usepackage{tikz}

\begin{document}

\begin{frame}[t]

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

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[x=.9\paperwidth,y=0.5em] {\x s / 50s}
\end{tikzpicture}

}}

\end{frame}

\end{document}


• This is amazing! Great work! Thank you very much. Unfortunatly I have an error message at this end of the timer :"This page content an error". – Zanzi Dec 19 '18 at 19:40
• @Zanzi It compiles fine for me. Can you show your .log file? – user36296 Dec 19 '18 at 19:41
• It is not inside my tex editor that the error comes up but inside Adobe Reader, I make a screenshot but I can't share it inside the comment section so I will add it at the end of my post. – Zanzi Dec 19 '18 at 19:51
• @Zanzi Ah, I guess I might know what is going on, some rounding error in adobe reader. Try my updated answer. – user36296 Dec 19 '18 at 19:57
• @Zanzi Please see my update – user36296 Dec 19 '18 at 20:22