This ComfyUI workflow builds a fast, repeatable contact sheet for fashion editorial concepts by compositing three inputs—your character, a scene/background, and a product—into cohesive images. Three LoadImage nodes bring in your assets, a PrimitiveStringMultiline node holds your creative brief, and a GeminiImage2Node uses the "Nano Banana Pro" model to integrate the images according to your instructions (lighting, mood, styling, composition). Because the model conditions on all three sources plus text, it can harmonize color and lighting while preserving key identity and product details.
Once the GeminiImage2Node produces one or more variations, a BatchImagesNode assembles them into a multi-tile contact sheet for quick side-by-side review. Finally, SaveImage writes the resulting grid (and/or individual frames, depending on how the graph is wired) to your output folder. The result is a practical, iteration-friendly tool: feed it new characters, scenes, or products and quickly compare editorial directions without rebuilding the pipeline.
API
從程式碼使用此工作流
每個 Comfy 工作流都是一個 JSON 圖。下方的 payload 就是此工作流,與 ComfyUI 執行時完全相同 — 你可以從此 URL 取得、放入版本控制,或在 ComfyUI 載入並逐節點執行。
使用 Comfy SDK 以 TypeScript 或 Python 執行。相同程式碼可用於 Comfy Cloud 或你自架的 ComfyUI — 只需更改 base URL。
// Install (beta)
npm i @comfyorg/sdk
// Run "步驟 1:聯系表工作流程" (TypeScript)
import { Comfy } from "@comfyorg/sdk";
const client = new Comfy({ apiKey: "comfyui-..." });
// This workflow, exported in API format (see note below)
const wf = await client.workflows.fromFile("template_contact_sheet-step_1.app_api.json");
const asset = client.assets.fromFile("input.png");
wf.setInput("1", "image", asset); // LoadImage
const job = await client.run(wf);
await job.getOutputs("4")[0].toFile("output.png"); // SaveImageSDK 需使用 API 格式的工作流:請在 ComfyUI 開啟此工作流,並使用 檔案 → 匯出工作流(API)。
常見問題













