前言
用LaTeX直接生成的pdf文件,理论上是不能直接插入.gif文件的!但是有些原理图(GeoGebra作原理动图时)的确需要用动图的方式展示更加有直观。因此,我们可以退而求其次:将原始gif文件按帧数顺序拆分成一个个png文件,然后循环播放这些png文件即可。
因此,实现步骤可分为两大步:
- 将gif文件拆分成同帧数个数的一组png文件;
- 将这组png文件按顺序导入到pdf文件中即可。
相关软件/宏包:
- gif拆分软件:imagemagick 使用其中的convert.exe
- latex需要宏包:animate
第1步实现:gif的拆分
下载imagemagick软件后(windows下),找到其中的执行程序:convert.exe
convert.exe执行程序
将要拆分的.gif文件,和convert.exe放在一起;然后在cmd中进去二者所在的目录。输入命令:convert ceshi.gif images.png
说明:ceshi.gif是待转换的gif文件,后面images.png是自定的拆分后的文件名和文件类型。
cmd中转换命令
拆分后效果如下图,至此第一步gif拆分结束:
拆分效果(所在文件夹):按帧数拆分为一系列images.png文件
第2步实现:latex中加入这些png图片
所需宏包:animate
所在环境:无额外环境要求 (建议在center环境中,然其居中即可)
运行环境:xelatex即可
实现命令:\animategraphics[width=10cm,height=10cm, autoplay, loop, controls]{10}{images-}
关于命令参数的说明:
- width和height用cm作单位(A4纸:21cm×29.7cm)即可,大小自己控制;
- autoplay:增加自动播放功能;建议加上;
- loop:每秒播放多少张图(相当于帧数):后面的10就是每秒10张;
- controls:增加控制按钮(包括暂停、前进、后退等);建议加上;
- images-:那组png文件的文件名前缀,用来识别的。
\documentclass[UTF8]{article}
\usepackage{ctex}
\usepackage{tikz}
\usepackage{geometry}
\usepackage{animate}
\geometry{a4paper, margin = 1in}
\title{动图测试}
\author{GBY}
\date{\bf{\today}}
\begin{document}
\maketitle
\section{动图测试}
下面是关于傅里叶变换的动词插入测试:\\
~\\
\begin{center}
\animategraphics[width=10cm,height=10cm, autoplay, loop, controls]{10}{images-}{0}{59}
\end{center}
\end{document}
用好点的pdf阅读器打开生成的pdf文件,发现像动图一些播放:
pdf中动图效果
网友评论