UIConstraint that syncs textsize of specified GuiObjects

As a Roblox developer, it is currently too hard to make GUI that looks good when using TextScaled on multiple objects that should have matching text size. A common example of where you’d want this is a shop gui. If you want to display any type of title/description in a box of text, the varying text length will lead to the text size being different on all objects, which looks really bad:

image

Due to the localization support in this example I can’t just set a fixed text size in case some translations are too big, and as far as I know the only ways to currently get around this while using TextScaled is by:

  • Manually adjusting the gui size of the all TextGui’s (Doesn’t work if the shop has dynamic text or if you want any localization)
  • Disabling TextScale and loop-searching for the highest TextSize that allows all text to show, and applying that to all objects, so all objects use the maximum possible text size in the group (Requires updating every time the screen changes size or when an object changes text)

If I do the second option on my Gui, which is about what I’d want the proposed UIConstraint to do, it will turn out like this which looks a lot better:
image

However, this gets really tedious to do if you have a lot of different groups of text to sync, and you’d need to account for any time that the text of one object changes which is just a pain to work with it.

If Roblox is able to address this issue, it would improve my development experience because I won’t have to spend days making custom GUI logic, and international players won’t have to put up as much with GUI that frequently looks wrong and missized.

9 Likes