Как сгенерировать резиновое изображение?
Судя по всему, Вам нужно это. Если текста "много" - делаем размер шрифта меньше на единицу и так до тех пор, пока его "много" быть не перестанет.
Вообще, решение очень сильно зависит от того, как именно вы это делаете.
Средствами ImageMagic, как исполняемой программы, это делается через указание параметра -size: www.imagemagick.org/Usage/text/#label_bestfit
Это решение имеет смысл, если вы вызываете convert из PHP через exec() или shell_exec()
Если же вы говорите о функциях ImageMagick в PHP, то там аналогичной возможности нет, и проще всего сгенерировать пустое изображение с текстом заведомо большого размера, а потом, получив размер той картинки, которую вы хотите снабдить текстом, уменьшить изображение текста и наложить его на целевую картинку.