# OutpaintPaddingComputeNode ## Overview `OutpaintPaddingComputeNode` converts outpainting preferences (percentages or absolute pixels plus gravity) into concrete padding values for a given image. It ensures the final canvas dimensions remain even—useful for latent-based diffusion models—and supports both symmetric and directional growth. ## Inputs - `image` (`IMAGE`): Reference image whose width/height determine the base canvas. - `mode` (`STRING`, default `"Percent"`): Matches the setting emitted by `OutpaintConfigNode`. `"Pixels"` bypasses percentage math. - `gravity` (`STRING`, default `"center"`): Indicates where additional space should be allocated when working in percent mode. Supports centre, edges, and corners. - `horizontal_percent` (`FLOAT`, default `20.0`): Horizontal expansion percentage. - `vertical_percent` (`FLOAT`, default `10.0`): Vertical expansion percentage. - `left_px`, `right_px`, `top_px`, `bottom_px` (`INT`, defaults `0`): Absolute pixel paddings used when `mode` is `"Pixels"`. ## Outputs - `left` (`INT`) - `top` (`INT`) - `right` (`INT`) - `bottom` (`INT`) ## Processing Notes - The node first reads the image dimensions from the BHWC tensor and converts all numeric inputs to safe ranges (`>= 0`). - In `"Pixels"` mode the provided per-edge values are used directly, followed by even-size enforcement. - In `"Percent"` mode the node computes the total horizontal/vertical padding and splits it according to `gravity` (e.g., bottom-heavy when gravity is `"bottom"`). - Even-dimension enforcement increments the right and/or bottom padding as needed so `(width + left + right)` and `(height + top + bottom)` are divisible by 2. ## Tips - Feed the outputs straight into padding-aware samplers or ControlNet preprocessing nodes. - When chaining with `OutpaintConfigNode`, keep the gravity strings in sync to avoid unintended splits.*** End Patch