Image Rotate (new node): rotate, zoom and reposition an image inside a definable canvas. Free or fixed (45 degree snap) rotation, centre-zero angle slider (CCW left, CW right), exponential centre-zero zoom (-100 = 0.25x, +100 = 4x), percent-based XY placement, and transparent/black/white background fill. An optional mask input rides the identical matrix so it stays registered to the image. Canvas W/H inputs default to 0, meaning "match the incoming image". Remove Background Pro: rotation block added at the bottom of the settings (enable toggle, free/fixed method, angle slider, XY placement). Applied after removal so rembg always segments the upright image; the canvas stays at the original size and image, mask, masked_image, mask_bw and passthrough are all warped by the same matrix. New transform_utils module keeps the rotate/zoom/offset math identical across both nodes. js/image_transform.js snaps the angle slider to 45 degree steps in fixed mode and hides the rotation widgets until the toggle is on; Python snaps too, so the result is correct regardless of frontend version.
15 lines
700 B
TOML
15 lines
700 B
TOML
[project]
|
|
name = "comfyui-machinepainting-nodes"
|
|
description = "Professional photo editing tools for ComfyUI. Features Photoshop-style curves, levels, and color adjustments, AI-powered masking / background removal, LUT color grading, advanced channel masking, color management, and advanced workflow utility tools. Built to help you take your AI-generated images to the next level."
|
|
version = "2.2.0"
|
|
license = { file = "LICENSE" }
|
|
dependencies = ["opencv-python-headless>=4.7", "numpy>=1.23,<3", "rembg>=2.0"]
|
|
|
|
[project.urls]
|
|
Repository = "https://github.com/machinepainting/ComfyUI-MachinePaintingNodes"
|
|
|
|
[tool.comfy]
|
|
PublisherId = "machinepainting"
|
|
DisplayName = "MachinePainting Nodes"
|
|
Icon = ""
|