From 72e4b926d92e8a6b6c197d9b55578a194012bcc7 Mon Sep 17 00:00:00 2001 From: 134 Date: Thu, 18 Jun 2026 19:49:26 +0800 Subject: [PATCH] fix: soften local edit composite boundaries --- app/api/canvas/local-edit/route.ts | 4 +- .../agents/AgentGenerationWorkspaceDarkV2.tsx | 22 ++++++-- lib/canvas/generate-image.ts | 56 ++++++++++++++++++- 3 files changed, 75 insertions(+), 7 deletions(-) diff --git a/app/api/canvas/local-edit/route.ts b/app/api/canvas/local-edit/route.ts index 389f35ba4..d64c10869 100644 --- a/app/api/canvas/local-edit/route.ts +++ b/app/api/canvas/local-edit/route.ts @@ -450,6 +450,8 @@ function buildLocalEditPrompt(regions: NormalizedLocalEditRegion[]) { regionLines, referenceLines ? `\n区域专属参考图说明:\n${referenceLines}` : "", "", + "新增主体完整性要求:如果区域提示词要求新增动物、人物、商品或其它完整主体,必须把该主体完整放在框选区域的安全内边距内,四周至少预留 8%-12% 缓冲空间;不要让头、身体、四肢、尾巴、产品边缘或阴影贴到选区边界,更不能被边界截断。空间不足时请主动缩小新增主体,而不是裁切主体。", + "边缘融合要求:编辑区域与未编辑区域的地面、墙面、桌面、椅脚、阴影、纹理和透视必须连续自然,不得出现错位、断层、硬边、矩形补丁、局部贴片或不同清晰度的边界。", "最终输出必须是干净照片:不得出现任何彩色框、蓝框、绿框、红框、矩形边框、编号、提示词气泡、标注文字或 UI 元素。", "未被列为编辑区域的画面必须逐像素保持原图不变,不允许重绘、改色、补光、换材质、移动物体、改变清晰度或改变背景细节。", "新增内容必须匹配原图的透视、光线、比例、清晰度、色温和真实摄影风格。", @@ -648,7 +650,7 @@ export async function POST(request: NextRequest) { negativePrompt: isScaleAdjustOperation ? "彩色框、蓝色边框、绿色边框、红色边框、橙色边框、矩形框、编号圆点、提示词气泡、标注文字、UI 控件、半透明色块、选区边框、白边、画幅压扁、画面拉伸、矩形贴片、硬边、拼接线、补丁感、局部裁切、色差边缘、背景断裂、主体未缩放、整块框选区域缩放" - : "彩色框、蓝色边框、绿色边框、红色边框、橙色边框、矩形框、编号圆点、提示词气泡、标注文字、UI 控件、半透明色块、选区边框、白边、画幅压扁、画面拉伸", + : "彩色框、蓝色边框、绿色边框、红色边框、橙色边框、矩形框、编号圆点、提示词气泡、标注文字、UI 控件、半透明色块、选区边框、白边、画幅压扁、画面拉伸、主体截断、动物截断、缺头、缺尾巴、缺四肢、贴边裁切、矩形贴片、硬边、拼接线、补丁感、色差边缘、背景错位、地面纹理断裂、椅脚错位", prompt, promptExtend: false, referenceImages, diff --git a/components/agents/AgentGenerationWorkspaceDarkV2.tsx b/components/agents/AgentGenerationWorkspaceDarkV2.tsx index 173d1d7c7..7272fc296 100644 --- a/components/agents/AgentGenerationWorkspaceDarkV2.tsx +++ b/components/agents/AgentGenerationWorkspaceDarkV2.tsx @@ -2284,8 +2284,8 @@ function DetailResultProcessingScanOverlay({