Skills

Image Editing

通用图像处理加工:改尺寸/缩放、裁剪、补边适配平台尺寸、格式转换(png/jpg/webp)、 压缩到目标大小、加文字或图片水印、圆角、多图拼接、生成缩略图、读图片信息。...

Install

npx skills add ZJU-REAL/Easel --skill image-editing -g -a claude-code -y
Repository
ZJU-REAL/Easel4.3k
Category
Media
Updated
3d ago
License
Apache-2.0
Context cost
Lightabout 895 tokens
Runs scripts
No, instructions only

What it does

通用图像处理加工:改尺寸/缩放、裁剪、补边适配平台尺寸、格式转换(png/jpg/webp)、 压缩到目标大小、加文字或图片水印、圆角、多图拼接、生成缩略图、读图片信息。 基于 image_ops.py 确定性处理。 使用时机:用户说"改尺寸"、"缩放图片"、"裁剪"、"压缩图片"、"加水印"、"转格式"、 "圆角"、"拼图/多图联排"、"缩略图"、"适配小红书/朋友圈尺寸"、"把图 pad 成 1:1"。 和 card-*(卡片类)的区别:card-* 是"HTML 设计→渲染出图", image-editing 只加工已有图片,不负责视觉设计。

图像处理加工

对已有图片做确定性处理:缩放/裁剪/补边/转格式/压缩/水印/圆角/拼接/缩略图。 所有操作走 skills/shared/scripts/image_ops.py(纯 Pillow),不即兴写脚本。

输入

  • 一张或多张已存在的图片文件路径(png/jpg/webp 等 Pillow 支持格式)
  • 目标操作与参数(尺寸、比例、质量、水印文字、拼接方式等)

输出

  • 处理后的图片文件(路径由用户指定或默认写入 outputs/主题名/)
  • 每条命令回显 ✅ 路径 (宽x高, 大小KB);info 输出 json

边界(与 card-* 划清)

  • card-quote / card-xiaohongshu / poster-hero / comparison-card = 设计并渲染新图(HTML→截图)
  • image-editing = 加工已有图片,不做视觉设计,不生成内容,只做像素级处理
  • 需要"从数据/文字生成图" → 用 chart/infographic/card-*;本 SKILL 只处理现成图片文件

执行步骤

  1. 确认输入图片存在、明确目标操作与参数
  2. 从项目根目录运行 image_ops.py 对应子命令(见下)
  3. 需要平台尺寸时,查 references/platform-sizes.md 取推荐比例/像素
  4. 回报输出路径与尺寸;多步操作可串联(如先 resize 再 compress)

命令速查

脚本路径统一为 skills/shared/scripts/image_ops.py,均支持 -h 查看参数。

# 缩放:按宽/高/百分比,--keep-ratio 在框内等比不拉伸
python skills/shared/scripts/image_ops.py resize -i in.jpg -o out.jpg --width 1080
python skills/shared/scripts/image_ops.py resize -i in.jpg -o out.jpg --percent 50
python skills/shared/scripts/image_ops.py resize -i in.jpg -o out.jpg --width 1080 --height 1440 --keep-ratio

# 裁剪:坐标裁 或 居中裁到指定尺寸
python skills/shared/scripts/image_ops.py crop -i in.jpg -o out.jpg --box 100,50,900,650
python skills/shared/scripts/image_ops.py crop -i in.jpg -o out.jpg --width 1080 --height 1080

# 补边到目标比例(社媒适配核心):把任意图 pad 成 1:1 / 9:16 / 16:9
python skills/shared/scripts/image_ops.py pad -i in.jpg -o out.png --ratio 9:16 --background "#ffffff"
python skills/shared/scripts/image_ops.py pad -i in.jpg -o out.png --ratio 1:1 --background "20,20,30"

# 格式转换 png/jpg/webp
python skills/shared/scripts/image_ops.py convert -i in.png -o out.webp --format webp --quality 85

# 压缩:定质量 或 逼近目标文件大小上限(jpg/webp)
python skills/shared/scripts/image_ops.py compress -i in.jpg -o out.jpg --quality 80
python skills/shared/scripts/image_ops.py compress -i in.jpg -o out.jpg --max-kb 200
Read the whole SKILL.md on GitHub

More in Media