Nodes/ComfyUI-NO8D-controls/NO8D-Image Title
ComfyUI Node

NO8D-Image Title

Label batches without an image editor

By no8d·Created 2 months ago·Updated 14 days ago· 271
NO8D-Image Title
  • images
  • title_bar_color
  • text_color
  • image
titlesimage-01
title_bar_opacity60
title_position图内底部
title_bar_height10
font_size36
text_padding4
text_align居中
output_size原始尺寸

Making a comparison grid is only half the battle - the grid is useless unless you can tell which cell was which seed, which LoRA, which prompt. NO8D-Image Title is the labeling half: it stamps a title onto each image in a batch, so a 12-cell grid becomes a readable report instead of a guessing game. You get independent titles per image (one per line), full control over placement and styling, and an output that stays exactly the size you asked for.

The nice part is the batch behavior. titles is multiline and one title per line maps to one image in the batch - line 1 lands on image 1, line 2 on image 2, and a blank line skips rendering a title entirely. That makes it trivial to caption a run: "seed-42" on one line, "seed-77" on the next, and the pairing holds.

What you set

  • titles - one title per line, one per image. Blank lines = no title on that image.
  • title_position - where the title goes: outside top or bottom (adds a bar beyond the image edges, growing the output height), inside top or bottom (overlays the image edges, output size unchanged), or middle (centered overlay, also size-preserving).
  • title_bar_color, title_bar_opacity (0–100%), title_bar_height (0–100%, relative to source image height) - the bar's look. The opacity and height-as-percentage pair is what makes the bar look deliberate rather than slapped on.
  • font_size, text_padding, text_color, text_align (left/center/right) - the text's look and placement within the bar.
  • output_size - resize by the longest edge before rendering: original, 1K, 2K, or 4K. Aspect ratio is preserved; this is how you keep batches consistent when your sources come in mixed resolutions.

Output is image - the titled batch, one image per input.

How it works

It's a PIL-composition node: resize if you asked for it, create a bar sized from the height percentage, composite text onto it at the requested alignment, and stack the bar and image in the chosen position. The middle and inside positions overlay rather than extend, so you can title an image without changing its footprint - important when downstream expects a specific resolution.

Where it fits

Straight after a grid node or a batch save. Grid the batch, title it, save it - that's the entire reporting pipeline, and it produces the kind of file you can post to show a parameter comparison without typing explanations. It also pairs with NO8D save for dataset work where the filename alone doesn't capture which run an image belongs to.

Install and gotchas

cd ComfyUI/custom_nodes
git clone https://github.com/no8d/ComfyUI-NO8D-controls.git
python -m pip install -r requirements.txt

ComfyUI Manager → "NO8D-controls". No models. The recurring gotchas: title count must line up with image count or blank lines will handle the overflow; and if you need a specific output resolution, set output_size before compositing, because outside-position bars grow the final height by design. One more - like NO8D-Image Grid and NO8D-Prompt Merge, this node uses the newer backend node API, so a stale ComfyUI won't register it. Update, then restart.

CategoryNO8D-control

Inputs (11)

NameTypeDefaultDescription
imagesIMAGE
titlesSTRINGimage-01
title_bar_colorCOLOR#2563EB
title_bar_opacityINT600–100
title_positionCOMBO图内底部5 options: 图外顶部, 图内顶部, 中部, 图内底部, 图外底部
title_bar_heightINT101–100
font_sizeINT361–512
text_paddingINT40–1024
text_colorCOLOR#FFFFFF
text_alignCOMBO居中3 options: 居左, 居中, 居右
output_sizeCOMBO原始尺寸4 options: 原始尺寸, 1K, 2K, 4K

Outputs (1)

NameTypeDescription
imageIMAGE