Question: As a follow up to [Highlighting specific parts of a TikZ drawing](https://tex.stackexchange.com/questions/23548/highlighting-specific-parts-of-a-tikz-drawing), I'd like to know how to generate an animated image (`gif`) from a series of `beamer` slides.

Martin Scharrer came up with this example:

![Drawing 1](https://i.stack.imgur.com/3w9Xr.gif)

Some hints on cropping the PDF file are also welcome. `=)`

Answer: 
For those who need non Beamer version, see the following.

LaTeX Input File:
-----------------

In this illustration I use PSTricks.

```
% travelingwave.tex
\documentclass{minimal}
\usepackage{pstricks-add,multido}
\newcommand\Left{0}
\newcommand\Bottom{-0.9}
\newcommand\Right{3.14}
\newcommand\Top{0.9}

\parindent=0pt
\paperwidth=\dimexpr\Right cm\relax
\paperheight=\dimexpr\Top cm - \Bottom cm\relax
\special{papersize=\the\paperwidth,\the\paperheight}
\topmargin=-72.27pt
\oddsidemargin=-72.27pt
\pagecolor{black}

\begin{document}
\multido{\r=0+7.5}{48}
{
    \begin{pspicture*}(\Left,\Bottom)(\Right,\Top)
    \psplot[plotpoints=300,algebraic,linecolor=yellow]{\Left}{\Right}{0.9*sin(2*(x-\r*Pi/360))}
    \end{pspicture*}\newpage
}
\end{document}

```

Batch File:
-----------

```none
rem compile.bat takes a LaTeX input file without extension.
echo off
latex %1
dvips -t unknown %1
gswin32c -dAutoRotatePages=/None -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile=%1.pdf %1.ps
convert -verbose -delay 25 -loop 0 -density 300 %1.pdf %1.gif
rem acrord32 %1.pdf
del %1.log
del %1.aux
del %1.dvi
del %1.ps

```

For the sake of simplicity, save both `travelingwave.tex` and `compile.bat` in the same directory. To compile, type `compile travelingwave` in DOS-command, and hit enter. Done!

Result:
-------

![enter image description here](https://i.stack.imgur.com/7TDPm.gif)

Notes:
------

1. See [ImageMagick v6 Examples -- Animation Basics](http://www.imagemagick.org/Usage/anim_basics/) for the detailed description about `convert`'s switches.
2. If `\pagecolor{<any-color-including-white>}` is disabled, we will get an effect as follows. 
![enter image description here](https://i.stack.imgur.com/Wf9DS.gif)
3. ImageMagick's `convert` invokes GhostScript `gswin32c.exe` behind the scene as follows.
![enter image description here](https://i.stack.imgur.com/I7dHQ.png)
After spending a few hours on ImageMagick with no result (I kept getting error messages), I decided to go for a Photoshop + Acrobat Pro solution. Here's how I did it.

---

Required software

* Acrobat Pro (I'm using Acrobat X), or any other PDF reader that allows you to export or save the PDF pages as images
* Photoshop (I'm using CS3, and presumably newer, or even slightly older, versions will work as well)

---

Steps:
------

1. Generate a PDF file of your Beamer slides
2. In Acrobat Pro, go to `File` > `Save as` > `Image` > `<select PNG or JPEG>`. In the pop-up window, select `Settings...` on the right, and under "Coversion" change "Resolution" to `600 pixels/inch` or above (the default resolution is very low). Then click `OK` and `Save`, and images of each page will be saved to the specified location as `<PDF_Name>_Page_#.png`.
3. Open Photoshop, go to `File` > `Script` > `Load Files into Stack`. `Browse` and select all the image files generated in step 2 and click `OK`. Now all the pages should be imported as layers of a Photoshop document.
4. Go to `Window` and select `Animation` to show the animate panel.
5. From the flyout menu in the top right of the animation panel, select `Make frames from layers`, and then `Reverse frames` to set the frames in correct order.
6. Select all the frames in the animation panel (click the first frame, and then `Shift`+click the last one), and choose a frame rate at the bottom right corner of any frame. You can also set the repeat option at the bottom left of the panel. Preview by clicking the play button.
7. Lastly, go to `File` > `Save for Web & Devices...` > `Save` (top right) > give it a name, and make sure to select `.gif` as the extension. Then we're done!

Note: If you want to crop the PDF file, then after step 6, select all layers in the layers panel, use the Crop Tool to crop the images.

![gif of string recognition](https://i.stack.imgur.com/1bphp.gif)

![gif of wave](https://i.stack.imgur.com/DPLAX.gif)