Composition Styler
Classic composition rules as prompt presets
- text_positive
- text_negative
CompositionStyler is a small, tasteful menu - 11 entries, all of them straight out of a photography-101 syllabus: Rule of Thirds, Symmetry, Leading Lines, Negative Space, Framing, Balance, Pattern, Perspective, Simplicity, Texture. Instead of a big vocabulary dump, it's a curated set of layout concepts. If your images keep coming out centered and static, nudging the model toward "Leading Lines" or "Rule of Thirds" is a cheap way to get a composition that feels arranged rather than snapshotted.
It's one of the more restrained, sensible nodes in the pack. No 400-entry scroll, no NSFW tags - just eleven composition ideas you can flip through.
How it works
MileHighStyler is a fork of SDXL Prompt Styler. Each composition concept is a JSON template with a {prompt} slot; the node drops your text_positive in and wraps the composition phrase at a strong weight (~2.0). Fair warning about this menu in particular: composition is a soft concept for diffusion models. "Rule of thirds" doesn't reliably move your subject to a third-line the way a real crop would - it biases the model toward images captioned that way. Output is a rewritten prompt string into your CLIP Text Encode; nothing touches the model.
The inputs and outputs that matter
- composition - the 11-entry dropdown.
No optionis the off switch. - text_positive - your subject; the composition cue attaches to it.
- text_negative - optional negative text.
log_prompt prints the finished prompt to the console. Outputs are text_positive and text_negative strings, into a CLIP Text Encode.
Installing it
ComfyUI Manager: search ComfyUI_MileHighStyler, install, restart. Or:
cd ComfyUI/custom_nodes && git clone https://github.com/TripleHeadedMonkey/ComfyUI_MileHighStyler
then restart. No models, no requirements.txt, no dependencies - Python and JSON. Nodes appear under ali1234/stylers.
Where people get burned
- Composition words are suggestions, not layout controls. This is the big one. If you need the subject actually off-center or a specific crop, a prompt cue won't guarantee it - use an aspect ratio, an outpaint, or a ControlNet. This menu shifts the odds; it doesn't place pixels.
- Symmetry can over-trigger. "Symmetry" at a strong weight sometimes mirrors faces or bodies into the uncanny. If you get a too-perfect mirror, that's the emphasis - dial the concept back.
- Model era. The
2.0weighting is SDXL/SD 1.5 syntax, silently dropped on 2026 LLM-encoded models (Flux 2, Z-Image, Qwen) - though on those the plain composition word still reads as a normal instruction, so just write it. - Low ceiling by design. Eleven presets you could type. The value is the reminder that composition is a lever at all; most people never prompt it.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| text_positive | STRING | — | |
| text_negative | STRING | — | |
| composition | COMBO | 11 options: No option, Balance, Framing, LeadingLines, NegativeSpace, Pattern, +5 | |
| log_prompt | BOOLEAN | true | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| text_positive | STRING | — |
| text_negative | STRING | — |