Hola José Luis.
Yo también tenía por algún lado esa rutina
... y buscando la encontré.
Y como suelo copiar y pegar las url, la saque de aqui :
http://www.swissdelphicenter.ch/en/showcode.php?id=1438
Como detalle, agrego que hay que agregar
si no, va a arrojar errores de identificador desconocido con: CHARFORMAT2, cbSize, ...
Saludos.