GR Image Multiplication
GR Image Multiplication
- image
- width
- height
Don't let the name mislead you - this node doesn't multiply your image into copies (that's its sibling, GR Image Multiplier). It multiplies your image's dimensions. Feed it an image and a factor, and it hands back a scaled-up width and height as plain integers - nothing else. It's a math node wearing an image node's inputs.
How it works
The node reads the incoming image's width and height, multiplies both by your multiply factor, and outputs the results as two separate INT values. No image comes back out. That's deliberate: this is meant to sit upstream of an upscale or resize node, doing the arithmetic so you don't have to compute "current size × 1.5" in your head every time you change source images. Wire the width/height outputs into an Upscale Image (or any resize node that takes explicit dimensions) instead of typing a fixed target resolution that breaks the moment your input image changes size.
It's a small utility, and that's the point - it exists so your resize step tracks the input dynamically rather than being hardcoded.
The inputs and outputs that matter
image(IMAGE, required) - only used to read its dimensions. The pixel data itself never leaves this node.multiply(FLOAT, default1, range0.01–100) - your scale factor.2doubles both dimensions,0.5halves them,1is a no-op that just reads back the current size.widthandheight(INT, outputs) - the scaled results, ready to wire into whatever resize node you're using.
How to install it
Via ComfyUI Manager: search "GraftingRayman", install, restart. Manually:
cd ComfyUI/custom_nodes
git clone https://github.com/GraftingRayman/ComfyUI_GraftingRayman
then restart ComfyUI. The pack has one non-negotiable dependency across every node in it, this one included - OpenAI's CLIP package, installed separately from ComfyUI's own CLIP handling:
# portable build
.\python_embeded\python.exe -m pip install git+https://github.com/openai/CLIP.git
# system python
pip install git+https://github.com/openai/CLIP.git
Without it, the pack fails to import entirely, and this node (along with every other GraftingRayman node) simply won't be in your node search.
Common issues & troubleshooting
The GraftingRayman nodes aren't showing up at all. That's the CLIP dependency above, not a bad install of this specific node - the pack imports it once for the whole collection, and one failed import takes the rest down with it.
Outputs look weird at extreme multipliers. The multiply range tops out at 100 and bottoms out at 0.01 for a reason - feeding a resize node dimensions in the tens of thousands will blow your VRAM budget long before you hit that ceiling, and dimensions rounded down toward zero will just error out downstream. Keep the factor sane for what you're actually trying to do (upscaling by 1.5–4x covers almost every real case).
Non-integer results. Multiplying by a fractional factor against an odd source resolution can produce dimensions that aren't divisible by 8 - which matters for most diffusion models' VAE. If your downstream resize or sampler complains about dimensions, round the output before you feed it in, or pick a multiplier that keeps things clean.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | — | |
| multiply | FLOAT | 1.000.01–100 | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| width | INT | — |
| height | INT | — |