打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
delphi 截图简单的实现

将图片保存为bmp格式的,图片有点大;
代码如下:

var dc:HDC; fullCanvas:TCanvas; bm:TBitmap; dlg1: TSavePictureDialog;begin dc:=GetDC(0); fullCanvas:=TCanvas.Create; dlg1:=TSavePictureDialog.Create(nil); bm:=TBitmap.Create; fullCanvas.Handle:=dc; try if dlg1.Execute then begin bm.Width:=Screen.Width; bm.Height:=Screen.Height; bm.Canvas.CopyRect(Rect(0,0,bm.Width,bm.Height),fullCanvas,Rect(0,0,Screen.Width,Screen.Height)); bm.SaveToFile(dlg1.FileName+'.bmp'); end; finally fullCanvas.Free; dlg1.Free; bm.Free; end;end;
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25

将图片保存为png格式的,这时候的图片就小了很多。

var pg:TPngObject; dc:HDC; fullCanvas:TCanvas; bm:TBitmap; dlg1: TSavePictureDialog;begin dc:=GetDC(0); fullCanvas:=TCanvas.Create; bm:=TBitmap.Create; dlg1:=TSavePictureDialog.Create(nil); pg:=TPngObject.Create; fullCanvas.Handle:=dc; try if dlg1.Execute then begin bm.Width:=Screen.Width; bm.Height:=Screen.Height; bm.Canvas.CopyRect(Rect(0,0,bm.Width,bm.Height),fullCanvas,Rect(0,0,Screen.Width,Screen.Height)); pg.Assign(bm); pg.SaveToFile(dlg1.FileName+'.png'); end; finally fullCanvas.Free; bm.Free; dlg1.Free; pg.Free; end;end;
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29

参考:http://www.cnblogs.com/zhwx/archive/2012/05/16/2503524.html

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
一个实用的Delphi屏幕截图程序的设计
用Delphi实现抓屏
MFC
[原]DELPHI图像显示特效
delphi实现屏幕截图
图像叠加
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服