# 长图生成规范 生成需要拼接的长图时,采用**叠罗汉式串行生成**,每张图参考上一张图生成,确保风格一致、衔接自然。 ## 铁律:执行前必须分析+确认 **收到长图需求后,禁止直接开始生成!必须先完成以下步骤:** ### 第一步:分析提示词结构 仔细阅读提示词,识别以下信息: 1. **分屏数量**:提示词中有几个明确的段落/模块? 2. **每屏内容**:每一屏具体要展示什么? 3. **全局风格**:色调、风格、光影等统一要素 4. **衔接元素**:段落之间用什么元素过渡? ### 第二步:输出分屏规划表 必须用表格形式输出规划,让用户一目了然: ```markdown | 屏数 | 内容概要 | 关键元素 | |-----|---------|---------| | 1 | 主视觉+标题 | xxx | | 2 | xxx特写 | xxx | | ... | ... | ... | **全局风格**:xxx风格、xxx色调、xxx布光 **输出比例**:3:4 **预计生成**:N张图 → 拼接为长图 ``` ### 第三步:等待用户确认 **必须等用户说"OK"、"开始"、"没问题"后才能开始生成!** 用户可能会: - 调整分屏数量 - 修改某屏内容 - 补充遗漏的要素 ## 核心原则:叠罗汉式串行生成 **为什么用串行而不是并发?** - 每张图的顶部颜色需要与上一张图的底部颜色衔接 - 只有等上一张图生成完成,才能提取其底部色调 - 串行生成确保每一屏之间的过渡自然无缝 **为什么参考上一张而不是首图?** - 参考首图会导致中间屏幕风格跳跃 - 叠罗汉式参考让风格逐屏延续,过渡更平滑 - 每张图只需关心与相邻图的衔接 ## 生成前校验清单 | 检查项 | 要求 | 示例 | |-------|------|------| | **比例统一** | 所有分图使用相同 `-r` 参数 | 全部 `-r 3:4` | | **风格描述统一** | 使用相同的风格关键词 | 全部 `电影级美食摄影风格` | | **色调统一** | 定义主色调范围 | 全部 `深红色、暖棕色、金色` | ## Agent 执行流程(铁律) ``` 1. 收到长图需求 2. 【分析】仔细阅读提示词,识别分屏结构 3. 【规划】输出分屏规划表(表格形式) 4. 【确认】等待用户确认后才开始生成(铁律!) 5. 定义全局风格变量(主色调、风格词) 6. 串行生成每一屏: a. 首屏:用 text_to_image.py 生成,定调 b. 第2屏:用 image_to_image.py 参考第1屏生成 c. 第3屏:用 image_to_image.py 参考第2屏生成 d. 以此类推...每屏参考上一屏 7. 每屏生成后等待完成,再生成下一屏(串行,不可并发) 8. 全部完成后,使用 --blend 20 拼接输出 ``` ## 图生图 Prompt 规范 **核心要点:顶部衔接上一张底部** 后续图片的 prompt 必须包含: 1. **顶部衔接声明**:明确顶部颜色/氛围与上一张底部衔接 2. **风格继承**:参考上一张图的整体风格、光影 3. **本屏内容**:描述当前屏幕要展示的内容 **Prompt 模板:** ``` 参考模板图的整体风格、色调和光影氛围。本屏顶部与上一屏底部自然衔接。{本屏具体内容描述} ``` **更精确的写法(推荐):** ``` 参考模板图的{风格}、{色调}、{光影}。顶部延续上一屏底部的{颜色/氛围}。{本屏具体内容描述} ``` ## 分屏位置规范 | 位置 | 处理方式 | |------|---------| | **首屏** | 顶部正常开始,底部内容自然过渡(无需刻意留白) | | **中间屏** | 顶部衔接上一屏底部颜色,底部内容自然过渡 | | **尾屏** | 顶部衔接上一屏底部颜色,底部正常收尾 | **关键:不要预留固定百分比的留白区域,让内容自然过渡即可** ## 执行示例 ```bash # 步骤1:生成首屏(文生图,定调) python .opencode/skills/image-service/scripts/text_to_image.py "高端美食摄影风格,深红暖棕金色调,电影级布光..." -r 3:4 -o 01_hero.png # 等待完成 # 步骤2:生成第2屏(参考第1屏) python .opencode/skills/image-service/scripts/image_to_image.py 01_hero.png "参考模板图的美食摄影风格、深红暖棕色调、电影级布光。顶部延续上一屏底部的暖色氛围。本屏内容:酥皮特写..." -r 3:4 -o 02_crisp.png # 等待完成 # 步骤3:生成第3屏(参考第2屏) python .opencode/skills/image-service/scripts/image_to_image.py 02_crisp.png "参考模板图的美食摄影风格、深红暖棕色调、电影级布光。顶部延续上一屏底部的色调。本屏内容:牛排特写..." -r 3:4 -o 03_tenderloin.png # 等待完成 # ...以此类推 # 最后:拼接(推荐 blend 20) python .opencode/skills/image-service/scripts/merge_long_image.py 01_hero.png 02_crisp.png 03_tenderloin.png ... -o final.png --blend 20 ``` ## 铁律 1. **必须串行生成**:每屏生成完成后再生成下一屏,禁止并发 2. **叠罗汉式参考**:第N屏参考第N-1屏,不是全部参考首屏 3. **顶部衔接**:每屏的顶部颜色/氛围必须与上一屏底部衔接 4. **不留固定留白**:不要预留4%/8%等固定留白,让内容自然过渡 5. **脚本区分**:首屏用 `text_to_image.py`,后续全部用 `image_to_image.py`