Python 图片处理工具箱(Pillow + img2pdf)。用于图片格式转换、压缩优化、尺寸调整、批量处理、图片转 PDF。
使用 Python(Pillow + img2pdf)完成常见图片处理任务。
原则:优先隔离环境(uv 或 .venv),不要默认往系统 Python 里直接 pip。
cd skills/python-image-lab
uv venv .venv
uv pip install -r requirements.txt
cd skills/python-image-lab
python -m venv .venv
激活虚拟环境:
.venv\Scripts\Activate.ps1
source .venv/bin/activate
安装依赖:
python -m pip install -U pip
python -m pip install -r requirements.txt
建议始终使用虚拟环境里的 Python 来执行脚本。
.venv\Scripts\python scripts\convert.py --help
.venv/bin/python scripts/convert.py --help
# Linux/macOS
.venv/bin/python scripts/convert.py --input /path/a.png --format webp
.venv/bin/python scripts/convert.py --input /path/images --format jpg --recursive
# Windows
.venv\Scripts\python scripts\convert.py --input C:\path\a.png --format webp
.venv/bin/python scripts/compress.py --input /path/a.jpg --quality 80
.venv/bin/python scripts/compress.py --input /path/images --format webp --quality 78
.venv/bin/python scripts/to_pdf.py --input /path/a.png
.venv/bin/python scripts/to_pdf.py --input /path/images --output /path/images.pdf
.venv/bin/python scripts/resize.py --input /path/a.jpg --width 1280
.venv/bin/python scripts/resize.py --input /path/images --width 1080 --height 1080 --mode cover
.venv/bin/python scripts/batch.py --input /path/images --format webp --quality 80 --width 1600
--dry-run:仅预览,不落盘--include-ext:仅处理指定扩展名(逗号分隔)--exclude-ext:排除指定扩展名--exclude-suffixes:排除已处理后缀(默认会跳过 _converted/_compressed/_resized/_batch)示例:
.venv/bin/python scripts/batch.py \
--input /path/images \
--format jpg \
--exclude-suffixes _batch,_converted,_compressed,_resized \
--dry-run
_converted / _compressed / _resized / _batch--overwritesuccess/fail/total,并列出失败文件.venv,不要直接系统 pip。ZIP package — ready to use