Baoyu Compress Image

🗜️ 智能图像压缩,一键瘦身优化

智能图像压缩工具,自动选择最优引擎(sips/cwebp/ImageMagick/Sharp)将图片转换为 WebP/PNG 格式,支持批量处理与灵活配置。

收藏
9.5k
安装
2.3k
版本
1.103.1
CLS 安全性认证2026-08-10
点击查看完整报告 >

使用说明

核心用法

baoyu-compress-image 是一款自动化图像压缩 CLI 工具,专为开发者和设计师打造。它采用多引擎降级策略,按优先级自动检测并调用系统可用工具:macOS 原生 sips → Google cwebpImageMagick → Node.js Sharp 库,确保跨平台兼容性。

主要功能

  • 格式转换:默认输出 WebP(现代浏览器最优格式),可选 PNG、JPEG
  • 质量可控:0-100 质量参数,默认 80 平衡画质与体积
  • 批量处理:单文件或递归目录处理,JSON 输出便于集成
  • 灵活保留:可选保留原文件,避免误覆盖

使用示例

# 单文件转 WebP
bun scripts/main.ts photo.png

# 目录批量压缩,质量 75
bun scripts/main.ts ./assets/ -r -q 75

# 保留原 PNG 格式
bun scripts/main.ts logo.png -f png --keep

显著优点

1. 引擎智能降级:无需手动安装依赖,系统自动匹配最优工具链
2. 跨平台支持:Bun 运行时驱动,兼容 macOS/Linux/Windows(WSL)

3. 可扩展配置:通过 EXTEND.md 支持项目级、用户级默认参数覆盖

4. 体积优化显著:典型场景 50-70% 压缩率,WebP 格式尤佳

潜在局限

  • 依赖外部运行时 Bun(或需 npx 回退),未预装时需首次配置
  • 引擎优先级固定,无法强制指定特定后端
  • Windows 原生环境需 WSL 或额外配置,非开箱即用
  • 暂不支持 GIF/AVIF 等新兴格式

适合人群

  • 前端开发者:优化 Web 资源加载性能
  • 设计师/UI 团队:批量导出素材
  • CI/CD 流程:自动化构建中集成图像优化
  • 个人用户:快速减小图片体积便于存储或分享

常规风险

| 风险项 | 说明 | 缓解建议 |
|--------|------|---------|
| 原文件覆盖 | 默认行为直接替换,无二次确认 | 始终使用 `--keep` 或先备份 |
| 质量损失 | 有损压缩不可逆 | 关键素材先用 `--quality 95` 测试 |
| 引擎缺失 | 若四引擎均未安装则失败 | 按提示安装 Bun 或 cwebp |
| 递归误操作 | `-r` 处理大量文件可能耗时 | 先在小目录验证 |

配置扩展

通过 EXTEND.md 可预设默认格式、质量、保留策略,支持三级作用域:项目目录 → XDG 配置 → 用户主目录,便于团队协作与个人习惯统一管理。

安全解读

核心用法

baoyu-compress-image 是一款命令行图像压缩工具,通过 TypeScript 脚本调用系统级图像处理引擎实现高效压缩。用户可通过 ${BUN_X} {baseDir}/scripts/main.ts <input> 执行单文件或目录批量处理,支持 WebP(默认)、PNG、JPEG 三种输出格式,质量参数 0-100 可调。

工具采用智能降级策略:优先尝试 macOS 原生 sips,其次调用 cwebp、ImageMagick,最终回退至 sharp npm 库,确保跨平台兼容性。递归处理(-r)、保留原图(-k)、JSON 输出(--json)等选项满足多样化场景需求。

显著优点

零隐私风险:完全离线运行,无网络请求,图像数据本地处理,通过 GDPR 六项合规检查。支持通过 EXTEND.md 自定义默认格式、质量参数和保留策略,灵活适配团队规范。

多引擎冗余:四层工具链 fallback 机制(sips→cwebp→ImageMagick→sharp)确保在不同操作系统和依赖环境下稳定工作。Bun 运行时支持带来极致启动速度,配合 npx 降级方案降低安装门槛。

开发友好:TypeScript 源码结构清晰,输出包含压缩比可视化(如"245KB → 89KB, 64% reduction"),便于 CI/CD 集成和日志审计。

潜在局限

依赖外部工具:需预装 sips(macOS 专属)、cwebp、ImageMagick 或 sharp 之一,Windows/Linux 用户可能需额外配置环境。T3 来源级别:个人开发者维护,更新频率和社区支持弱于企业级项目,长期维护存在不确定性。

路径验证不足:当前仅校验文件扩展名,缺乏路径遍历防护;异常退出时临时文件(.tmp)可能残留,需手动清理。无 GUI 界面:纯命令行交互,非技术用户上手成本较高。

适合人群

前端开发者:优化 Web 资源包体积,提升页面加载性能;设计师/摄影师:批量导出客户交付格式,控制作品集文件大小;运维/DevOps:集成至构建流水线,自动化处理用户上传内容;隐私敏感用户:拒绝云端图像处理服务,坚持本地数据处理原则。

使用风险

依赖安全风险:sharp 库涉及 C/C++ 原生绑定,需关注 libvips 系统依赖的漏洞公告,建议锁定版本并运行 npm audit子进程注入:虽输入参数已过滤,但自定义 EXTEND.md 配置时需谨慎验证路径来源。存储空间--keep 模式会生成 _original 备份文件,批量处理大目录时需注意磁盘容量规划。

Baoyu Compress Image 内容

scripts文件夹
手动下载zip · 4.7 kB
main.tstext/plain
请选择文件