ComfyUI Node
Erics Word Cloud Generator (Advanced Image/Mask Support)
A ComfyUI node in image/text with 44 inputs and 5 outputs.
Erics Word Cloud Generator (Advanced Image/Mask Support)
- input_image
- mask_image
- wordcloud
- font_preview
- color_preview
- svg_export
- used_words
◄textword cloud text generation sample example►
◄width800►
◄height600►
◄max_words200►
◄min_font_size8►
◄max_font_size100►
◄background_modesolid_color►
◄background_color#000000►
◄color_moderandom_colors►
◄single_color_hex#FFFFFF►
◄single_color_namewhite►
◄cultural_color_setred_white►
◄emotional_color_setenergetic►
◄color_harmony_setblue_family_harmony►
◄custom_color_range#FF0000,#00FF00,#0000FF►
◄matplotlib_colormapviridis►
◄font_modesingle_font►
◄primary_fontC059 BdIta►
◄font_setArial,Times New Roman,Courier New►
◄prefer_horizontal0.5►
◄allow_verticaltrue►
◄margin5►
◄word_spacing1.0►
◄generation_modefrom_text►
◄word_frequencies►
◄include_numbersfalse►
◄normalize_pluralstrue►
◄text_caseas_input►
◄collocationstrue►
◄min_word_length2►
◄collocation_threshold30►
◄custom_stopwords►
◄special_words►
◄special_words_example{"IMPORTANT": {"size_multiplier": 3.0}, "key phrase": {"size_multiplier": 2.5}}►
◄preview_textFont Preview Sample►
◄enable_svg_exportfalse►
◄svg_embed_fontfalse►
◄relative_scaling0.8►
◄repeat_wordsfalse►
◄random_seed42►
◄text_file_path►
◄mask_placementinside_mask►
Categoryimage/text
Inputs (44)
| Name | Type | Default | Description |
|---|---|---|---|
| text | STRING | word cloud text generation sample example | — |
| width | INT | 800100–4096 | — |
| height | INT | 600100–4096 | — |
| max_words | INT | 20010–1000 | — |
| min_font_size | INT | 84–100 | — |
| max_font_size | INT | 10010–500 | — |
| background_mode | COMBO | solid_color | 2 options: transparent, solid_color |
| background_color | STRING | #000000 | — |
| color_modeopt | COMBO | random_colors | 8 options: single_color_hex, single_color_name, random_colors, cultural_set, emotional_set, color_harmony, +2 |
| single_color_hexopt | STRING | #FFFFFF | — |
| single_color_nameopt | COMBO | white | 50 options: white, black, red, green, blue, yellow, +44 |
| cultural_color_setopt | COMBO | red_white | 37 options: red_white, green_red, green_white_(crescent), blue_white, red,_gold/yellow,_green, red,_white,_black, +31 |
| emotional_color_setopt | COMBO | energetic | 10 options: energetic, calming, professional, creative, warm_cozy, cool_modern, +4 |
| color_harmony_setopt | COMBO | blue_family_harmony | 10 options: blue_family_harmony, green_family_harmony, red_family_harmony, cyan_family_harmony, yellow_family_harmony, warm_harmony, +4 |
| custom_color_rangeopt | STRING | #FF0000,#00FF00,#0000FF | — |
| matplotlib_colormapopt | COMBO | viridis | Matplotlib colormap for scientific color schemes |
| font_modeopt | COMBO | single_font | 4 options: single_font, random_font_per_word, random_font_per_cloud, font_set |
| primary_fontopt | COMBO | C059 BdIta | 45 options: C059 BdIta, C059 Bold, C059 Italic, C059 Roman, D050000L, DejaVuSans, +39 |
| font_setopt | STRING | Arial,Times New Roman,Courier New | — |
| prefer_horizontalopt | FLOAT | 0.50–1 | Ratio of horizontal vs vertical words |
| allow_verticalopt | BOOLEAN | true | — |
| marginopt | INT | 50–50 | Margin between words and canvas edge |
| word_spacingopt | FLOAT | 1.00.1–5 | Font scaling factor - higher values = larger fonts and more spacing |
| generation_modeopt | COMBO | from_text | Generate from text or predefined word frequencies |
| word_frequenciesopt | STRING | — | |
| include_numbersopt | BOOLEAN | false | — |
| normalize_pluralsopt | BOOLEAN | true | Combine plural/singular words (cats+cat→cat) for cleaner clouds |
| text_caseopt | COMBO | as_input | Transform text case before processing |
| collocationsopt | BOOLEAN | true | Include word pairs/phrases |
| min_word_lengthopt | INT | 21–10 | — |
| collocation_thresholdopt | INT | 3010–100 | Min frequency for word pairs to become phrases (requires more text to see effect) |
| custom_stopwordsopt | STRING | — | |
| special_wordsopt | STRING | Boost word frequency/size using JSON. Note: Positioning not supported by WordCloud library | |
| special_words_exampleopt | STRING | {"IMPORTANT": {"size_multiplier": 3.0}, "key phrase": {"size_multiplier": 2.5}} | Example: Boost word frequency to make them larger (positioning not supported) |
| preview_textopt | STRING | Font Preview Sample | Text for font preview |
| enable_svg_exportopt | BOOLEAN | false | Generate SVG version as string output |
| svg_embed_fontopt | BOOLEAN | false | Embed font in SVG (requires fontTools) |
| relative_scalingopt | FLOAT | 0.80–1 | Balance frequency vs rank sizing: 0=uniform sizes, 1=high variation, 0.8=balanced |
| repeat_wordsopt | BOOLEAN | false | Repeat words to fill space |
| random_seedopt | INT | 420–999999 | Random seed for reproducible results |
| text_file_pathopt | STRING | — | |
| mask_placementopt | COMBO | inside_mask | Place words inside or outside mask area |
| input_imageopt | IMAGE | Optional background image to overlay word cloud on | |
| mask_imageopt | MASK | Optional mask to control word placement area |
Outputs (5)
| Name | Type | Description |
|---|---|---|
| wordcloud | IMAGE | — |
| font_preview | IMAGE | — |
| color_preview | IMAGE | — |
| svg_export | STRING | — |
| used_words | STRING | — |