看上去象是将一段内存恢复到bitmap当中。对于Delphi也许比这个操作更为简单,那就是利用TBitmap类型,或许可以通过LoadFromStream一类的进行操作。
解决方案 »
- 听说delphi中report machine能编写代码,在哪里写?
- 请问 我用delphi7 用rave5制作报表,我想在打印预览时 设置页码; 如有两页 第一页显示为:第1页,共2页;第二页显示为:第2页,共2页 这种形式 ?请指点!
- 一个简单的SQL语句问题,送分啊
- 我用iocp写了个服务器
- 关于EM-LINEFROMCHAR的问题!在线等!!解决马上给分!
- 新手提问!
- 非典算什么,和这个比是小菜
- webbrowser能载入我想让他载入的网页的一部分吗?
- 这段循环怎样实现?
- undeclared identitier:'showmessage'是什么意思?为什么showmessage('显示对话框')这语句运行不了?
- 谁用cxgrid做过批量操作的代码?
- delphi2010编译报两个错误,比较奇怪的问题。
GetChangesBuffer 应该是个结构体,按同样声明在delphi同样声明一个结构体。然后就是delphi的内存操作,不比C#复杂。
var
m_BackBm :TBitmap;
procedure TForm1.GrabImageDirect(const R: TRect);
var
ImgLine0: PChar;
DstStride: integer;
begin
// NOTE: negative stride because DstStride bottom-up (std windows bitmap)
ImgLine0 := PChar(m_BackBm.ScanLine[0]);
DstStride := -ScaleByPixformat(m_BackBm.Width, m_BackBm.PixelFormat);
// ImgLine0 := PChar(m_BackBm.ScanLine[m_BackBm.Height-1]);
// DstStride := ScaleByPixformat(m_BackBm.Width, m_BackBm.PixelFormat);
vd.CaptureRect(R, DstStride, ImgLine0);
image1.Picture.Assign(m_BackBm);
end;// levk 2006.05.19: created
procedure TForm1.GrabImageFullscreen;
var
R: TRect;
begin
R := Rect(0, 0, m_BackBm.Width, m_BackBm.Height);
//GrabImageFromDc(R);
GrabImageDirect(R);
end;不知道跟C#的是否对应