How can I determine the height of a TMP_Text object?

I’m trying to create a speech bubble containing a TMP_Text field where the width is constant, but the height changes to accomodate the height of the TMP_Text field. I have a listener subscribed to OnPreRenderText, but it seems like no matter what fields or methods I check on the TMP_Text instance it seems like the height is incorrect. I’ve tried the various preferred height/values methods, rendered height, and attempting to calculate the height from the mesh itself, but to no avail.

It seems like the ContentSizeFitter also has this issue because it cannot determine the minimum size of a TMP_Text field.

Is there a better way of determining this?