不到300K的GIF图片处理神器,牛逼!
大家好,我是爱撸码的开源大叔!
大家是否有过这种经历:
找了半天终于找到合意的 GIF 图片,太大微信/QQ 发不出去...
好不容易给 PPT 文案录制好了满意的 GIF 动画,领导要求修改尺寸和大小...
那一定要试试大叔今天推荐的这个项目 - Gifsicle ,绝对好用。
项目介绍
Gifsicle 是一个功能强大的跨平台命令行工具,可以对 GIF 文件进行修改尺寸大小、颜色、帧率等操作。目前软件在 GitHub 上开源,收获了近 3Kstar。
安装
进入官方网站,找到对应的系统及版本下载安装即可。
Linux / Mac 当然也可以直接用命令行进行安装。
#Debian
apt-get install gifsicle
#Ubuntu
apt-get install gifsicle
#CentOS
yum install gifsicle
#Alpine
apk add gifsicle
#Arch Linux
pacman -S gifsicle
#Kali Linux
apt-get install gifsicle
#Fedora
dnf install gifsicle
#OS X
brew install gifsicle
#Raspbian
apt-get install gifsicle
#Docker
docker run cmd.cat/gifsicle gifsicle
大叔这边使用的是 win10 64 位的系统,下载对应的 zip 文件。
下载好之后解压出来即可,里面有三个文件,其中的 gifsicle.exe 程序就是我们需要用到的。
使用
Gifsicle 命令语法:
gifsicle [options, frames, and filenames]...
这里介绍关于 GIF 的常用编辑命令:
- 1、压缩GIF
gifsicle -O3 old.gif -o new.gif
(注:O3 中第一个为大写字母 O,第二个为数字 3;-o 参数指的是输出图片,o 为字母)
这条命令让程序自动帮你优化压缩方案,在画质和体积之间取得平衡,并且第一帧之后的每一帧都能得到优化。
old.gif
new.gif
能看出来差别吗?
- 2、按比例缩小
gifsicle old.gif --scale 0.5 -o new.gif
--scale 0.5 指的是图片的宽和高缩小为原来的 0.5 倍,也可以是 0.8,1.5 倍等等
- 3、自定义缩小尺寸
gifsicle old.gif --resize 500x300 -o new.gif
--resize 500x300 指的是图片的宽和高改为 500x300,同样尺寸也可以自定义。
- 4、修改图片颜色
gifsicle.exe -O3 old.gif -o new.gif --colors 256
--colors 256 指的是使用调色盘的长度,可以是 256,128,64,32,16,8,4,2 中的任意一个。数字越小,压缩程度越大,图片质量的也更差。
多说无用,自己感受一下区别
--colors 16
--colors 4
--colors 2
- 5、其他的一些实例
该工具还可以制作生成 GIF 动画,甚至对 GIF 每一帧进行编辑操作。
制作 GIF 动画:
gifsicle --delay=10 --loop *.gif > anim.gif
从动画中提取帧:
gifsicle anim.gif '#0' > firstframe.gif
删除动画某一帧:
gifsicle -b anim.gif --delete '#0'
替换编辑动画某一帧:
gifsicle -b anim.gif --replace '#0' new.gif
linux 也差不多。
更多参数可以执行命令:
gifsicle.exe --help
相关文章
- img图片加载失败时的处理
- js 图片加载失败处理方法「建议收藏」
- python怎样读取文件夹里的图片_python图片处理及识别
- Python图片处理入门
- OpenCV这么简单为啥不学——1.13图片冷白皮(美白)处理
- 领先图片编辑工具:Lightroom 2022 让您的照片处理更加高效
- ORA-30774: Library “string” was erroneously defined as a trusted library for opaque types ORACLE 报错 故障修复 远程处理
- ORA-49426: Directory inside ADR not allowed ORACLE 报错 故障修复 远程处理
- MySQL Error number: MY-010847; Symbol: ER_BINLOG_FAILED_TO_REINIT_REGISTER_FILE; SQLSTATE: HY000 报错 故障修复 远程处理
- ORA-10656: Table is in unusable state due to incomplete operation ORACLE 报错 故障修复 远程处理
- ORA-12335: database (link name string) is not open ORACLE 报错 故障修复 远程处理
- ORA-14450: attempt to access a transactional temp table already in use ORACLE 报错 故障修复 远程处理
- ORA-16272: PL/SQL procedure skipped due to skip setting ORACLE 报错 故障修复 远程处理
- ORA-19175: FORX0002: invalid regular expression ORACLE 报错 故障修复 远程处理
- MySQL Error number: MY-012475; Symbol: ER_IB_MSG_650; SQLSTATE: HY000 报错 故障修复 远程处理
- Linux之神——完美图片编辑工具全攻略(linux图片处理)
- 轻松创建nodejs服务器(10):处理上传图片