animar controles como parte da imagem

animar controles como parte da imagem

Esta é uma pergunta "bom ter", eu acho:

Estou usando o animatepacote para mostrar uma sequência de capturas de tela da caixa de diálogo do software. Ao passar pela série, adicionei aquele painel de controles útil, mas de aparência feia (sim, tentei diferentes cores fg/bg... isso não melhorou a coisa). As capturas de tela são <BACK/NEXT>diálogos usuais.

É possível obter o comando de animação FORWARD/BACKWARD nessas áreas NEXT>e <BACKnos botões nas capturas de tela, de modo que - semelhante ao software real - o leitor deve clicar em 'NEXT' na captura de tela para obter a próxima foto e clicar em ' BACK' mostra a captura de tela anterior?

Espero que eu possa expressar isso de forma compreensível ...

Responder1

Este é um bom exemplo de uso da API JavaScript animatee do \mediabuttoncomando de media9.

Excelente do usuário Caramdirna imagempackage é usado para colocar os botões na animação. No entanto, temos que corrigir onimage.stypara não usar o \includegraphics.

Para que o código abaixo seja compilado, copie os arquivos de imagem de exemplo do pacote mwepara o diretório atual como

cp $TEXMF/tex/latex/mwe/example-image-a.png ./example-image-1.png
cp $TEXMF/tex/latex/mwe/example-image-b.png ./example-image-2.png
cp $TEXMF/tex/latex/mwe/example-image-c.png ./example-image-3.png

já que precisamos de imagens numeradas para \animategraphics.

insira a descrição da imagem aqui

\documentclass{beamer}

\usepackage{animate}
\usepackage{media9} % buttons via \mediabutton

%get it from http://bazaar.launchpad.net/~tex-sx/tex-sx/development/view/head:/onimage.dtx
\usepackage{onimage}

%patch onimage.sty not to use \includegraphics
\makeatletter
\def\tikzonimage@opt[#1]#2{%
    \begin{tikzpicture}
        %\node[inner sep=0] (image) {\includegraphics[#1]{#2}};
        \node[inner sep=0] (image) {#2};
        \begin{tikzonnode}{image}%
}
\makeatother

\begin{document}
\begin{frame}

  \begin{tikzonimage}{%
    \animategraphics[method=ocg,label=myGUI,step,nomouse,width=0.8\linewidth]{1}{example-image-}{1}{3}
  }[tsx/show help lines]
    \node at (0.8 , 0.8) [anchor=south east, inner sep=0pt, outer sep=0pt] {
      \mediabutton[
        jsaction={try{anim.myGUI.frameNum--}catch(e){}}
      ]{\fbox{\small\strut back}}};
    \node at (0.8 , 0.8) [anchor=south west, inner sep=0pt, outer sep=0pt] {
      \mediabutton[
        jsaction={try{anim.myGUI.frameNum++}catch(e){}}
      ]{\fbox{\small\strut next}}};
  \end{tikzonimage}  

\end{frame}
\end{document}

informação relacionada