ImageKit:Rust 编写的一个强大、快速且灵活的命令行工具,用于批量处理图片
ImageKit 是一个强大、快速且灵活的命令行工具,用于批量处理图片。它使用 Rust 编写,通过并行处理来最大化性能,让你能轻松地对整个目录的图片进行尺寸调整、质量控制和添加高度可定制的水印。
功能特性
- 批量处理: 递归地处理指定输入目录下的所有图片 (
.jpg,.jpeg,.png,.gif,.bmp,.webp)。 - 智能缩放:
- 如果只提供宽度,则自动按比例计算高度,保证图片不变形。
- 如果只提供高度,则自动按比例计算宽度。
- 质量控制: 使用
-q或--quality参数(1-100)微调输出质量,在文件大小和视觉保真度之间取得平衡。设置为100可获得最佳质量。 - 强大的水印功能:
- 多语言支持: 完美渲染混合文本水印,支持全球主要书写系统,包括拉丁文(用于英语、法语、西班牙语)、西里尔文(用于俄语)、泰文以及中日韩统一表意文字。
- 高度可定制: 在图片的九个标准位置添加文本,并自由设置字体大小。
- 自定义颜色: 通过十六进制色码(如
RRGGBB或RRGGBBAA)精确控制水印颜色和透明度。 - 智能缩放: 如果请求的水印对于图片来说过大,工具会自动缩小水印以确保其完整显示,永不裁切。
- ⚡ 极速性能: 利用 Rayon 库并行处理图片,充分利用多核 CPU 的性能。
- 跨平台: 可在 Windows, macOS, 和 Linux 上编译和运行。
🚀 使用方法
示例
示例 1: 添加包含中英文的水印
./target/release/imagekit \
-i example/img-src \
-o example/img-out \
--watermark-text "你好, World! - 印记"
示例 2: 缩放图片并以最高质量保存
如果你希望调整尺寸但不损失图片质量,请使用 --quality 100。
./target/release/imagekit -i example/img-src -o example/img-out --width 1024 --quality 100
示例 3: 添加一个不透明的黑色水印(使用默认质量 85)
./target/release/imagekit \
-i example/img-src \
-o example/img-out \
--watermark-text "@机密文件" \
--watermark-color 000000FF
📋 命令行选项
| 选项 | 标志 | 描述 | 必需/可选 | 默认值 |
|---|---|---|---|---|
| 输入目录 | -i, --input-dir |
包含需要处理的图片的源目录。 | 必需 | - |
| 输出目录 | -o, --output-dir |
用于存放处理后图片的目录。 | 必需 | - |
| 宽度 | --width |
(可选)调整图片的宽度。若不提供高度,则按比例缩放。 | 可选 | 原始宽度 |
| 高度 | --height |
(可选)调整图片的高度。若不提供宽度,则按比例缩放。 | 可选 | 原始高度 |
| 水印文字 | --watermark-text |
(可选)要添加的水印文字内容。 | 可选 | - |
| 水印位置 | --watermark-position |
(可选)水印在图片上的位置。 | 可选 | se |
| 字体大小 | --font-size |
(可选)水印文字的大小(单位:像素)。 | 可选 | 24 |
| 水印颜色 | --watermark-color |
(可选)水印颜色,格式为 RRGGBB 或 RRGGBBAA。 | 可选 | FFFFFF80 (半透明白) |
| 质量 | -q, --quality |
(可选)设置输出质量(1-100)。对于JPEG,影响压缩率;对于PNG,影响压缩速度。 | 可选 | 85 |
| 输出格式 | --output-format |
(可选)指定输出图片的格式。 | 可选 | 原始格式 |
watermark-position 的可用值:
nw: 左上,north: 中上,ne: 右上west: 中左,center: 居中,east: 中右sw: 左下,south: 中下,se: 右下
详情见:https://github.com/hzbd/imagekit/blob/master/README-zh.md
关注公众号
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
-
上一篇
OpenNJet v4.0.1.0 已经发布,云原生应用引擎
OpenNJet v4.0.1.0 已经发布,云原生应用引擎 此版本更新内容包括: 功能优化 规范modules下各个模块的config 文件使用 动态增加VS时,如果是新增端口,可以在listen_option中设置配置(目前不支持quic) 优化event框架,提高消息处理速度 优化njetmq编译脚本 proto_server模块修改为动态模块 Bug fix http/stream rr 算法backup 的tried 数组的越界问题 http/stream hash,random 算法遍历peers时越界问题 stream upstream zone 的内存分配失败时,service 字段的内存泄漏问题。 Goaccess 模块移除 njt_dynlog_parser.c njt_dynlog_parser.h 两个文件 libtcc1.a 跨平台拷贝路径问题 删除Dockerfile.ubuntu build_k8s.sh njet_sidecar.conf 多余文件 telemetry webserver模块编译告警问题 解决不规范使用njt_cycle->log的...
-
下一篇
【低代码 + AI 编程】GitHub Copilot 各个模型区别,实现高效编程
Copilot AI 模型对比说明 模型分类 🏆 高级模型 (需额外付费) 模型名称 相对成本 特点说明 Claude Haiku 4.5 0.33x 性价比最高,速度快,成本低 Claude Sonnet 3.5 1.0x 平衡性能与成本的主力模型 Claude Sonnet 4 1.0x 升级版本,能力更强 Claude Sonnet 4.5 1.0x 最新版本,综合表现优秀 GPT-5 1.0x 最强大旗舰,复杂推理能力顶尖 Gemini 2.5 Pro 1.0x 超长上下文,适合处理大量文本 📊 标准模型 (包含在基础套餐内) 模型名称 成本 特点说明 GPT-4.1 免费 GPT-4 优化版本 GPT-4o 免费 多模态专家,视觉语音交互强 GPT-5 mini 免费 GPT-5 轻量版,速度快 Grok Code Fast 1 免费 编程专用,代码生成优化 选择指南 根据需求推荐: 🚀 日常使用 推荐:GPT-4o 或 GPT-5 mini 场景:日常对话、简单写作、基础问答 💡 复杂任务 推荐:GPT-5 或 Claude Sonnet 4.5 场景:复杂推理、深...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- CentOS关闭SELinux安全模块
- Dcoker安装(在线仓库),最新的服务器搭配容器使用
- CentOS8编译安装MySQL8.0.19
- Windows10,CentOS7,CentOS8安装Nodejs环境
- SpringBoot2全家桶,快速入门学习开发网站教程
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- CentOS7,8上快速安装Gitea,搭建Git服务器


微信收款码
支付宝收款码