照片分包工具
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md 安装 @user_2ed69ff3/photo-splitter
技能介绍
解决什么问题
当你需要把一大批照片上传、传输或归档时,一个包含上千张原图的文件夹往往不适合直接处理。某些平台对单次上传的文件数量、体积或打包格式有要求;有些场景只是希望按固定尺寸把照片切分成多个压缩包,方便分批存放。
拆分照片文件夹 这类任务通常要反复执行:手动挑选文件、逐个压缩、检查每个包是否超过限制、命名时避免重复,最后再确认原始照片没有被误改。这套流程不仅耗时,也容易因为漏掉某个子文件夹而返工。
技能如何工作
该技能面向输入为文件夹路径或 .zip 压缩包路径的场景。它会递归扫描目录中的图片文件,并按你指定的每个 zip 包大小上限重新分包。分包时采用扁平结构,压缩包内不再保留原始文件夹层级。
核心处理逻辑包括:
- 输入解析:自动识别文件夹或
.zip文件,并递归收集图片。 - 照片格式覆盖:支持
jpg、jpeg、png、gif、bmp、tiff、webp、heic、heif、avif、svg、raw等常见与专业格式。 - 硬性大小限制:每个输出 zip 包不超过指定大小;遇到单张图片本身超过限制时,会将其单独打包并打印提示。
- 扁平输出:压缩包内只包含照片文件,不复制原目录结构。
- 稳定命名:输出文件命名为
photos_part001.zip、photos_part002.zip等纯英文加数字格式。 - 默认输出目录:会在输入路径旁创建如
原文件夹名_split_100MB_photo40KB的子目录,便于区分结果。
从 v1.1.0 开始,技能还支持在拆分前进行批量压缩。你可以指定每张照片不超过某个 KB 数值。工具会采用先降低 JPEG 质量、仍不足再缩放尺寸的智能策略,尽量在不超过目标大小的前提下保留可接受的清晰度。压缩后的图片会写入独立临时目录,不会覆盖原图。
适用边界与注意点
- 压缩依赖环境:批量压缩需要 Python 的 Pillow 库。若未安装,工具会跳过压缩并提示,但分包流程仍可继续。
- 压缩是有损的:先降质量再缩放的策略会改变画质,建议先用少量照片测试效果,再决定是否对整个目录批量执行。
- 格式支持有边界:主要压缩
jpg、jpeg、png、webp等常见格式;heic、raw等格式会被跳过压缩,但仍参与分包。 - 极端图片可能无法达标:极少数情况下,极小尺寸或高复杂度图片可能仍超过目标大小,工具会单独提示但不会中断流程。
- 原图保护:整个流程只读取原图,所有压缩结果和 zip 包都会写入新目录,不会修改或删除原始照片。
- 同名文件处理:遇到同名照片时,会自动添加路径前缀区分,避免覆盖。
- 输出目录行为:若输出目录已存在,工具会直接使用该目录,不会覆盖已有文件;需要重新生成时应先手动删除输出目录。
使用场景
- 摄影师整理完婚礼拍摄素材后,要把大量照片按 150MB 一个包拆分,再分批上传给客户。
- 活动负责人收到一个包含上千张照片的 zip 文件,需要拆成 50MB 的小包上传到内部网盘。
- 自媒体运营准备发布一组高清配图,需要先把每张照片压缩到 40KB 以内再进行分包。
- 行政助理需要将公司团建照片压缩到指定大小以内,同时按 100MB 拆分并保存到新目录。
适合人员
- 摄影师需要批量交付大量原图,但上传平台限制单次包体大小。
- 活动运营需要把一个照片文件夹拆成多个 zip,方便分批上传和归档。
- 自媒体编辑想把高清配图先压到目标 KB 以内,再打包用于网页发布。
- 行政或档案管理人员需要把零散照片整理成统一大小的压缩包,便于长期存储。