SDPPP Get Image From Photoshop
Pull a layer out of Photoshop and straight into ComfyUI
- layer_or_group
- bound
- rgb_out
- alpha_out
The workhorse of the original SD-PPP trio. Where its sibling Send Images To Photoshop puts pixels back, this one pulls them out: you pick a layer (or group) in your open Photoshop document, and its pixels arrive in ComfyUI as an IMAGE plus a matching alpha MASK. That's the whole "Photoshop is my canvas" workflow in one node - draw or composite in PS, then drag the result into any ComfyUI pipeline without ever saving a file.
How it works
This is one of the "legacy" nodes, and it talks to Photoshop over the same Socket.IO bridge as the rest of the pack. You give it a layer_or_group handle (a live reference to a layer in your document), and it asks the PS plugin for the layer's pixels: the RGB comes back as JPEG, the alpha channel separately as PNG. The node decodes both and returns them as an image batch plus a mask batch. Because the layer handle carries its document context, it works even if you've got several documents open in the same session.
Inputs
- layer_or_group - the layer or group to read. In the UI this is a dropdown populated from Photoshop; you can also select the layer in PS and let the node track it. Feed a group and it grabs the group's flattened appearance.
- bound (optional) - a
MASKthat restricts which part of the layer you want. Leave it empty for the whole layer. - quality (optional) - 0–100, default 100. JPEG compression level for the pull. Crank it down if you're only using the image as a structural reference (ControlNet, inpainting mask) and want the transfer faster.
Outputs
- rgb_out - the layer's pixels as an
IMAGElist. Goes into anything that takes images. - alpha_out - the layer's transparency as a
MASKlist. Feed it to a VAE encoder or a mask-aware node to keep the layer's shape.
Both come back as lists, so if you wire it into batch-aware nodes it just works.
The classic pairing
The two-node loop that made sd-ppp famous: Get Image From Photoshop Layer in front of a generate-or-fix workflow, Send Images To Photoshop at the end. Pull your controlnet source layer, run the pipeline, send the result back to a new layer. It's the cleanest way to keep your actual design file as the source of truth instead of a pile of exported PNGs.
Install and gotchas
ComfyUI Manager, search sd-ppp (or git clone https://github.com/zombieyang/sd-ppp into ComfyUI/custom_nodes), restart. The pack pip-installs python-socketio and jsonpatch itself on first import. And you must install the Photoshop plugin from sdppp.zombee.tech - a .ccx that double-clicks to install if you have Creative Cloud, or renames to .zip and extracts into the Photoshop Plug-ins folder.
Two things bite people here. First, version drift: plugin and node pack must match, or you get "version mismatch, please reinstall PS plugin" and nothing connects. Second, the layer must be renderable - a layer that's hidden or has no pixels returns empty. And worth knowing: this is a 1.x-era node; the 2.0 beta favors a plugin-driven flow, but this one still works fine.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| layer_or_group | LAYER | — | |
| boundopt | MASK | — | |
| qualityopt | FLOAT | 1000–100 | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| rgb_out | IMAGE | — |
| alpha_out | MASK | — |