Alinear tres figuras una al lado de la otra según el ancho del texto

Alinear tres figuras una al lado de la otra según el ancho del texto

Problema:

Estoy tratando de alinear tres figuras una al lado de la otra con el texto centrado en cada figura. Esto va bien hasta que el cuadro del tercer cuadro no se ajusta después del ancho del texto.

Ejemplo de trabajo mínimo (MWE):

\documentclass{article}
\usepackage{graphicx}
\usepackage{caption}

\begin{document}

\begin{figure}[!tbp]
  \centering
  \begin{minipage}[b]{0.2\textwidth}
    \includegraphics[width=\textwidth]{icon-password.eps}
    \caption*{Login system}
  \end{minipage}
  \hfill
  \begin{minipage}[b]{0.2\textwidth}
    \includegraphics[width=\textwidth]{icon-shopping.eps}
    \caption*{Shopping cart}
  \end{minipage}
  \hfill
  \begin{minipage}[b]{0.2\textwidth}
    \includegraphics[width=\textwidth]{icon-clock.eps}
    \caption*{Temporary information}
  \end{minipage}
\end{figure}

\end{document}

Salidas:

ingrese la descripción de la imagen aquí Resultado deseado:

Para ajustar el ancho después del texto, de modo que la "Información temporal" se pueda escribir en una línea en lugar de dos.

Respuesta1

Aquí hay una solución

\documentclass{article}
\usepackage{graphicx}
\usepackage{caption}

\newlength{\mtfiglength}

\newcommand{\mtfigure}[3][\textwidth]{%    #1 optional with of figure #2 caption  #3 image filename
\settowidth{\mtfiglength}{#2}%
\begin{minipage}[b]{\mtfiglength}
   \centering
   \includegraphics[width=#1]{#3}
   \caption*{#2}
\end{minipage}}

\begin{document}

\begin{figure}[!tbp]
\centering
  \mtfigure{Login system}{example-image-a}\hfill
  \mtfigure{Shopping cart}{example-image-b}\hfill
  \mtfigure{Temporary information}{example-image}
\end{figure}


\begin{figure}[!tbp]
\centering
  \mtfigure{Login system}{example-image-a}\hfill
  \mtfigure{Shopping cart}{example-image-b}\hfill
  \mtfigure[3cm]{Temporary information}{example-image}
\end{figure}

\end{document}

ingrese la descripción de la imagen aquí

información relacionada