If you use TCanvas for text output and want transparent text, you must set background mode to transparent. Using WinAPI function would look like this SetBkMode(Canvas.Handle, TRANSPARENT). There's probably some method/property in TCanvas that would do the same.