Nodes/comfyui-kepri-nodes-pack/Kepri Image Finalize (Resize + Crop/Pad + Bg)
ComfyUI Node

Kepri Image Finalize (Resize + Crop/Pad + Bg)

A ComfyUI node in Kepri/Background with 15 inputs and 3 outputs.

By wearekhepri·Created 3 months ago·Updated about a month ago· 1
Kepri Image Finalize (Resize + Crop/Pad + Bg)
  • background_color
  • image
  • mask
  • background_image
  • image
  • mask
  • over_zoom_risk
longest_edge2048
aspect_ratio1:1
background_modecolor
background_opacity1.00
padding_unitpercent
padding_h0
padding_w0
framingfull_view
framing_data
max_crop_frac0.22
aspect_ratio_override
CategoryKepri/Background

Inputs (15)

NameTypeDefaultDescription
longest_edgeINT204864–8192
aspect_ratioCOMBO1:110 options: original, 1:1, 4:3, 3:4, 16:9, 9:16, +4
background_modeCOMBOcolor3 options: transparent, color, image_preset
background_colorKEPRI_COLOR#FFFFFFCouleur de fond (mode 'color'). Clique la pastille = sélecteur de couleur natif du navigateur. Format #RRGGBB.
background_opacityFLOAT1.000–1Opacité du fond (mode 'color' uniquement). 1 = couleur pleine, 0 = fond transparent, entre = fond semi-transparent (l'opacité est portée par la sortie mask).
padding_unitCOMBOpercent2 options: percent, pixels
padding_hINT00–4096Marge verticale (haut ET bas) autour de l'objet centré. Unité = padding_unit ci-dessus. En 'percent' = % de la hauteur de l'objet (ex: 10) ; en 'pixels' = nb de px dans la résolution finale. Appliqué AVANT le fond.
padding_wINT00–4096Marge horizontale (gauche ET droite) autour de l'objet centré. Unité = padding_unit ci-dessus. En 'percent' = % de la largeur de l'objet (ex: 10) ; en 'pixels' = nb de px dans la résolution finale. Appliqué AVANT le fond.
imageoptIMAGE
maskoptMASK
background_imageoptIMAGE
framingoptCOMBOfull_viewfull_view = objet entier : il rentre en entier dans le format, le padding ajoute de la marge autour. details = photo close-up où l'objet est déjà coupé par le cadre : remplit le format cible (cover) en rognant le minimum, centré, sur le côté le plus long ; padding_h/padding_w/padding_unit ignorés.
framing_dataoptSTRINGMétadonnées de cadrage packées venant de KepriFramingAnalysis (ex. 'details;T=1,B=0,L=0,R=0;mT=0,mB=42,mL=30,mR=30'). Si branché : override le widget framing et pilote le padding/crop ADAPTATIF par axe (bord collé = 0 pad + ancrage ; bord libre = padding donné + extension du fond ; axe collé des 2 côtés = cover). Vide/absent = widget framing, comportement inchangé.
max_crop_fracoptFLOAT0.220–0.9Garde-fou sur-zoom du mode adaptatif. Quand un axe collé des 2 côtés (cover) force l'autre axe à déborder, fraction maximale de l'objet rognable sur cet axe ; au-delà le rognage est PLAFONNÉ à cette valeur et seul le manque restant devient des bandes de fond sur l'axe collé (+ over_zoom_risk=True). Curseur continu : 0 = jamais rogner (bandes maxi), 0.9 = quasi toujours plein cadre. N'agit que si framing_data est branché.
aspect_ratio_overrideoptSTRINGFormat branchable qui override le widget aspect_ratio. Permet de piloter PLUSIEURS KepriImageFinalize depuis une seule source (ex. primitive STRING dans le graph blending → le finalize transparent du subgraph background ET le recadrage de la plaque restent synchro). Accepte 'original' ou tout couple entier 'L:H' (ex. '1:1', '16:9'). Vide/absent ou invalide = widget aspect_ratio, comportement inchangé.

Outputs (3)

NameTypeDescription
imageIMAGE
maskMASK
over_zoom_riskBOOLEAN