Files
u-claw/portable/skills-cn/image-compress/SKILL.md
hfshfg 8bffa5d9d7 feat(portable): 预装国内渠道+本地模型自动发现+4个新技能
- release.yml 便携包离线预装 钉钉/飞书中国版/企业微信 插件(借鉴 openclaw-china 生态)
- config-server 新增 /api/local-models:自动探测 Ollama/LM Studio 本地模型(借鉴 RealShocky/openclaw-windows)
- Config.html 检测到本地模型自动生成卡片、免 Key 点选即用;新增钉钉渠道卡片
- skills-cn 新增 pdf-toolkit/web-to-markdown/qrcode-maker/image-compress(13→17)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-17 22:45:59 +08:00

51 lines
1.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
name: image-compress
description: "图片压缩/转换 - 批量压缩、改尺寸、转格式jpg/png/webp本地处理不失隐私"
metadata: { "openclaw": { "emoji": "🖼️" } }
---
# 图片压缩 / 转换
帮用户压缩图片体积、调整尺寸、转换格式,全部本地处理,照片不外传。
## 能力概述
- **压缩**:降低体积(控制质量/分辨率),适合发邮件、传微信
- **改尺寸**:按宽高或百分比缩放
- **转格式**jpg / png / webp 互转webp 体积最小)
- **批量**:处理整个文件夹
## 操作方式
用 Bash 工具Python 的 Pillow 库(跨平台、纯本地):
```bash
python -c "import PIL" 2>/dev/null || pip install -q Pillow
# 单张压缩(质量 75宽度限制 1600px 等比缩放)
python - <<'PY'
from PIL import Image
im = Image.open("input.jpg")
if im.width > 1600:
im = im.resize((1600, int(im.height*1600/im.width)))
im.convert("RGB").save("output.jpg", "JPEG", quality=75, optimize=True)
print("已压缩 -> output.jpg")
PY
# 批量:当前目录所有 jpg/png -> webp体积更小
python - <<'PY'
from PIL import Image
import glob, os
for f in glob.glob("*.jpg") + glob.glob("*.png"):
out = os.path.splitext(f)[0] + ".webp"
Image.open(f).save(out, "WEBP", quality=80)
print(f"{f} -> {out}")
PY
```
## 使用建议
- 处理前 `ls -lh` 看原图体积,处理后再 `ls -lh` 对比,告诉用户压缩了多少
- 默认不覆盖原图(输出新文件名),除非用户明确要求覆盖
- 含透明通道的 PNG 转 JPG 会丢透明,转 webp 可保留——按需选格式