SetDIBitsToDevice

SetDIBitsToDevice

VB声明

Declare Function SetDIBitsToDevice Lib "gdi32" Alias "SetDIBitsToDevice" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal dx As Long, ByVal dy As Long, ByVal SrcX As Long, ByVal SrcY As Long, ByVal Scan As Long, ByVal NumScans As Long, Bits As Any, BitsInfo As BITMAPINFO, ByVal wUsage As Long) As Long

说明

将一幅与设备无关位图的全部或部分数据直接复制到一个设备。这个函数在设备中定义了一个目标矩形,以便接收位图数据。它也在DIB中定义了一个源矩形,以便从中提取数据

返回值

Long,执行成功则返回扫描线的数量,零表示失败。会设置GetLastError

参数表

参数

类型及说明

hdc

Long,一个设备场景的句柄。该场景用于接收位图数据

x,y

Long,用逻辑坐标表示的目标矩形的起点

dx,dy

Long,用目标矩形的设备单位表示的宽度及高度

SrcX,SrcY

Long,用设备坐标表示的源矩形在DIB中的起点

Scan

Long,Bits数组中第一条扫描线的编号。如BitsInfo之BITMAPINFOHEADER部分的biHeight字段是正数,那么这条扫描线就会从位图的底部开始计算;如果是负数,就从顶部开始计算

NumScans

Long,欲复制的扫描线数量

Bits

Any,指向一个缓冲区的指针。这个缓冲区包含了以DIB格式描述的位图数据;这种格式是由BitsInfo指定的

BitsInfo

BITMAPINFO,对Bits DIB的格式和颜色进行描述的一个结构

wUsage

Long,下述常数之一

DIB_PAL_COLORS

颜色表是一个整数数组,其中包含了与目前选入hdc设备场景的调色板相关的索引

DIB_RGB_COLORS

颜色表包含了RG颜色

注解

GetDeviceCaps判断设备是否支持这个函数

Top