Nodes/ComfyUI_Eclipse/Text Image with FX
ComfyUI Node

Text Image with FX

Render text onto an image with glow and shadow, watermark-style

By r-vage·Created 10 months ago·Updated a day ago· 31
Text Image with FX
  • background_image
  • image
  • mask
text© Eclipse
font_fileAllura-Regular.ttf
font_size48
text_scale100
text_color#ffffff
text_alignleft
char_per_line80
leading4
stroke_width0
stroke_color#000000
opacity100
positionbottom_right
margin_x20
margin_y10
enable_glowfalse
glow_intensity5
glow_range25
glow_blur15
glow_inner_color#2ec0ff
glow_outer_color#006eff
enable_shadowfalse
shadow_offset_x5
shadow_offset_y5
shadow_grow6
shadow_blur18
shadow_color#000000
shadow_opacity50

Burning text onto an image in ComfyUI is normally an exercise in pain - you fight font loading, you fight positioning, you give up on glow. Text Image with FX is the node that does it properly: it renders a text string with optional outer glow and drop shadow, then anchors it to any corner or edge of your image for watermark and copyright placement. You get both a composited image and a mask output, so the text layer stays a separate element you can use however you like.

The positioning model is the part to understand before anything else. position is an anchor - bottom_right, top_left, and the rest - and margin_x/margin_y are the offsets from that anchor's edges. So a copyright mark is: pick bottom_right, set margins, done. No manual coordinate math, and it stays glued to that corner regardless of image size. That anchor-based flow is genuinely nicer than most generic text renderers, and it's exactly what a watermark workflow wants.

How it works

The essentials:

  • text - what to render (defaults to "© Eclipse", which tells you what the author was thinking).
  • font_file - picked from ComfyUI/models/fonts/ (the pack copies bundled fonts there on first run - Allura-Regular, Roboto, Oswald, and friends). Drop your own .ttf in that folder and it appears in the dropdown.
  • font_size, text_scale, char_per_line, leading - sizing and wrapping. text_scale is a percentage of font_size, so it's a quick nudge without retyping a point size.
  • text_color, stroke_width/stroke_color - fill and outline, hex values.
  • position, margin_x/margin_y - the anchoring.
  • opacity - overall transparency of the composited text.
  • enable_glow + glow_intensity/glow_range/glow_blur/glow_inner_color/glow_outer_color - an outer glow with inner and outer colors, so you get that neon gradient edge. The intensity is "buildup iterations," which is just a way of saying more iterations = denser glow.
  • enable_shadow + shadow_offset_x/shadow_offset_y/shadow_grow/shadow_blur/shadow_color/shadow_opacity - the drop shadow.

Outputs are image (the composited result) and mask (the text layer as a mask), so you can composite manually, blur the background, or re-position downstream.

Where it fits

Watermarks and copyright marks are the headline use - the anchor system is built for them. But it's also fine for titling, date-stamping, or any "put readable text on this image" need that would otherwise drag in a full graphics stack. The mask output is the sleeper feature: it means the text region is first-class data you can mask with.

Installing it

Part of ComfyUI_Eclipse:

git clone https://github.com/r-vage/ComfyUI_Eclipse custom_nodes/ComfyUI_Eclipse

Or ComfyUI Manager → search "ComfyUI_Eclipse" → install and restart. It needs the bundled fonts copied into models/fonts/ (automatic on first run) and Pillow, which ComfyUI already ships.

Gotchas

Two things catch people. First, fonts: if the dropdown is empty, the models/fonts/ directory didn't get populated - restart once and check the folder; any .ttf you add there shows up next time. Second, glow and shadow are off by default - a "why is my text flat" moment is usually a missed enable_glow toggle, not a bug. And a hex color that looks wrong is worth checking against the color picker the frontend adds for these fields. Old RvTools-era workflows predating v4.0.0 need the migration tool.

Category🌒 Eclipse/ Image/FX & Color

Inputs (28)

NameTypeDefaultDescription
textSTRING© EclipseText to render.
font_fileCOMBOAllura-Regular.ttfFont file from ComfyUI/models/fonts/ directory.
font_sizeINT481–2500Font size in pixels (base size before scaling).
text_scaleINT1001–500Scale the text as a percentage of font_size. 100% = original size.
text_colorSTRING#ffffffText fill color (hex).
text_alignCOMBOleftHorizontal alignment of multi-line text within the text block.
char_per_lineINT801–8096Maximum characters per line before wrapping.
leadingINT40–500Extra vertical spacing between lines.
stroke_widthINT00–100Text outline (stroke) width. 0 = no stroke.
stroke_colorSTRING#000000Text outline (stroke) color (hex).
opacityINT1000–100Overall opacity of the composited text. 100 = fully visible, 0 = invisible.
positionCOMBObottom_rightAnchor position of the text block on the canvas.
margin_xINT200–4000Horizontal margin from the anchor edge.
margin_yINT100–4000Vertical margin from the anchor edge.
enable_glowBOOLEANfalseEnable outer glow effect around the text.
glow_intensityINT52–20Glow buildup iterations (more = denser glow).
glow_rangeINT251–500Maximum glow expansion distance in pixels.
glow_blurINT150–500Blur radius applied to each glow step.
glow_inner_colorSTRING#2ec0ffGlow color near the text (inner, hex).
glow_outer_colorSTRING#006effGlow color at the edge (outer, hex).
enable_shadowBOOLEANfalseEnable drop shadow effect behind the text.
shadow_offset_xINT5-500–500Shadow horizontal offset in pixels.
shadow_offset_yINT5-500–500Shadow vertical offset in pixels.
shadow_growINT60–200Shadow expansion beyond text outline.
shadow_blurINT180–200Shadow blur radius.
shadow_colorSTRING#000000Shadow color (hex).
shadow_opacityINT500–100Shadow opacity percentage.
background_imageoptIMAGEOptional background image. Canvas auto-sizes to text when omitted.

Outputs (2)

NameTypeDescription
imageIMAGE
maskMASK