- Comparison Video Tools
- Image
- Color Nodes
- LM Studio Assistant
- Prompts and Strings
- Node Utilities
- Internal Processing
A powerful and versatile ComfyUI node designed to add watermarks, copyright text, subtitles, and logo overlays to your generated images with professional precision.
- Dual Layering System: Add Text and Image overlays simultaneously or independently using simple toggle switches.
- Advanced Text Styling:
- Custom Fonts: Automatically detects
.ttfand.otffiles in thefontsfolder for easy dropdown selection. - Stroke (Outline): Add colored outlines to your text for better visibility on complex backgrounds.
- Drop Shadow: Create depth with adjustable shadow position (offset), blur (spread), and opacity.
- Multiline Support: Perfect for subtitles or long copyright notices with automatic line spacing handling.
- Custom Fonts: Automatically detects
- Precise Positioning: Choose from 7 preset positions (e.g., Top-Left, Bottom-Center, Center) and fine-tune with percentage-based margins.
- Adaptive Sizing: Scale text and logos relative to the source image size (%) for consistent results across different resolutions (SDXL, Flux, etc.).
- Transparency Control: Full support for Alpha/Masks (transparent PNGs) and adjustable opacity (0-100%) for both text and images.
- Go to the node's directory:
~/ComfyUI/custom_nodes/ComfyUI-DINKIssTyle/fonts/ - Paste your
.ttfor.otffont files into this folder. - Restart ComfyUI. Your fonts will automatically appear in the
font_namedropdown list.
To properly overlay a logo with a transparent background:
- Connect the
IMAGEoutput of your Load Image node tooverlay_image. - Connect the
MASKoutput tooverlay_mask. - (Optional) Use the
overlay_opacityslider to blend the logo with the background.
| Parameter | Description |
|---|---|
| font_name | Select a font from the fonts folder. |
| text_content | Enter your text here. Supports multiple lines (enter key). |
| text_opacity | Adjust text transparency (0-100). |
| enable_stroke | Toggle text outline. Set color and width. |
| enable_shadow | Toggle drop shadow. Adjust offset (X/Y), spread (blur), and opacity. |
| overlay_mask | (Optional) Connect a mask here to support transparent PNG logos. |
A smart utility node designed to calculate the optimal resolution for AI generation by selecting target megapixels and real-world standard aspect ratios.
Eliminate the guesswork of manual pixel entry. This node ensures your images are generated at the perfect size for models like SDXL, Flux, and Z-Image Turbo.
- Real-World Standards: Supports a wide range of formats, from standard Photography ratios (3:4, 4:6) to professional Cinema/Film specifications (Academy, IMAX, Super 35).
- AI Optimization: Automatically adjusts Width and Height values to multiples of 8, preventing encoding errors and ensuring compatibility with latent diffusion models.
- Megapixel Targeting: Select from 1MP to 4MP based on your model's capacity (Base: 1MP = 1024x1024). It maintains consistent quality by preserving the total pixel area across different aspect ratios.
- Instant Orientation: Easily toggle between Portrait and Landscape modes without recalculating.
I found this node to work especially well with Z-Image Turbo workflows, ensuring fast generation at the most efficient resolutions.
| Category | Aspect Ratios |
|---|---|
| Photo | 3:4, 3.5:5, 4:6, 5:7, 6:8, 8:10, 10:13, 10:15, 11:14 |
| Cinema | 35mm Academy (1.37:1), 35mm Flat (1.85:1), 35mm Scope (2.39:1) |
| Premium | 70mm Todd-AO (2.20:1), IMAX 70mm (1.43:1) |
| Super | Super 35 (1.85:1 / 2.39:1), Super 16 (1.66:1 / 1.78:1) |
- width (INT): Calculated width (multiple of 8).
- height (INT): Calculated height (multiple of 8).
- info_string (STRING): Summary of current settings (e.g.,
896x1152 (Photo 3.5:5, 1MP)).
A smart utility node designed to combine multiple individual images into a single image batch.
Unlike standard batch nodes that error out when image dimensions differ, this node automatically resizes all incoming images to match the resolution of the first image, ensuring a seamless batching process.
- Mass Input: Connect up to 10 different images at once.
- Auto-Resizing: Automatically scales all images to match the dimensions (Width/Height) of the first input image. No more "Shape Mismatch" errors!
- Mode Switching: Easily toggle between creating a batch or just passing through the first image for testing.
This node works perfectly with DINKI LM Studio Assistant. Use it to batch multiple reference images together and send them to a Vision LLM for bulk analysis or captioning in a single pass.
| Parameter | Description |
|---|---|
| batch_image | True (multiple): Resizes and merges all connected images into one batch. False (single): Ignores the rest and outputs only the first image found (Pass-through mode). |
| image1 ~ 10 | Connect your images here. Inputs can be left empty; the node automatically detects active connections. |
An essential ComfyUI node for compiling up to 10 images into a customizable grid layout. Perfect for creating comparison sheets, storyboards, or organized image galleries.
- Flexible Matrix Layout: Define your own grid structure by setting Columns and Rows (e.g., 2x3, 4x4). Images fill the grid from Left-to-Right, Top-to-Bottom.
- Smart Resolution Handling:
- Base Resolution: The grid cell size is automatically determined by the resolution of Image 1.
- Adaptive Resizing: Subsequent images are automatically resized to fit the cell using methods like Fit, Crop, or Stretch.
- Upscale Comparison Mode:
- No Resize (Top-Left): A specialized mode where images are placed at their original scale without resizing. Ideal for comparing Upcaled vs. Original images side-by-side to visualize detail enhancement.
- Custom Styling:
- Frames: Add spacing between images with adjustable Frame Thickness (supports 0 for seamless grids).
- Background: Customize the background color (Hex code) for frames and empty cells.
- Output Optimization:
- Size Limiter: Toggle
limit_outputto prevent generating massive files. Automatically downscales the final grid to fit withinmax_width/max_heightwhile maintaining aspect ratio.
- Size Limiter: Toggle
If you set the grid to 2 Columns × 3 Rows (Total 6 cells) but connect only 5 images:
- Images 1-2 fill Row 1.
- Images 3-4 fill Row 2.
- Image 5 fills the first slot of Row 3.
- The last empty slot will be filled with your specified Background Color.
| Parameter | Description |
|---|---|
| image_1 ~ 10 | Connect up to 10 images. Unconnected slots are ignored. |
| cols / rows | Set the number of columns and rows for the grid. |
| frame_thickness | Width of the border around each image (in pixels). Set to 0 for no gap. |
| bg_color_hex | Hex color code for the background/frame (e.g., #000000, #FFFFFF). |
| resize_method | Choose how images fit the cell: Fit, Crop, Stretch, or No Resize. |
| limit_output | Enable to restrict the maximum pixel dimensions of the final image. |
| max_output_w/h | The maximum allowed width/height if limit is enabled. |
A robust preview node that handles empty signals gracefully. If no image is provided (e.g., a skipped step due to a switch), it automatically generates a custom placeholder image containing text instead of crashing or showing an error.
| Parameter | Description |
|---|---|
| images | (Optional) Connect your image here. If disconnected/None, the placeholder is shown. |
| placeholder_text | Text to display on the placeholder (e.g., "Bypassed"). |
| width / height | Dimensions of the placeholder image. |
| bg_gray / fg_gray | Background and Text brightness (0-255 grayscale). |
| font_path | Path to a custom .ttf file. If empty, it attempts to find a system font. |

Download DINKI_Base64_to_Image.json
A set of nodes designed to make your ComfyUI workflows fully self-contained and portable. By converting images into Base64 strings, you can embed essential reference images, masks, or logos directly inside the workflow .json file.
You can embed explanatory images or sample results directly within the Workflow.
Prepares your image for embedding by converting it into a text-based format. Use this to generate the data needed for the Base64 String Input node.
| Parameter | Description |
|---|---|
| image | The source image you want to embed (e.g., a specific ControlNet reference or style image). |
Workflow Tip: Connect an image, run the queue, and copy the resulting string. You can then paste it into the DINKI Base64 String Input node to permanently store it in your workflow.
The core storage node. It allows you to paste the Base64 code, effectively saving the image data inside the node itself. When you save and share your workflow .json, the image travels with it.
| Parameter | Description |
|---|---|
| base64_string | Paste your Base64 code here. This text field acts as the permanent container for your embedded image. |
Key Benefit: Eliminates external file dependencies. Users downloading your workflow will have the correct image loaded instantly, without needing to download separate assets.
Unpacks and restores the embedded image data for use in generation. It visualizes the stored Base64 string and converts it back into a standard IMAGE format.
| Parameter | Description |
|---|---|
| base64_string | Connects to the DINKI Base64 String Input node to retrieve the stored image data. |
Smart Decoding: Automatically handles standard Base64 headers.
Output: Returns a standard
IMAGEtensor, allowing the embedded image to be used immediately in KSampler, ControlNet, or Image-to-Image processes.



