用Ubuntu系统自带的截图很难抓好有动态效果的图片。有没有其它好用截图工具能截图gif动态图呢? 要是能截到.gif格式的动态图片那就更好啦。别急,Linux下也有简单好用的录制gif动态图的工具。
录制 gif 动画在很多时候都会派上用场。比如说,你需要向某个朋友演示软件的用法。现在有一个录制 GIF 动画的小工具值得大家试试,它的名字是 byzanz。
下面我就以Ubuntu 17.10下录制gif详细讲解过程,其他Linux发行版也一样简单。
先看效果图:
下载byzanz录制工具
可以使用图形界面的Ubuntu软件中心搜索byzanz或者通过apt-get下载。
命令:
linuxidc@linuxidc:~$ sudo apt-get install byzanz
[sudo] linuxidc 的密码:
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
下列软件包是自动安装的并且现在不需要了:
fonts-wine libieee1284-3:i386 libwine-development libwine-development:i386
ocl-icd-libopencl1:i386 wine32-development:i386 wine64-development
使用'sudo apt autoremove'来卸载它(它们)。
将会同时安装下列软件:
gstreamer1.0-libav
下列【新】软件包将被安装:
byzanz gstreamer1.0-libav
升级了 0 个软件包,新安装了 2 个软件包,要卸载 0 个软件包,有 92 个软件包未被升级。
需要下载 195 kB 的归档。
解压缩后会消耗 888 kB 的额外空间。
您希望继续执行吗? [Y/n] Y
获取:1 artful/universe amd64 gstreamer1.0-libav amd64 1.12.2-1 [110 kB]
获取:2 artful/universe amd64 byzanz amd64 0.3.0+git20160312-1 [85.1 kB]
已下载 195 kB,耗时 0秒 (564 kB/s)
正在选中未选择的软件包 gstreamer1.0-libav:amd64。
(正在读取数据库 ... 系统当前共安装有 216229 个文件和目录。)
正准备解包 .../gstreamer1.0-libav_1.12.2-1_amd64.deb ...
正在解包 gstreamer1.0-libav:amd64 (1.12.2-1) ...
正在选中未选择的软件包 byzanz。
正准备解包 .../byzanz_0.3.0+git20160312-1_amd64.deb ...
正在解包 byzanz (0.3.0+git20160312-1) ...
正在设置 gstreamer1.0-libav:amd64 (1.12.2-1) ...
正在设置 byzanz (0.3.0+git20160312-1) ...
正在处理用于 man-db (2.7.6.1-2) 的触发器 ...
正在处理用于 hicolor-icon-theme (0.17-1) 的触发器 ...
linuxidc@linuxidc:~$
安装完成后打开终端输入
linuxidc@linuxidc:~$ byzanz-record --help
用法:
byzanz-record [OPTION…] 录制您的当前桌面会话
帮助选项:
-?, --help 显示帮助选项
--help-all 显示全部帮助选项
--help-gtk 显示 GTK+ 选项
应用程序选项:
-d, --duration=SECS 动画的时间 (默认:10 秒)
-e, --exec=COMMAND Command to execute and time
--delay=SECS 开始之前的延时(默认:1 秒)
-c, --cursor 录制鼠标光标
-a, --audio 录音
-x, --x=像素 要录制矩形的 X 坐标
-y, --y=像素 要录制矩形的 Y 坐标
-w, --width=像素 录制矩形的宽度
-h, --height=像素 录制矩形的高度
-v, --verbose 详细
--display=显示 要使用的 X 显示
linuxidc@linuxidc:~$
其中我们重点关注几个参数
* -d 动画录制的时间,默认录制10秒
* -e 动画开始延迟
* -x 录制区域的起始X坐标
* -y 录制区域的起始Y坐标
* -w 录制区域的宽度
* -y 录制区域的高度
byzanz-record --delay=5 -d 20 -x 163 -y 64 -w 1076 -h 843 ~/a.gif
--delay=5 表示延迟5妙
如何知道自己要在屏幕录制区域的坐标以及高度?系统自带有命令工具,输入xwininfo会提示你选择一个窗口,点击之后会返回这个窗口的详细信息 。测试机器的信息如下图
linuxidc@linuxidc:~$ xwininfo
xwininfo: Please select the window about which you
would like information by clicking the
mouse in that window.
xwininfo: Window id: 0x9b (has no name)