π€ CR Overlay Text
Stamp text onto an image with real alignment and rotation control
- image
- IMAGE
- show_help
Comfyroll Studio isn't only a diffusion-adjacent pack - a good chunk of it is a genuine graphic-design toolkit for ComfyUI, and CR Overlay Text is the node most people reach for first out of that side of the pack. Point it at an image, give it text, and it draws that text onto the image with real control over font, color, alignment, position, and rotation - meme captions, banners, watermarks, comic-panel labels, whatever needs words baked into pixels rather than left as metadata.
What it's for
Any workflow that needs to produce a finished graphic rather than a raw generation ends up needing text on the image at some point - a title, a caption, a watermark, a comic speech bubble. CR Overlay Text is that step: it takes your generated (or loaded) image and composites text onto it directly, with enough positioning control to actually place it where you want rather than fighting a fixed corner.
How it works
It draws with a real font renderer, not a crude bitmap stamp, so you get proper alignment and justification, adjustable line spacing for multi-line text, and independent X/Y position offsets on top of that. Rotation is the detail worth knowing about specifically: you can spin the text around either its own center or the image's center, which matters a lot depending on whether you're rotating a short label in place or sweeping a banner across a corner of the frame.
Inputs and outputs that matter
image(IMAGE) - what you're drawing onto.text- the multiline text to overlay.font_name- one of ten fonts bundled with the pack, ranging from clean sans-serifs (Roboto, Quicksand Bold, Oswald Bold) to specialty options:comic.ttffor comic-style lettering,impact.ttffor classic meme text, a handwriting-style variable font (Caveat), a pixel font (PixelifySans), a serif (Young Serif), andNotoSansArabic-Regular.ttffor Arabic script.font_size(default 50, up to 1024) andfont_color- pick from about 30 named colors, or choose "custom" and set the hex value in the optionalfont_color_hexfield.align(center/top/bottom) andjustify(center/left/right) - where the text block sits vertically and how lines within it line up.marginsandline_spacing- padding from the edge and gap between lines, both in pixels and both able to go negative for tighter packing.position_x/position_y- a manual offset on top of the alignment settings, for fine placement.rotation_angle(degrees, -360 to 360) androtation_options("text center" or "image center") - spin the text block around its own middle, or around the whole image's middle.
Output is the composited IMAGE plus the standard show_help wiki link.
How to install it
Search "Comfyroll Studio" in ComfyUI Manager, or install manually:
cd ComfyUI/custom_nodes
git clone https://github.com/Suzie1/ComfyUI_Comfyroll_CustomNodes.git
Restart ComfyUI. The fonts ship with the pack - no separate font downloads needed for the ten built-in options.
Common issues & troubleshooting
Text is the wrong color even though you picked a named color correctly. Check that font_color isn't set to "custom" - when it is, the node ignores your named-color selection entirely and uses whatever's in font_color_hex instead, which defaults to black.
Rotated text lands somewhere unexpected. This is almost always the rotation_options setting. Rotating around "text center" keeps the text's own middle fixed and spins in place; rotating around "image center" sweeps the text around the whole canvas, which moves it a lot more than you'd expect for a corner label. Switch between the two if the rotation looks wrong rather than fighting it with position offsets.
Multi-line text overlaps or looks cramped. Adjust line_spacing - the default of 0 uses the font's natural spacing, and negative values will pack lines tighter (useful for stylized layouts) while positive values open them up.
Arabic or other non-Latin text renders as boxes. Make sure font_name is actually set to NotoSansArabic-Regular.ttf for Arabic script - the other nine fonts are Latin-only and won't have the glyphs.
Whole pack fails to load. If none of the Comfyroll nodes appear after install, that's an install problem, not this node - reinstall by deleting the ComfyUI_Comfyroll_CustomNodes folder and re-cloning rather than debugging a specific traceback.
Inputs (14)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | β | |
| text | STRING | text | β |
| font_name | COMBO | 10 options: Roboto-Regular.ttf, Quicksand-Bold.ttf, Oswald-Bold.ttf, comic.ttf, AlumniSansCollegiateOne-Regular.ttf, NotoSansArabic-Regular.ttf, +4 | |
| font_size | INT | 501β1024 | β |
| font_color | COMBO | 30 options: custom, white, black, red, green, blue, +24 | |
| align | COMBO | 3 options: center, top, bottom | |
| justify | COMBO | 3 options: center, left, right | |
| margins | INT | 0-1024β1024 | β |
| line_spacing | INT | 0-1024β1024 | β |
| position_x | INT | 0-4096β4096 | β |
| position_y | INT | 0-4096β4096 | β |
| rotation_angle | FLOAT | 0.0-360β360 | β |
| rotation_options | COMBO | 2 options: text center, image center | |
| font_color_hexopt | STRING | #000000 | β |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| IMAGE | IMAGE | β |
| show_help | STRING | β |