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

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

参数:

hdcDest:指向目标设备环境的句柄。

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(与)操作符将目标矩形区域颜色取反后与源矩形区域的颜色值合并。

SRCINVERT:通过使用布尔型的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。

blt功能_BitBlt使用详解 | 学步园相关推荐

  1. python正则去掉重复单词_python使用正则表达式去除中文文本多余空格,保留英文之间空格方法详解 | 学步园...

    在pdf转为文本的时候,经常会多出空格,影响数据观感,因此需要去掉文本中多余的空格,而文本中的英文之间的正常空格需要保留,输入输出如下: input:我今天 赚了 10 个亿,老百姓very happ ...

  2. python b64encode_Python base64模块详解 | 学步园

    Python base64模块是用来作base64编码解码的. 最简单的加解密实例: import base64 str1 = 'djhui' str2 = base64.b64encode(str1 ...

  3. serverlet 原理_Serverlet详解 | 学步园

    Serverlet简介: Servlet(Server Applet),全称Java Servlet,未有中文译文.是用Java编写的服务器端程序.其主要功能在于交互式地浏览和修改数据,生成动态Web ...

  4. oracle object_type,Oracle TYPE OBJECT详解 | 学步园

    ====================================================== 最近在自学PL/SQL高级编程,了解到对象类型(OBJECT TYPE). 特意搜索了一下 ...

  5. java csf_WebService CSF使用详解 | 学步园

    一建立service: 1)CxfService: @WebService publicinterfaceCxfService { @WebMethod public@WebResultList ge ...

  6. java 双分派_双分派 和 访问者模式详解 | 学步园

    为什么 网上的人都说 java 只支持 单分派不支持双分派? 这段代码摘子某书[code=Java] public class Dispatch{ static class QQ{} static c ...

  7. java的graphics2d_Java Graphics2D 使用详解 | 学步园

    正如我们在前面提到的,我们可以对Graphics2D类进行多项设置.实际上,渲染引擎在绘制Graphics2D图形前会查看 7个主要的属性: Paint Stroke Font Transformat ...

  8. ncverilog脚本_Ncverilog 常用命令使用详解 | 学步园

    作者:5life #A s E*O0S4D }+kDICDER      工作状态:建立仿真环境数字,集成电路,IC,FAQ,Design compiler,数字信号处理,滤波器,DSP,VCS,NC ...

  9. java setprocessaffinitymask_SetThreadAffinityMask详解 | 学步园

    MSDN上的描述: SetThreadAffinityMask TheSetThreadAffinityMaskfunction sets a processor affinity mask for ...

最新文章

  1. 关于js中cookie的认识
  2. Android 换肤
  3. webpack-dev-server 不是内部或外部命令,也不是可运行的程序 解决方案
  4. 网络编程(part3)--文件读写之二进制文件读写/with操作
  5. 添加文字 生成pdf_PDF 文件编辑方法和工具大全
  6. Openlayer通过wms请求geoserver加载慢
  7. [MSDN]Design Guidelines for Developing Class Libraries with .NET Framework 4
  8. bnuoj4220素数难题
  9. 软件公司内部协作平台的选型(项目/BUG/需求管理及用户支持)
  10. Altium Designer 详细入门教程-原理图绘画-AD2016
  11. 国外11个高质量免费的3D素材网站-建筑设计/室内设计/效果图渲染
  12. 闵行区电动自行车上牌地址
  13. 纯电动汽车快慢充原理介绍
  14. 起名字 - 第二部分
  15. Git - 学习/实践 - 以及相关操作
  16. 大整数运算-大数的存储与运算
  17. Springboot集成七牛云,实现图片上传功能
  18. 玉帝传美猴王上天,大闹天宫之Java设计模式:命令模式
  19. FANSEA泛海微MCU单片机IC方案LED智能紫外(UVC+UVA)消毒灯
  20. 「Swift」跳转至第三方App|淘宝、天猫、京东

热门文章

  1. haut 1262: 魔法宝石(dij+堆优化)@
  2. 了解C语言中的pipe()系统调用
  3. 看看老牛是如何给陈彤写的信的
  4. mysql 共享nfs,服务器之间搭建NFS共享文件 - 老牛博客
  5. rancher 企业级容器管理平台
  6. 如何看待鸿蒙操作系统
  7. 别忽略国美之争的真正遗产
  8. 鸿蒙开发(2)---Button组件
  9. 用原生js+html写一个像素鸟游戏
  10. 在成长的路上,我们必须与自己坦诚相见