用途:就地压缩 PNG/JPEG 截图,保留原格式以获得最大兼容性,避免 WebP 在微信编辑器、Word、PowerPoint 等场景不受支持的问题。适合在为 GitHub README、博客、文档准备图片,提交仓库前瘦身,或批量压缩截图目录时使用。
主要能力:脚本按扩展名自动识别格式,逐个文件就地压缩(覆盖原文件),并输出单文件与总计压缩摘要;PNG 用 pngquant 将 24 位真彩量化为 8 位调色板(约 60-80% 缩减),JPEG 用 jpegoptim 按指定质量重编码并去除 EXIF、ICC 与缩略图等元数据(约 20-50% 缩减)。仅处理 .png、.jpg、.jpeg,其他格式静默跳过。
用法:需先安装 pngquant 与 jpegoptim,脚本不会自动安装,缺失时打印安装说明并退出。命令:python /path/to/skills/screenshot-compression/scripts/compress_screenshots.py <files-or-directories>。安装命令:macOS 用 brew install pngquant jpegoptim;Ubuntu/Debian 用 sudo apt install pngquant jpegoptim;CentOS/RHEL 用 sudo yum install pngquant jpegoptim。选项:位置参数 paths 必填;-r/--recursive 递归处理目录,默认关闭;--png-quality 默认 80-95;--jpeg-quality 默认 85。示例包括单文件、目录、递归、代码截图高质量(--png-quality 90-100)与缩略图激进压缩(--jpeg-quality 70)。
质量建议:一般截图 png 80-95、jpeg 85;代码截图 png 90-100、jpeg 90;缩略图 png 60-80、jpeg 70。
限制:压缩为就地覆盖,原文件会被重写,建议先备份;不处理 PNG/JPEG 以外格式;脚本不会代为安装系统依赖。