Templates & Rendering

Linked Font Sizes (Uniform Groups & Relative Sizing)

When a text frame uses **auto-size**, RenderStack shrinks the font until the text fits the frame. By default every frame does this on its own, so two frames with different text lengths end up at diffe

Why this matters#

Imagine a single OpenGraph template for a multi-speaker event. One render has "John Doe / CTO", another has "Elizabeth Smith-Williamsburg / Senior Core Solutions Engineer". With independent auto-size, the short name renders large and the long name renders small — the card looks inconsistent. Linked font sizes fix this so every speaker card looks designed, from one template.

Uniform Groups#

Give two or more frames the same group name. All frames in a group resolve to the smallest auto-fitted size among them, so they render at one uniform size even when each frame's text length differs.

  • Put both speaker name frames in a group called names → both names render at the same size, sized to fit the longest name.
  • Put both title frames in a group called titles → both titles render at the same size.

Relative Sizing#

Set a frame's size as a percentage of another frame's final resolved size. The reference is resolved first (including its own group and clamp), then the relative frame is capped at the percentage.

  • Set each title frame relative to its speaker's name frame at 60%. The title can never be larger than 60% of the name's final size.
  • Because relative sizing tracks the reference's final size, pointing a frame at any member of a group makes it follow that group's resolved size automatically.

Combining Both#

Group and relative-to are not mutually exclusive — a frame can belong to a group and be sized relative to another frame. In the speaker example: group the two titles together and make each relative to its name. The titles end up uniform with each other and proportional to the names.

Per-Frame Min / Max Clamp#

Optional minimum and maximum font size act as hard floor and ceiling. Clamps always apply last, after group and relative resolution, so text never drops below or exceeds your limits regardless of the other relationships.

Resolution Order#

  1. Each frame auto-fits to its own content (Phase 1 natural size).
  2. Uniform groups collapse to the smallest size in each group.
  3. Relative frames are capped at their percentage of the reference's final size.
  4. Per-frame min/max clamps are applied.

Worked Example: Two-Speaker Event Card#

FrameTextGroupRelative-toResult
name_a"John Doe"namesmatches name_b
name_b"Elizabeth Smith-Williamsburg"namessets the shared name size
title_a"CTO"titlesname_a @ 60%uniform with title_b, ≤ 60% of name size
title_b"Senior Core Solutions Engineer"titlesname_b @ 60%sets the shared title size

Both names render uniform, both titles render uniform, and titles stay proportional to names — for any speaker lineup, from one template.

Setting It Up#

In the Template Editor, select a text frame and open the Linked Font Sizes section in the Properties panel. Choose a size group, optionally pick a frame to size relative to (with a percentage), and set any min/max clamps. The same relationships are honored identically by the rendering engine, so API and GET renders match the editor preview exactly.