关于,image canvas ,的textout 写出的字,怎么擦除 比如 imgbg.Canvas.TextOut(400,10,'你好')在imgbg 上写出"你好"!!怎样把这样写出来的字擦除掉 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 比较高效一点的方法可以考虑只重绘你TextOut的区域而不是全部重绘 procedure TForm1.Button1Click(Sender: TObject);var r: TRect; bmp: TBitmap;begin bmp := TBitmap.Create; bmp.Width := 100; bmp.Height := 100; bmp.Canvas.Font.Assign(Font); bmp.Canvas.TextOut(20,20,'你好'); BitBlt(Canvas.Handle,0,0,bmp.Width,bmp.Height, bmp.Canvas.Handle,0,0,NOTSRCERASE or MERGECOPY); bmp.Free;end;执行一次写入,再执行一次擦除! 如果有很多次反复 擦,写, 用textout的方法是不是会慢, 真接在面放Lable 是不是好一些 重画一下,然后再绘,你可以textout(0,0,空串);做在labele也不错; 学PhotoShop,做多个图层,直到满意再合并图层 InvalidateRect(Handle, ARect, True);或者FillRect,不过,需要计算文字的区域。 如何设置DBGridEh按排班的格式显示? 求助 菜鸟问题,可能是语法错误,送分! 有没有办法把DBGRIDEH设计成这样的?? 广州吉旭公司现急招JSP程序员 新手提问:关于delphi+opengl开发三维! 关于图像与线程的问题!!!!!!! 请教关于AHM控件的问题 怎样用DELPHI 编程禁止IE下载文件?? delphi中有没有办法实现Image的任意角度的旋转 怎么判断一个字符串是不是数字?(在线等) 关于解释DBGridEh的LookUp下拉多列表格的使用方法
var
r: TRect;
bmp: TBitmap;
begin
bmp := TBitmap.Create;
bmp.Width := 100;
bmp.Height := 100;
bmp.Canvas.Font.Assign(Font);
bmp.Canvas.TextOut(20,20,'你好');
BitBlt(Canvas.Handle,0,0,bmp.Width,bmp.Height,
bmp.Canvas.Handle,0,0,NOTSRCERASE or MERGECOPY);
bmp.Free;
end;执行一次写入,再执行一次擦除!
或者FillRect,不过,需要计算文字的区域。