用途
该技能解决的是同一张已完成的图片需要在不同社交平台上以横版或竖版形式发布的问题。它不改变图片内容本身,只调整图片的外部形状以及画面与边缘的贴合方式,使同一张作品能够覆盖横向和纵向两类展示空间。
主要能力
- 将一张源图片适配为横版 16:9 和竖版 9:16 两个版本,以 RGB PNG 格式输出。
- 不进行重新生成、重绘、改风格、模型放大或画质改善,沿用用户已确认的图片。
- 在测量前先应用文件声明的方向(EXIF 旋转),避免输出被旋转。
- 按 references/geometry.md 中的规则将图片适配进每个画框,并执行该文件要求的验证。
- 根据平台对应关系决定需要输出哪张图片:若某平台同时不需要其中一种,则只输出另一种;独立模式下两张都输出。
- 在链式模式下自动运行,无需再次询问,将图片与已有 post 文件放在同一位置。
- 报告源文件与像素尺寸、平台来源、各平台对应图片、已写入文件与像素尺寸及所在文件夹、未写入的图片及原因、文件夹是否打开、所用工具。
使用方式
该技能提供捆绑文件 references/geometry.md,需按需加载,并在适配图片前阅读,其中说明了两个像素目标、图片如何适配进每个画框、为何一张竖版可同时服务方形、4:5 和全高槽位,以及结果交付前需满足的条件。
运行分为两种模式,模式由调用来源决定,而不是通过提问决定:
- 独立模式:用户直接提供一张图片并要求生成发布图。技能会在会话临时区域下的新文件夹中写入 horizontal.png 和 vertical.png,在机器上打开该文件夹,并报告绝对路径。若环境为无头或远程且无法打开,则说明情况并给出绝对路径,而非声称已打开窗口。
- 链式模式:当 awesome-content-repurpose 已写入 post 文件,且用户已提供图片或从视频中截取了静帧时,技能会直接运行,将两张图片放到 post 文件旁,例如 1-short.md、2-regular.md、3-long.md 对应的位置。每个 post 文件在 attachments 中列出其平台需要的图片,并标注画框;发布者按每个平台的 Picture 列提供对应图片。图片不携带任何 post 的名称,因为所有 post 共享这些图片。
解析源图片时,支持本地路径或 URL,格式包括 PNG、JPEG、WebP、BMP 或 TIFF。URL 会先下载,并说明保存了什么、来自何处。若有多个候选且无明确指示,会一次性询问选择哪一个;链式模式不存在歧义,因为已确认文件就是调用者提供的那个。
平台对应关系读取 awesome-content-campaign/references/platforms.md 中规范表格的 Picture 列,该列命名为 horizontal、vertical 或 none。该技能不重新推算此列,若某行看起来有误,会报告并在该文件中依据证据修正。链式模式下,平台来自 post 文件的 platforms 列表;若某张图片没有任何列出的平台采用,则不写入,并说明第二个文件缺失的原因。
适用场景
- 需要将一张已确认的图片发布到横版与竖版两类社交平台展示位的场景。
- 已在 awesome-content-repurpose 流程中生成 post 文件,需要配套图片的场景。
- 希望避免为每个平台或每种形式重复生成相同图片的场景。
限制
- 技能本身不附带程序,由 agent 根据所在机器使用已安装的图像库或命令行工具编写少量代码实现,并说明所用工具。
- 在承诺输出前会先确认工具可用;若无合适工具,则说明情况并不交付任何内容,而不是留下半成品文件夹。
- 不会为了执行该技能而向用户项目添加图像处理依赖,只能使用隔离环境或已有工具。
- 只写入两个 PNG,或当没有平台采用另一种时写入一个,不写入清单、母版、缩略图、压缩包、README 或按形式/平台拆分的副本。
- 不移动、重命名或覆盖已有文件;若目标名称已被占用,会在写入前报告。
- 不就地修改源文件,也不会将结果写入调用所在文件夹,除非该文件夹是链式模式中的 posts 文件夹。
- 平台专属信息不写入本技能,避免与外部表格重复导致不一致。
- 不会为平台提供与其 Picture 列不符的图片,也不会用中心裁切的横版冒充竖版画框。
- 平台列表或某平台的图片对应关系若在 post 文件与表格之间不一致,会作为缺陷报告而非猜测。
- 文件数量与平台所需图片数不一致时会报告为不匹配,不会四舍五入;无法运行的检查会标注为未运行。