Yo en lo personal he utilizado
esta clase de Edward Eliot y me ha servido bien,, (utilizando la libreria GD) solo con un poco de modificaciones para que se adapte a mis necesidades en general.
NOTA: solo que esta en ingles si no te molesta...
saludos