其他
Processing3.0 Gif动图导出技巧
很早前一篇文章中分享过制作 Gif 动图的技巧。
不少朋友反映,此方法无法支持 Processing3.0。特此补充一下在 3.0 版本下的导出方法。
在 Processing3.0 中若想直接导出 Gif 动图。需要用到 gifAnimation 模块。一般导入库的方式都是这样的。在菜单栏中选择 “ 速写本 - 引用库文件 - 添加库文件 ”
点开后会出现搜索窗口
在其中搜索 gifAnimation 便会出现相关的信息
但通过此方式搜索到的仍然是 2.0 的版本,无法直接下载使用。
我们需要到 github 上下载最新的 3.0 版本(此版本由 Jerome Saint-Clair 在原有的 2.0 基础上改写)。
下载后将文件名改为 gifAnimation 并放到 Processing 下面的 libraies 文件夹即可使用。
具体的调用技巧与之前的一致。使用的时候,可以将下面的代码整段粘在原代码前面。接着在原程序的 setup 和 draw 后面加上一条下划线。
import gifAnimation.*;
GifMaker exp;
void setup(){
size(600,600);
setup_();
exp = new GifMaker(this,"1.gif");
exp.setRepeat(0); //Gif重复播放的次数,0为循环播放
exp.setDelay(50); //设置帧与帧之间的延迟时间,单位为毫秒。数值为50时,帧率则为 20(1000/50)。
}
void draw(){
draw_();
if(frameCount % 1 == 0){ //每间隔多少帧,写入一次(相当于改变播放速率)
exp.addFrame(); //将当前帧写入文件内
}
}
void mousePressed(){
exp.finish(); //导出Gif
}
/////////////////////////
与之前的技巧略微有区别,若是此时直接点运行,程序是会报错的。
根据语法的错误提示,我们需要将 size 函数写在 setup 函数中(而不是我们定义的 setup_ 函数)
只要调整 size 的位置,程序就能正常运行 gifAnimation 模块,并导出各种 Gif 动图了。
Enjoy!