其实这样也可以实现的:
//图片上显示透明的文字
procedure TForm1.Button1Click(Sender: TObject);
var
bitBuf:TBitmap;
begin
bitBuf:=TBitmap.Create;
bitbuf.LoadFromFile('./背景.bmp'); //高手请指点:不知道为什么,如果这里不载入张图片,直接在bitbuf上绘制图形,就是显示不出来啊。
form1.Canvas.Draw(0,0,bitbuf);
bitbuf.Transparent:=true;
bitbuf.TransparentColor:=$ffffff; //文字显示透明,由于输出的是白色背景字符
bitbuf.Canvas.font.color:=$00ffff; //文字颜色
bitbuf.Canvas.TextOut(10,10,'这样就是透明的字了!');
form1.Canvas.Draw(0,0,bitbuf);
end;