录像抓图如何拉框放大(100分)

  • 主题发起人 主题发起人 jzg2727
  • 开始时间 开始时间
J

jzg2727

Unregistered / Unconfirmed
GUEST, unregistred user!
使用dspack播放录像,然后点击按钮抓一张图片在image图片框,然后我想使用鼠标在image内拉框,放大框内的图片,该如何实现请指教
 
其中ScreenCap是自定义函数,截取屏幕指定区域,看看对你有没有用

代码如下:
procedure TClient.ScreenCap(LeftPos,TopPos,
RightPos,BottomPos:integer);
var
RectWidth,RectHeight:integer;
SourceDC,DestDC,Bhandle:integer;
Bitmap:TBitmap;
begin

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;
BitMap.SaveToStream(BmpStream);
BmpStream.Position:=0;
LeftSize:=BmpStream.Size;
Bitmap.Free;
DeleteDC(DestDC);
ReleaseDC(Bhandle,SourceDC);
end;
 
SourceDC:=CreateDC('DISPLAY',',',nil);
出错了
no enough actual parameters
 
如果要放大,你可以用CANVAS的COPYRECT函数来实现。

canvas.copyrect(destrect,canvas,sourcerect)
/// destrect是你要放到多大,sourcerect是你框内的大小如(0,0,200,200),canvas则是你要放大图的CANVAS了。

 
后退
顶部