Si conoces el espacio disponible, creo recordar que a partir del Canvas puedes saber el tamańo que ocupa un texto concreto, con las propiedades actuales de fuente (de ese Canvas).
Se trataría de ir reduciendo la fuente, hasta conseguir que el tamańo obtenido sea menor que el disponible.
Revisa:
http://docwiki.embarcadero.com/Libra...nvas.TextWidth