bitblt函数怎么用啊?

 我来答
艳阳高照的午后
2015-05-31 · TA获得超过1万个赞
知道大有可为答主
回答量:1.2万
采纳率:97%
帮助的人:4922万
展开全部
  bitblt:
  该函数对指定的源设备环境区域中的像素进行位块(bit_block)转换,以传送到目标设备环境。
  用法参数:
  hDestDC:指向目标设备环境的句柄。
  x:指定目标矩形区域左上角的X轴逻辑坐标。
  y:指定目标矩形区域左上角的Y轴逻辑坐标。
  nWidth:指定源在目标矩形区域的逻辑宽度。
  nHeight:指定源在目标矩形区域的逻辑高度。
  hSrcDC:指向源设备环境的句柄。
  xSrc:指定源矩形区域左上角的X轴逻辑坐标。
  ySrc:指定源矩形区域左上角的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有关的颜色填充目标矩形区域。(对于缺省物理调色板来说,这个颜色就是白色)。
  dwRop Values
  From wingdi.h:
  #define BLACKNESS 0x42
  #define DSTINVERT 0x550009
  #define MERGECOPY 0xC000CA
  #define MERGEPAINT 0xBB0226
  #define NOTSRCCOPY 0x330008
  #define NOTSRCERASE 0x1100A6
  #define PATCOPY 0xF00021
  #define PATINVERT 0x5A0049
  #define PATPAINT 0xFB0A09
  #define SRCAND 0x8800C6
  #define SRCCOPY 0xCC0020
  #define SRCERASE 0x440328
  #define SRCINVERT 0x660046
  #define SRCPAINT 0xEE0086
  #define WHITENESS 0xFF0062
  
钱路路通6338
2012-01-27 · TA获得超过130个赞
知道答主
回答量:122
采纳率:0%
帮助的人:117万
展开全部
specified source device context into a destination device context.

Syntax

Parameters

hdcDest [in]

A handle to the destination device context.

nXDest [in]

The x-coordinate, in logical units, of the upper-left corner of the destination rectangle.

nYDest [in]

The y-coordinate, in logical units, of the upper-left corner of the destination rectangle.

nWidth [in]

The width, in logical units, of the source and destination rectangles.

nHeight [in]

The height, in logical units, of the source and the destination rectangles.

hdcSrc [in]

A handle to the source device context.

nXSrc [in]

The x-coordinate, in logical units, of the upper-left corner of the source rectangle.

nYSrc [in]

The y-coordinate, in logical units, of the upper-left corner of the source rectangle.

dwRop [in]

A raster-operation code. These codes define how the color data for the source rectangle is to be combined with the color data for the destination rectangle to achieve the final color. The following list shows some common raster operation codes.

Value Meaning

BLACKNESS

CAPTUREBLT

DSTINVERT

MERGECOPY

MERGEPAINT

NOMIRRORBITMAP

NOTSRCCOPY

NOTSRCERASE

PATCOPY

PATINVERT

PATPAINT

SRCAND

SRCCOPY

SRCERASE

SRCINVERT

SRCPAINT

WHITENESS

Return value

If the function succeeds, the return value is nonzero. If the function fails, the return value is zero. To get extended error information, call GetLastError.

Remarks

BitBlt only does clipping on the destination DC. If a rotation or shear transformation is in effect in the source device context, BitBlt returns an error. If other transformations exist in the source device context (and a matching transformation is not in effect in the destination device context), the rectangle in the destination device context is stretched, compressed, or rotated, as necessary. If the color formats of the source and destination device contexts do not match, the BitBlt function converts the source color format to match the destination format. When an enhanced metafile is being recorded, an error occurs if the source device context identifies an enhanced-metafile device context. Not all devices support the BitBlt function. For more information, see the RC_BITBLT raster capability entry in the GetDeviceCaps function as well as the following functions: MaskBlt, PlgBlt, and StretchBlt. BitBlt returns an error if the source and destination device contexts represent different devices. To transfer data between DCs for different devices, convert the memory bitmap to a DIB by calling GetDIBits. To display the DIB to the second device, call SetDIBits or StretchDIBits. ICM: No color management is performed when blits occur.

Examples

For an example, see Capturing an Image.

Requirements

Minimum supported client Windows 2000 Professional

Minimum supported server Windows 2000 Server

Header Wingdi.h (include Windows.h)

Library Gdi32.lib

DLL Gdi32.dll

See also

Bitmaps Overview Bitmap Functions GetDeviceCaps GetDIBits MaskBlt PlgBlt SetDIBits StretchBlt StretchDIBits
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式