`
PKI_Gavin
  • 浏览: 21229 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

BitBlt函数功能

阅读更多
函数功能:该函数对指定的源或设备环境区域中的像进行位块(bit_block)转换,以传送到目标设备环境。

函数源型:BOOL BitBlt(HDC hdcDest, int nXDest, int nYDest, int nWidth, int nHeight, HDC hdcSrc, int nXSrc, int nYSrc, DWORD dwROP);

参数:
thdcDest:指向目标设备环境的句柄。
nXDest:指定目标矩形区域克上角的X轴逻辑坐标。
nYDest:指定目标矩形区域左上角的Y轴逻辑坐标。
nWidth:指定源和目标矩形区域的逻辑宽度。
nHeight:指定源和目标矩形区域的逻辑高度。
hdcSrc:指向源设备环境句柄。
nXSrc:指定源矩形区域左上角的X轴逻辑坐标。
nYSrc:指定源矩形区域左上角的Y轴逻辑坐标。
dwRop:指定光栅操作代码。这些代码将定义源矩形区域的颜色数据,如何与目标矩形区域的颜色数据组合以完成最后的颜色。
下面列出了一些常见的光栅操作代码:
BLACKNESS:表示使用与物理调色板索引0相关的色彩来填充目标矩形区域,(对缺省的物理调色板而言,该颜色为黑色)。
DSTINVERT:表示使目标矩形区域颜色取反。
MERGECOPY:表示使用布尔类型的AND(与)操作符将源矩形区域的颜色与特定模式组合一起。
MERGEPAINT:通过使用布尔类型的OR(或)操作符将反向的源矩形区域的颜色与目标矩形区域的颜色合并。
NOTSRCCOPY:将源矩形区域颜色取反,再拷贝到目标矩形区域。
NOTSRCERASE:使用布尔类型的OR(或)操作符组合源和目标矩形区域的颜色值,然后将怕颜色取反。
PATCOPY:将特定的模式拷贝到位图上。
PATPAINT:通过使用布尔OR(或)操作符将源矩形区域取反后的颜色值与特定模式的颜色合并。然后使用OR(或)操作符将该操作的结果与目标矩形区域内的颜色合并。
PATINVERT:通过使用XOR(异或)操作符将目标矩形区域内的颜色与特定模式的颜色合并。
SRCAND:通过使用AND(与)操作符将来源和目标矩形区域内的颜色合并。
SRCCOPY:将源矩形区域直接拷贝到目标矩形区域。
SRCERASE:通过使用AND(与)操作符将目标矩形区域颜色取反后与源矩形区域的颜色值合并。
SRCCINVERT:通过使用布尔型的XOR(异或)操作符将源和目标矩形区域的颜色合并。
SRCPAINT:通过使用布尔型的OR(或)操作符将源和目标矩形区域的颜色合并。
WHITENESS:使用与物理调色板中索引1有关的颜色填充目标矩形区域。(对于缺省物理调色板来说,这个颜色就是白色)。

返回值:如果函数成功,那么返回值非零;如果函数失败,则返回值为零。
Windows NT:若想获取更多的错误信息,请调用GetLastError函数。

备注:如果在源设备中可以实行旋转或剪切变换,那么函数数BitBlt返回一个错误。如果存在其他变换(并且目标设备环境中匹配变换无效),那么目标设备环境中的区域将在需要时进行拉伸、压缩或旋转。
如果源和目标设备环境的颜色格式不匹配,那么BitBlt函数将源场景的颜色格式转换成能与目标格式匹配的格式。当正在记录一个增强型图元文件时,如果源设备环境标识为一个增强型图元文件设备环境,那么会出现错误。如果源和目标设备环境代表不同的设备,那么BitBlt函数返回错误。
Windows CE:在Windows CE 1.0版中,参数dwRop只可以指定为下列值:SRCCOPY,SRCAND,SRCPAINT,SRCINVERT。在Windows CE 2.0版中,参数dwRop可以是任何油印机操作代码值。

速查:Windows NT:3.1及以上版本;Windows:95及以上版本;Windows CE:1.0及以上版本;头文件:Wingdi.h;库文件:gdi32.lib。
2
0
分享到:
评论

相关推荐

    API之网络函数---整理网络函数及功能

    API之网络函数1. API之网络函数 WNetAddConnection 创建同一个网络资源的永久性连接 WNetAddConnection2 创建同一个网络资源的连接 WNetAddConnection3 创建同一个网络资源的连接 WNetCancelConnection 结束一...

    模拟qq截图功能

    易语言源码可以截图哟根据qq功能开发出来的附件

    纯GDI完美实现半透明不规则窗口(总代码量381行,1个cpp文件)

    我建议大家用GetGlyphOutline()手动提取字形像素去绘制,因为TextOut这类绘制函数功能有限,只适合初级软件使用,而要想画出丰富多彩的界面,比如字体alpha渐变,就必须自己操作像素,所以GetGlyphOutline()才是专业...

    C++MFC教程

    了解和MFC各个类功能相近的API函数。 3、一定要理解MFC中消息映射的作用。 4、训练自己在编写代码时不使用参考书而是使用Help Online。 5、记住一些常用的消息名称和参数的意义。 6、学会看别人的代码。 7、多看书,...

    GDI完美实现半透明不规则窗口(总代码量381行,1个cpp文件)

    我建议大家用GetGlyphOutline()手动提取字形像素去绘制,因为TextOut这类绘制函数功能有限,只适合初级软件使用,而要想画出丰富多彩的界面,比如字体alpha渐变,就必须自己操作像素,所以GetGlyphOutline()才是专业...

    C++开发截屏小程序功能

    BitBlt,这个函数,相当于拷贝,将一个环境的设备内容拷贝到另一个设备中。 CreateCompatibleBitmap,创建一块画布,将其放在兼容性的DC里面,这样就可以在里面画图了,当然还要放入画笔和画刷这些。 介绍完这些函数...

    ImageSee 1.0源码

    功能不比ACDSee弱 (1)以缩略图方式显示某一目录下所有图片文件。 ... (3)软件界面任意组合,图片预览大小任意可调。...(4)以幻灯片方式(特技效果)显示某一目录...实现原理:定义滤镜接口函数,动态加载.dll文件

    学VC编游戏第一程序:我来了源代码

    这是《学VC、编游戏》的第一个示例,通过这个实例来...学习C++的功能函数的定义和使用方法。  4.学习调用图形的MFC方法LoadImage()和显示图形的方法  5.学习在编辑框上显示文字和在设备场景中显示文字的方法。

    《学VC、编游戏》第一个示例:我来了源代码.rar

    3.学习C 的功能函数的定义和使用方法。 4.学习调用图形的MFC方法LoadImage()和显示图形的方法 5.学习在编辑框上显示文字和在设备场景中显示文字的方法。 重点:在VC中创建程序、并显示图形。

    Ex Direct UI 3.0 & MiniBlink-易语言

    主要实现了两个功能: 1. 自动化调用__cdecl函数,内部自动进行栈平衡  思路:所以接口都是代理函数,内部直接调用 _wkeRedirect,而这个函数会回溯到调用代理函数的那一帧,保存当前栈情况,调用完后返回本函数,本...

    Zoomer (abandoned):显示鼠标周围的放大图像-开源

    Zoomer是一个应用程序(现已停产),它在屏幕右下角的小窗口中显示鼠标周围环境的放大图像。 如果您要精确定位用户控件,或者需要知道屏幕特定点的... 它主要是作为如何在Delphi中使用Windows BitBlt函数的示例编写的。

    ImageSee

    5.主要技巧算法: (1)缩略图 实现原理:动态创建Tbitmap对象,设定大小并画上两个边框使其像一个panel,最后把按比例缩小后的图片bitblt于其上。 (2)语法高亮方式显示.pas文件 实现原理:该功能其实就是编译原理...

    C++ MFC实现飞机大战游戏

    整个绘制过程需要使用到BitBlt()函数。整个功能的实现过程如下:  (1) 创建一张大小与需要绘制图像相同的位图作为“掩码”位图;  (2) 将新创建的“掩码”位图存储至掩码位图的设备描述表中;  (3) 把位图设备...

    类似ACDSee源码

    实现原理:动态创建Tbitmap对象,设定大小并画上两个边框使其像一个panel,最后把按比例缩小后的图片bitblt于其上。 (2)语法高亮方式显示.pas文件 实现原理:该功能其实就是编译原理中的词法分析器所要实现...

    仿windows关机功能界面

    // 核心函数,将屏幕变暗 HBITMAP CMyFade::FadeBitmap(HBITMAP hBmp, double dfTrans) { HBITMAP hRetBmp = NULL; if (hBmp) { HDC hBufferDC = CreateCompatibleDC(NULL); HGDIOBJ hPrevBufObject = ...

    BBGame (windows GDI制作的小游戏)

    windows GDI 函数制作的小游戏, 很不错的呀!!! 功能不完全的,只有了2D游戏基本效果 -WoViCh

    Delphi 5编程实例与技巧

    5.3.2 屏蔽系统功能键 123 5.3.3 模拟按下键盘上的某个键 124 5.3.4 限制鼠标移动的范围 124 5.3.5 自定义鼠标 125 5.3.6 设置光标闪烁的速度 126 5.3.7 不同程序间的拖曳操作 127 第6章 文件、目录和驱动器 129 6.1...

    DELPHI 5编程实例与技巧

    5.3.2 屏蔽系统功能键 123 5.3.3 模拟按下键盘上的某个键 124 5.3.4 限制鼠标移动的范围 124 5.3.5 自定义鼠标 125 5.3.6 设置光标闪烁的速度 126 5.3.7 不同程序间的拖曳操作 127 第6章 文件、目录和驱动器 129 6.1...

Global site tag (gtag.js) - Google Analytics