Delphi实现截屏功能
转载* 功能: 截取屏幕中的指定区域
** 输入参数:
** LeftPos :左坐标
** TopPos :上坐标
** RightPos:右坐标
** BottomPos :底部坐标
** author : liubin
** datetime : 2010-10-01
***********************************}
procedure ScreenCap(LeftPos,TopPos,RightPos,BottomPos:integer);
var
RectWidth,RectHeight:integer;
SourceDC,DestDC,Bhandle:integer;
Bitmap:TBitmap;
MyJpeg: TJpegImage;
Stream:TMemoryStream;
begin
MyJpeg:= TJpegImage.Create;
RectWidth:=RightPos-LeftPos;
RectHeight:=BottomPos-TopPos;
SourceDC:=CreateDC('DISPLAY','','',nil);
DestDC:=CreateCompatibleDC(SourceDC);
Bhandle:=CreateCompatibleBitmap(SourceDC,
RectWidth,RectHeight);
SelectObject(DestDC,Bhandle);
BitBlt(DestDC,0,0,RectWidth,RectHeight,SourceDC,
LeftPos,TopPos,SRCCOPY);
Bitmap:=TBitmap.Create;
Bitmap.Handle:=BHandle;
Stream := TMemoryStream.Create;
Bitmap.SaveToStream(Stream);
Stream.Free;
try
MyJpeg.Assign(Bitmap);
MyJpeg.CompressionQuality:=70;
MyJpeg.Compress;
MyJpeg.SaveToFile('C:\MyJPEGImage.JPG');
finally
MyJpeg.Free;
Bitmap.Free;
DeleteDC(DestDC);
ReleaseDC(Bhandle,SourceDC);
end;
end;
本文章为转载内容,我们尊重原作者对文章享有的著作权。如有内容错误或侵权问题,欢迎原作者联系我们进行内容更正或删除文章。
上一篇:TBitmap在线程中绘制有问题
下一篇:delphi从路径中分离文件名
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
Java实现电脑无线实时投屏
Java实现电脑无线实时投屏
接收端 Image Java -
实现pdf跳页解析功能
pdf解析分享
json github 宽高 -
Android实现截屏与截长图功能
在Android开发中,有时候会遇到需要截屏分享到朋友圈或者QQ,截屏有截取当前屏幕,也有需要截取不仅一个屏幕,
android Android javascript i++ -
iOS截屏功能
代码:
ide 初始化 #pragma ico 编程