Ideogram Mask Build (Kora)
Visual prompt builder + Mask Generator for Ideogram 4... Visual prompt builder for Ideogram 4's structured JSON caption format. Drag on the canvas to draw regions; select a region to set its type (obj/text), description, text, and color palette. Set the background and optional style fields as widgets. Outputs the assembled caption JSON string. bbox is normalized to a 0-1000 grid as [ymin, xmin, ymax, xmax]; width/height set the canvas aspect ratio. Canvas controls: - Drag: draw a new region - Ctrl/Cmd-drag: force-draw a new region even on top of an existing one - Click: select a region · Alt-click: cycle overlapping regions - Double-click: edit the description inline - Right-click: region list (select / delete / duplicate / reorder, top = front) - Del / Backspace: remove the selected region - Ctrl/Cmd + C / V / D: copy / paste / duplicate the selected region - bbox fields (px / out) next to obj/text are editable Color swatches: - Click: edit · Drag: reorder · Right-click: remove - Hover + Ctrl/Cmd + C / V: copy / paste the hex - "+": add a color (uses the clipboard color if it is one) Toolbar: - Live: use the live sampling preview as the background (and grab the final result) - Grab BG / Clear BG: use the last generated image as the background - brightness slider, token estimate, and Copy / Paste / Clear all
- image
- bboxes
- prompt
- preview
- bboxes
- width
- height
- mask
- image
Inputs (17)
| Name | Type | Default | Description |
|---|---|---|---|
| width | INT | 102464–16384 | Canvas aspect width (also the pixel grid the bbox is measured in). Ideogram 4 needs multiples of 16. |
| height | INT | 102464–16384 | Canvas aspect height (also the pixel grid the bbox is measured in). Ideogram 4 needs multiples of 16. |
| high_level_description | STRING | Optional one-line overview of the whole image (blank = omitted). | |
| background | STRING | Required scene background description. | |
| style | COMBO | 3 options: [object Object], [object Object], [object Object] | |
| aesthetics | STRING | Style descriptor (blank = omitted). | |
| lighting | STRING | Style descriptor (blank = omitted). | |
| medium | STRING | Style descriptor (blank = omitted). | |
| add_mask_to_background | INT | 00–100 | — |
| style_palette_data | STRING | Serialized style color palette from the editor (managed by the node UI). | |
| elements_data | STRING | Serialized regions from the editor (managed by the node UI). | |
| bg_brightness | INT | 1000–100 | Background image brightness % (managed by the node UI slider). |
| sketch_data | STRING | [] | — |
| import_mode | COMBO | when empty | How a wired import_json is used: 'when empty' only seeds the editor while it has no regions (then the editor wins, so you can edit); 'always' makes the wired JSON authoritative so its changes always propagate to the output. |
| imageopt | IMAGE | Optional reference image shown as the editor background (and behind the preview). | |
| import_jsonopt | STRING | Optional: a full caption JSON. When connected, it loads into the editor and drives the output per 'import_mode'. | |
| bboxesopt | BOUNDING_BOX | [object Object] | Optional pixel-space boxes ({x, y, width, height}) used to seed the editor's regions when it has none. Ignored once regions exist. |
Outputs (7)
| Name | Type | Description |
|---|---|---|
| prompt | STRING | — |
| preview | IMAGE | — |
| bboxes | BOUNDING_BOX | — |
| width | INT | — |
| height | INT | — |
| mask | MASK | — |
| image | IMAGE | — |