L_PaintDCBufferCallback

# include“l_bitmap.h”

L_LTDIS_APIL_INT实腹式预应力型钢混凝土,L_PaintDCBufferCallback (pCallbackData、pBitmap pSrcClip, pd, pDestClip, uROP3, pbuf, nBufferRow, nNumRows)

描绘图像数据从缓冲区使用油漆回调。

参数

pPAINTCALLBACKDATApCallbackData

指向结构的指针包含设备上下文(DC)和油漆回调。设备的映射模式必须MM_TEXT上下文。

pBITMAPHANDLEpBitmap

位图句柄指针描述图像绘画。

L_RECT* pSrc

指针指向的窗口矩形结构,指定了部分位图作为显示源代码。

矩形的坐标是相对于位图结构。使用默认的,你可以传递NULL匹配位图。

L_RECT* pSrcClip

指针指向的窗口矩形结构,指定了部分显示源漆。一般来说,这是用于更新显示当源位图的一部分已经改变了。

矩形的坐标是相对于位图结构。使用默认的,你可以传递NULL匹配位图。

L_RECT* pd

指针指向窗口矩形结构,决定了源矩形缩放,图像是如何定位的设备上下文。

矩形结构的坐标是相对于设备上下文。没有默认为这个参数。您必须指定矩形结构。

L_RECT* pDestClip

指针指向的窗口矩形结构,指定了部分显示矩形油漆。一般来说,这是用于更新显示表面的变化,比如当用户移动另一个窗口,揭示形象的一部分,被掩盖。

矩形结构的坐标是相对于设备上下文。使用默认的,你可以传递NULL匹配设备上下文。然而,在大多数情况下,您应该使用返回的矩形窗口WM_PAINT消息。

L_UINT32uROP3

Windows罗普决定目标矩形是如何更新的代码。这个参数需要BitBlt函数相同的代码窗口。对于普通的画,SRCCOPY使用。

L_UCHAR* pbuf

指向缓冲区的指针,其中包含油漆的图像数据。

L_INTnBufferRow

第一行画画。画的部分可能会受到任何行矩形参数。

L_INTnNumRows

油漆的行数。画的部分可能会受到任何行矩形参数。如果图像数据pbuf压缩比特数据,您可以指定的行数为负值(-nLines),解释加速1比特文件

返回

价值 意义
成功 函数是成功的。
< 1 一个错误发生。指返回代码

评论

HDC你应该存储在绘画PAINTCALLBACKDATA结构。有关详细信息,请参考其文档的GDI函数可188宝金博安卓下载以覆盖。

这个函数引用一个位图处理,这可能有也可能没有一个加载的位图。在这两种情况下,以下字段必须是指定的BITMAPHANDLE结构:

除了缓冲规格,该函数使用源和目标矩形一样L_PaintDC。为一个完整的解释,请参考L_PaintDC

你可以从一个回调函数调用L_PaintDCBufferCallback画图像位图时被加载。这种技术用于FILEREADCALLBACK程序的演示。C示例程序。

必需的dll和库

平台

x64 Win32。

另请参阅

功能

主题

例子

一次一线获取数据和描绘它。

L_INT PaintDCBufferExample (L_HWND hWnd, pBITMAPHANDLE pBitmap){L_INT nRet =成功;HDC HDC;/ *设备上下文当前窗口* /矩形rcd;/ *目标矩形绘画* /HPALETTE hSavedPalette =零;/ *当前系统调色板的临时副本* /HPALETTE hOurPalette =零;/ *面板中,我们将使用油漆* /L_INT x;PAINTCALLBACKDATA PAINTCALLBACKDATA;* / / *漆调数据结构* / / *的设备上下文hdc = GetDC (hWnd);/ *设置目标矩形是一样的位图。其他画矩形可以违约。* /GetClientRect (hWnd, &rcDest);/ *创建面板中,我们将使用油漆* /pBitmap hOurPalette = L_CreatePaintPalette (hdc);/ *选择调色板并保存旧* /hSavedPalette = SelectPalette (hdc hOurPalette,假);/ *实现调色板* /RealizePalette (hdc);/ *初始化漆调数据结构* /memset (&PaintCallbackData 0运算符(PaintCallbackData));PaintCallbackData。uStructSize =运算符(PAINTCALLBACKDATA);PaintCallbackData。pDisplay = hdc;/ *设置油漆回调GDI函数你是压倒一切的PaintCallbackData。pIsCompatibleDC = MyIsCompatibleDC;PaintCallbackData。pStretchDIBits = MyStretchDIBits;* // *油漆图片* /L_AccessBitmap (pBitmap);(x = 0;x < pBitmap - >高度;x + +){L_UCHAR * pBuf = (L_UCHAR *) malloc (pBitmap - > BytesPerLine);L_GetBitmapRow (pBitmap pBuf x pBitmap - > BytesPerLine);nRet = L_PaintDCBufferCallback (&rcDest &PaintCallbackData pBitmap,空,空,空,SRCCOPY, pBuf, x, 1);}L_ReleaseBitmap (pBitmap);/ *恢复旧面板* /SelectPalette (hdc hSavedPalette,假);/ *删除新创建面板* /DeleteObject (hOurPalette);/ * * /释放设备上下文ReleaseDC (hWnd, hdc);返回nRet;}

LEADTOOLS光栅成像C API的帮助
188金宝搏的网址客服|支持|联系我们|知识产权的通知
©1991 - 2021领先的技术公司。保留所有权利。