画布上的字体的背景要透明该怎么办?(50分)

L

li__lu

Unregistered / Unconfirmed
GUEST, unregistred user!
如题
我只记得要画刷了
具体忘了

谢谢
 
....canvas.brush.style=bsclear;
....canvas.textout(...)
 
procedure TForm1.Button1Click(Sender: TObject);
var
OldBkMode : integer;
begin
with Form1.Canvas do begin
Brush.Color := clRed;
FillRect(Rect(0, 0, 100, 100));
Brush.Color := clBlue;
TextOut(10, 20, 'Not Transparent!');
OldBkMode := SetBkMode(Handle, TRANSPARENT);
TextOut(10, 50, 'Transparent!');
SetBkMode(Handle, OldBkMode);
end;
end;
 
用beginpath()
textout()
endpath()
getpath()得到路径
pathtoregion用路径到区域(),再用fillrgn填充区域.

 
多人接受答案了。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
469
import
I
I
回复
0
查看
1K
import
I
顶部