You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[BUG] pptx: set width on a group silently scales height too (implicit aspect-ratio lock, no opt-out) #237
set on a group silently locks the aspect ratio: setting only width also scales height (and vice versa). There is no way at L2 to resize a group along a single axis; the only workaround is raw-set on p:grpSpPr/a:xfrm/a:ext.
set width on a group should change only ext.cx (children scale horizontally via the chExt mapping), matching the behavior of set width on a plain shape. If the aspect lock is intentional, it should be opt-in (e.g. --prop keepAspect=true) and the default should honor exactly the properties the caller passed.
Confirmed — the implicit aspect lock was intentional (it protected add --type diagram groups from single-axis squashing) but leaking it onto every group with no opt-out was wrong. Fixed on main (45e432b), will be in the next release:
set on a group now changes exactly the axes you pass — --prop width=12cm leaves height untouched (children still scale horizontally via the chExt baseline). Same fix applied to docx groups.
The proportional behavior is now opt-in: --prop width=12cm --prop keepAspect=true scales height by the same ratio and re-bakes child font sizes with the uniform resize.
Activity
fix(pptx,docx): group resize honors only the passed axes; aspect lock…
goworm commentedon Jul 19, 2026
Confirmed — the implicit aspect lock was intentional (it protected
add --type diagramgroups from single-axis squashing) but leaking it onto every group with no opt-out was wrong. Fixed on main (45e432b), will be in the next release:seton a group now changes exactly the axes you pass —--prop width=12cmleaves height untouched (children still scale horizontally via the chExt baseline). Same fix applied to docx groups.--prop width=12cm --prop keepAspect=truescales height by the same ratio and re-bakes child font sizes with the uniform resize.Verified against your repro:
Thanks for the precise repro and the raw-set workaround for others in the meantime.