A practical collection of nodes designed for ComfyUI that streamlines image and text processing workflows. Features include optimized resolution adjustment, text cleaning tools, dynamic image/text combination, and mask preview utilities. Created by a programmer who enjoys painting, this collection is perfect for artists and developers looking to enhance their AI art creation pipeline.
A utility node for adjusting image resolutions according to SDXL optimal aspect ratios.
Image resolution adjustment with customizable background color fill
Batch image redrawing with aspect ratio preservation
⬇️ Download Workflow JSON (Right Click Save As)
Features:
- Supports all SDXL optimal resolutions:
- 1:1 (1024x1024)
- 9:7 (1152x896)
- 7:9 (896x1152)
- 3:2 (1216x832)
- 2:3 (832x1216)
- 7:4 (1344x768)
- 4:7 (768x1344)
- 12:5 (1536x640)
- 5:12 (640x1536)
- Multiple extend modes:
- contain: Scale proportionally to fit within target size
- cover: Scale proportionally to cover target size
- fill: Stretch to fill target size
- inside: Like contain, but only downscale
- outside: Like cover, but only upscale
- top/bottom/left/right/center: Position image within target size
- Adjustable scaling factor
- Configurable maximum and minimum resolution limits
- Background color picker
- Maintains aspect ratio during adjustment
Usage:
- Add the node to your workflow
- Select target resolution from SDXL presets
- Choose extend mode as needed
- Use color picker to set background color
- Adjust scaling factor and resolution limits as needed
A node for loading images from the web.
Features:
- Supports loading images from URLs and Base64 format
- Automatically handles image formats
- Supports batch image loading
- Error handling:
- Returns a placeholder image for invalid URLs
- Gracefully handles exceptions, automatically removing erroneous images
Usage:
- Add the node to your workflow
- Input the image URL
- The node will automatically load and process the image
- The output image can be connected to other nodes requiring image input
Use Cases:
- Loading images from online resources
- Dynamic image processing workflows
- Batch image downloading and processing
A node for converting images to Base64 encoding.
Features:
- Supports various image formats (JPEG, PNG, BMP, etc.)
- Automatically handles image size and format
- Supports batch image encoding
- Error handling:
- Returns error information for invalid images
- Gracefully handles exceptions, ensuring workflow continuity
Usage:
- Add the node to your workflow
- Input the image file or image path
- The node will automatically convert the image to Base64 encoding
- The output Base64 string can be connected to other nodes requiring Base64 input
Use Cases:
- Image data transmission
- Embedding images in HTML or JSON
- Dynamic image processing workflows
- Batch image encoding and processing
Switch nodes are used to dynamically switch between different input or output paths in a workflow.
Features:
- Supports multiple input and output types
- Configurable switching conditions
- Automatically handles input and output connections
Usage:
- Add the Switch node to your workflow
- Configure switching conditions (e.g., boolean values, numerical ranges, etc.)
- Connect different input and output paths
- Automatically switch paths based on conditions
Use Cases:
- Dynamically adjusting workflows
- Conditional branch processing
- Multi-path selection
A node for creating image dimensions.
Features:
- Supports all SDXL optimal resolutions:
- 1:1 (1024x1024)
- 9:7 (1152x896)
- 7:9 (896x1152)
- 3:2 (1216x832)
- 2:3 (832x1216)
- 7:4 (1344x768)
- 4:7 (768x1344)
- 12:5 (1536x640)
- 5:12 (640x1536)
- Adjustable scale factor
- Supports landscape, portrait and square modes
- Automatic calculation of optimal resolution
Usage:
- Add the node to your workflow
- Select image mode (landscape/portrait/square)
- Choose target resolution
- Adjust scale factor (optional)
Use Cases:
- Creating images with specific dimensions
- SDXL image generation optimization
- Batch image processing workflows
A node for creating empty image latent spaces.
- Inherits all functionality from Image Size Creator
- Supports batch size settings
- Automatically creates optimized latent space dimensions
- Supports additional PNG information
Usage:
- Add the node to your workflow
- Set desired image dimension parameters
- Set batch size
- Connect to nodes requiring latent space input
Use Cases:
- Creating empty latent spaces
- SDXL workflow initialization
- Batch image generation
- Custom latent space processing
A text processing node that cleans up text by removing empty lines and leading/trailing spaces.
Features:
- Removes empty lines from text
- Removes leading and trailing spaces
- Option to keep single empty line between paragraphs
- Option to preserve indentation
- Supports batch text processing
Usage Example:
Input text:
Hello World
This is a test
Multiple empty lines above
Output text (with default settings):
Hello World
This is a test
Multiple empty lines above
Parameters:
output type
: Output type (text, list)remove empty line option
: Remove empty linesremove loading space option
: Remove spaces
Use Cases:
- Cleaning up prompt text
- Formatting text for LoRA training
- Preparing text for text-to-image generation
- Standardizing text input format
Remove extra empty lines and spaces to generate text:
Remove empty lines while keeping spaces to generate text:
Remove spaces while keeping empty lines to generate text:
Remove empty lines and spaces to generate list:
Added Text Combiner node for combining multiple text inputs into a single output.
Features:
- Dynamic inputs: automatically adds new input points when connected
- Flexible separators:
- Supports regular expressions
- Supports escape characters (e.g., \n, \r)
- Uses space when left empty
- Smart line breaks: automatically splits output by line when separator includes newline
- Auto filtering: removes empty lines while preserving pure space content
Usage Examples:
-
Basic Usage:
- Using comma separator:
,
- Output: text1, text2, text3
- Using comma separator:
-
Line Break Separator:
- Using newline:
\n
- Output:
text1 text2 text3
- Using newline:
-
Mixed Separator:
- Using comma or newline:
,|\n
- Supports both separator types
- Using comma or newline:
-
Empty Separator:
- Leave empty
- Directly joins text with spaces
A node for dynamically combining multiple image inputs. Features:
- Dynamic input ports: automatically adds new image input points when connected
- Smart image processing:
- Automatically filters empty inputs
- Maintains image format and quality
- Supports batch image processing
- Error handling:
- Returns blank image when no valid inputs
- Gracefully handles exceptions
- Output format: returns image list for further processing
Usage:
- Add the node to your workflow
- Connect image inputs (new input ports will be created automatically)
- Node will automatically combine all non-empty image inputs
- Output can be connected to other nodes that require image lists
Use Cases:
- Batch image processing
- Image collection management
- Dynamic workflow building
- Image list generation
An enhanced text display node that provides more text formatting and display options.
Features:
- Display Mode Options:
- Normal Mode: Displays text directly
- Text Statistics Functionality:
- Character Count
- Word Count
- Line Count
- Supports automatic line wrapping for long texts
- Supports multilingual text
Usage Instructions:
- Add the node to your workflow
- Connect the text input
- Select the display mode
A node that supports multiline text input, making it easy to input and edit long text content.
Features:
- Supports multiline text input and editing
- Retains text formatting and line breaks
- Compatible with both Chinese and English input
- User-friendly text editing interface
- Supports copy and paste operations
Usage Instructions:
- Add the node to your workflow
- Double-click the text box to edit
- Supports direct pasting of multiline text
- Click outside the area to save after editing
Usage Scenarios:
- Inputting long prompt phrases
- Editing multiline descriptive texts
- Batch text processing
- Preparing texts for LoRA training
A utility node for previewing and inspecting image masks.
Features:
- Intuitive mask area visualization
- Multiple preview modes:
- Original mask
- Outline highlight
- Support for batch mask preview
- Real-time preview updates
Usage:
- Add the node to your workflow
- Connect mask input
- Select preview mode
- Adjust display parameters
- Navigate to ComfyUI's
custom_nodes
directory - Clone the repository:
cd custom_nodes git clone https://github.com/jammyfu/ComfyUI_PaintingCoderUtils.git
- Restart ComfyUI
MIT License
- Added Mask Switch node
- Support switching between two masks based on conditions
- Provides default blank mask handling
- Optimized exception handling mechanism
- Maintains mask format and quality
- Added Web Image Loader node
- Support loading images from URLs and Base64
- Automatic image format handling
- Support batch image loading
- Error handling: returns placeholder image for invalid URLs, graceful exception handling
- Cache support for improved loading efficiency
- Preview feature: generates and saves preview images
-
Added Image Switch node
- Support switching between two images based on conditions
- Provides default blank image handling
- Optimized exception handling mechanism
- Maintains image format and quality
-
Added Text Switch node
- Support switching between two texts based on conditions
- Provides default blank text handling
- Optimized exception handling mechanism
- Enhanced Image Resolution Adjuster
- Added mask feathering functionality
- Improved mask edge processing algorithm
- Enhanced mask processing performance
- Optimized edge smoothing effects
- Optimized Text Combiner
- Improved text concatenation logic
- Enhanced performance for large text processing
- Fixed special character handling issues
- Optimized memory usage
- Enhanced Image Resolution Adjuster
- Improved extend mode algorithms
- Enhanced image processing performance
- Fixed edge handling issues
- Optimized memory usage
- Added Multiline Text Input node
- Support for multiline text input and editing
- Preserves text formatting and line breaks
- Compatible with both Chinese and English input
- User-friendly text editing interface
- Supports copy and paste operations
- Added Mask Preview node
- Added real-time preview update
- Added batch mask preview
- Added Show Text Plus node
- Added multiple display modes
- Implemented text statistics functionality
- Added support for custom display options
- Optimized long text display
- Added Dynamic Image Input Combiner
- Implemented dynamic input ports
- Added smart image processing
- Optimized error handling mechanism
- Added support for image list output
- Added image outline feature
- Added text combiner node
- Added TextCombiner node
- Implemented dynamic input connections
- Added support for regex separators
- Added support for newlines and escape characters
- Added empty separator handling
- Optimized text joining logic
- Initial release
- Added Image Resolution Adjuster:
- Support for SDXL optimal resolutions
- Multiple extend modes
- Color picker for background
- Scale factor adjustment
- Resolution limits
- Added Remove Empty Lines And Leading Spaces:
- Text cleaning functionality
- Configurable preservation options
- Batch processing support
- Dynamic image input combination
- Text template system
- More image processing utilities
Issues and Pull Requests are welcome!
- ComfyUI Team
- Impact-Pack Project