Wait, so, if shrink === false, then we return the rect actually used by the text, but if it's true, we return undefined?