背景色にあわせて自動的に文字色を変えたいのですが、
それぞれをいちいち指定するのが面倒なので、

背景が白っぽかったら、黒文字
背景が黒っぽかったら、白文字

背景が赤っぽかったら、青文字

みたいに自動的に色を計算してくれる関数なりクラスなりどこかに落ちてませんか?

cl := ColorCalc($77FF77);
ってやったらclに適正な色が入るようなのが理想です。