扑抓当前屏幕并保存为图片

自定义截图函数

function TForm1.CaptureForm(HWND: THandle; W, H: Integer): TBitmap;

var

TmpBitmap: TBitmap;

TmpCanvas: TCanvas;

DC: HDC;

begin

TmpBitmap := TBitmap.Create;

TmpBitmap.Width := W;

TmpBitmap.Height := H;

DC := GetWindowDC(HWND);

TmpCanvas := TCanvas.Create;

TmpCanvas.Handle := DC;

TmpBitmap.Canvas.CopyRect(

Rect(0, 0, W, H),

TmpCanvas,

Rect(0, 0, W, H));

TmpCanvas.Free;

ReleaseDC(0, DC);

Result := TmpBitmap;

end;

procedure TForm1.Button1Click(Sender: TObject);
var
  jpg:TJPEGImage;
begin
    jpg:= TJPEGImage.Create;
    jpg.CompressionQuality:=100;
   
    jpg.Assign(CaptureForm(Handle, 500, 500));

jpg.SaveToFile(‘D:\1.jpg‘);
    ShowMessage(‘扑抓图片成功!‘);
end;

时间: 2024-10-23 15:19:55

扑抓当前屏幕并保存为图片的相关文章

VC将屏幕区域保存为图片[转]

VC将屏幕区域保存为图片,该代码为网上搜集整理. 1 int CDlldemoDlg::SaveBitmapToFile(HBITMAP hBitmap, LPSTR lpFileName) //hBitmap 为刚才的屏幕位图句柄 2 { //lpFileName 为位图文件名 3 WORD wBitCount; //位图中每个像素所占字节数 4 5 //定义调色板大小,位图中像素字节大小,位图文件大小,写入文件字节数 6 DWORD dwPaletteSize=0,dwBmBitsSize,

将屏幕保存为图片 将当前MFC程序保存为图片 c++ vc

将屏幕保存为图片,使用vs2008编译通过. [cpp] view plaincopy #include "stdafx.h" #include <windows.h> #include <atlimage.h> int __stdcall WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd) { HWND hwnd = ::GetDesktop

如何把Excel中的单元格等对象保存成图片

对于Excel中的很多对象,比如单元格(Cell),图形(shape),图表(chart)等等,有时需要将它们保存成一张图片.就像截图一样. 最近做一个Excel相关的项目,项目中遇到一个很变态的需求, 需要对Excel中的一些对象进行拍图,比如,对一个单元格设置一些颜色之后拍图,或者对一个图表,报表拍成图片.经过比较曲折的经历,终于还是完成了.拿出来分享一下. 要做Excel,首先当然是查看Excel的com对象模型.地址在这里: http://msdn.microsoft.com/en-us

Delphi RichEdit的内容保存为图片

uses RichEdit; {将RichEdit1的内容保存为图片,此函数也适合于RxRichEdit,即RichEdit: TRxRichEdit}procedure RichEditToCanvas(RichEdit: TRichEdit; Canvas: TCanvas; PixelsPerInch: Integer);varImageCanvas: TCanvas;fmt: TFormatRange;beginImageCanvas := Canvas;with fmt dobegin

OpenGL中的深度、深度缓存、深度测试及保存成图片

1.深度 所谓深度,就是在openGL坐标系中,像素点Z坐标距离摄像机的距离.摄像机可能放在坐标系的任何位置,那么,就不能简单的说Z数值越大或越小,就是越靠近摄像机. 2.深度缓冲区 深度缓冲区原理就是把一个距离观察平面(近裁剪面)的深度值(或距离)与窗口中的每个像素相关联.      首先,使用glClear(GL_DEPTH_BUFFER_BIT),把所有像素的深度值设置为最大值(一般是远裁剪面).      然后,在场景中以任意次序绘制所有物体.硬件或者软件所执行的图形计算把每一个绘制表面

对相机所看的视角截屏保存为图片

对相机所看的视角截屏保存为图片: 1 using UnityEngine; 2 using System.Collections; 3 using UnityEngine.UI; 4 /// <summary> 5 /// 对相机截图 6 /// </summary> 7 public class Jietu : MonoBehaviour { 8 9 public Camera camera; 10 Texture2D tex; 11 void Start() 12 { 13 t

PowerShell保存剪贴板图片并构造MarkDown语句

目标 最近在学着用MarkDown写文档,对传图片深恶痛绝.准备自己用PowerShell造个轮子,还好提前搜索,找到了很多大哥的文档. 整个要做的事情流程是 鼠标复制个剪贴板图片 进入程序处理逻辑 处理剪贴板图片,保存成本地文件(png或者jpg) 上传到一个图床,获取图床的连接 把图床的链接构造成MarkDown要求的格式,塞回剪贴板. 回到MarkDown编辑器,直接剪贴. 目标是2阶段的内容,完全用脚本实现. 实现 PowerShell对文件的操作进行创建修改是比较简单的,关键的地方在这

【开源】天猫店整店商品图片采集工具:屠刀(包含题图、颜色图、内容图,适用于服装类,按货号保存商品图片)

废话少说,先上程序运行时的图片 开源地址: https://github.com/xland/TuDao 编译好的版本下载地址: https://github.com/xland/TuDao/blob/master/%E5%8F%91%E5%B8%83%E5%8C%85/%E5%B1%A0%E5%88%80.zip?raw=true 说明: 天猫店整店商品图片采集工具(包含题图.颜色图.内容图,适用于服装类,按货号保存商品图片),目前只测试了一个店铺,可能会存在一些问题,收费负责解决问题.  

将HTML5 Canvas的内容保存为图片借助toDataURL实现

将HTML5 Canvas的内容保存为图片主要思想是借助Canvas自己的API - toDataURL()来实现,具体实现如下,感兴趣的朋友可以参考下哈,希望对你有所帮助 主要思想是借助Canvas自己的API - toDataURL()来实现,整个实现 HTML + JavaScript的代码很简单.  <html>  <meta http-equiv="X-UA-Compatible" content="chrome=1">  <