使用 TikZ(LaTeX)在 PDF 中预览视频图片

使用 TikZ(LaTeX)在 PDF 中预览视频图片

我使用 TikZ/PGF 为 PDF 论文(不是 Beamer)制作了一个动画。问题是,当文档的阅读器不是 Adob​​e(例如 Mendeley - 一个用于管理和共享研究论文的免费程序 - 或 CorelDraw - 一个矢量图形编辑器程序)时,它看到的是“白洞”而不是视频(甚至不会出现视频的预览图)。

我的问题是:我该如何为那些不支持视频动画的 PDF 阅读器做些改进?我至少希望出现预览图而不是视频。

当我直接从 Gmail 打开带有这些动画的 PDF 文档时,视频不会出现,而是出现预览图而不是视频。但使用其他阅读器时,只会出现“白洞”而不是它。


例子:

\documentclass[10pt,oneside,a4paper]{article}

\usepackage{ifthen}
\usepackage{fp}                     % Calculos numéricos
\usepackage{textcomp,tikz}
\usetikzlibrary{%
    decorations.pathreplacing, %
    decorations.pathmorphing, %
    snakes
}
\usepackage{pgfplots}
\usepackage{rotating}
\usepackage{animate}

\newcommand{\tkApoyo}[4]{

    \tikzstyle{triangulo} =[line width=1pt, color=black, fill=gray]
    \tikzstyle{circulo} =[line width=1pt, color=black, fill=gray]
    \tikzstyle{base}=[snake=border, line width=1pt, raise snake=-6pt,segment length=5pt, segment amplitude=8pt, segment angle=45, color=black]

    \def\tkX{#2}
    \def\tkY{#3}
    \def\tkInc{0.6cm} 
    \def\tkRad{0.1cm}      

    \pgfmathparse{\tkInc*cos(60+#4)}    \let\tkIncX\pgfmathresult
    \pgfmathparse{\tkInc*sin(60+#4)}    \let\tkIncY\pgfmathresult

    \ifthenelse{\equal{#1}{fijo}}{

        \coordinate (D0) at (\tkX, \tkY);                                     
        \coordinate (D1) at ([xshift=\tkIncX, yshift=-\tkIncY] D0);           
        \coordinate (D2) at ([xshift=-\tkIncX, yshift=-\tkIncY] D0);          
        \coordinate (D3) at ([xshift=-1.65*\tkIncX, yshift=-\tkIncY] D0);     
        \coordinate (D4) at ([xshift=1.72*\tkIncX, yshift=-\tkIncY] D0);      
        \coordinate (D5) at ([xshift=-2.0*\tkIncX, yshift=-\tkIncY] D0);      
        \coordinate (D6) at ([xshift=1.9*\tkIncX, yshift=-\tkIncY] D0);       

        \draw[triangulo] (D0) -- (D1) -- (D2) -- cycle;
        \draw[circulo] (D0) circle (\tkRad);
        \draw[triangulo] (D3) -- (D4);
        \draw[base] (D5) -- (D6);
    }{

    }
}

\date{}

\newcounter{tiempo}
\setcounter{tiempo}{0}

\begin{document}
\thispagestyle{plain}

    \def\miPi{3.141592654}
    \def\f{1}
    \def\L{4.5}
    \def\A{2.2}

\tikzstyle{viga} =[line width=3pt, color=gray]
\tikzstyle{modo1} =[line width=1.5pt, color=red]

\begin{minipage}[t]{0.49\textwidth}
    \setcounter{tiempo}{0}
    \begin{animateinline}[autopause, loop, poster = first]{10}       % [loop, poster = first, controls]
      \whiledo{\thetiempo<58}{
        \begin{tikzpicture}[scale=1]
            \clip (-0.6,-\A-0.1) rectangle (\L+0.5,\A+0.1);

            \begin{scope}[scale=1]
                \draw [viga] (0,0) -- (\L,0);
                \tkApoyo{fijo}{0}{0}{0}
                \tkApoyo{fijo}{\L}{0}{0}

                \draw[modo1] plot[smooth,domain=0:\L] (\x, {\A*cos(2*\miPi/\f*\thetiempo)*sin(\miPi*\x/\L r)});
            \end{scope}
        \end{tikzpicture}
        \stepcounter{tiempo}
        \ifthenelse{\thetiempo<58}{
                \newframe
        }{
                \end{animateinline}\relax
        }
     }
\end{minipage}

\end{document} 

相关内容