#include "ltwrappr.h"
virtual L_INT LPaint::PaintDCBuffer(LBuff, nRow, nCount=1, uROP3=SRCCOPY)
LBuffer& LBuff; |
an LBuffer object that contains the data to paint |
L_INT nRow; |
first row to paint |
L_INT nCount; |
number of rows to paint |
L_UINT32 uROP3; |
windows ROP code for display |
Paints image data into a device context from a buffer.
Parameter |
Description |
LBuff |
A LEAD buffer of type LBuffer that contains the image data to paint. |
nRow |
The first row to paint. The painted portion of any row may be limited by the bitmap object rectangles. |
nCount |
The number of rows to paint. The painted portion of any row may be limited by the bitmap object rectangles.. If the image data in LBuff is compressed 1-bit data, you can specify the number of lines as a negative value (-nLines), as explained in Speeding Up 1-Bit Documents. |
uROP3 |
The Windows ROP code that determines how the destination rectangle is updated. This parameter takes the same codes as the Windows BitBlt() function. For ordinary painting, use SRCCOPY. |
SUCCESS |
The function was successful. |
< 1 |
An error occurred. Refer to Return Codes. |
This function references a LEAD bitmap object, which may or may not have a loaded bitmap. In either case, the following fields must be specified in the LEAD bitmap object:
The Width, Height, BitsPerPixel, Order, and ViewPerspective fields must all be set to the correct values for the image. (You can use the LBitmapBase::Initialize function to set the values.)
The Palette for the bitmap object must be a valid palette (an array of RGBQUAD values). You can create or update the palette using the LBitmapBase::PutColors() function.
Except for the buffer specifications, this function uses source and destination rectangles the same as LPaint::PaintDC. For a complete explanation, refer to LPaint::PaintDC.
You can call LPaint::PaintDCBuffer from a callback function to paint an image while a bitmap is being loaded. This technique is used through the LFile load callback functions.
The LBuff parameter is passed by reference, and is a required parameter.
Required DLLs and Libraries
LTDIS For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application. |
Win32, x64.
Functions: |
Class Members, LBitmapBase::RectToBitmap, LBitmapBase::RectFromBitmap |
Topics: |
|
|
|
|
L_INT LPaint__PaintDCBufferExample(LBitmapBase& LeadBitmap,HDC hDC)
{
L_INT nRet;
LPaint LeadPaint(&LeadBitmap,hDC);
L_INT i,nBytesPerLine;
L_SIZE_T zRet;
nBytesPerLine = LeadBitmap.GetBytesPerLine() ;
LBuffer LeadBuffer((DWORD)nBytesPerLine) ;
for( i = 0 ; i < LeadBitmap.GetHeight() ; i++)
{
zRet = LeadBitmap.GetRow(&LeadBuffer,i) ;
if(zRet < 1)
return FAILURE;
nRet = LeadPaint.PaintDCBuffer(LeadBuffer,i) ;
if(nRet != SUCCESS)
return nRet;
}
return SUCCESS;
}
Raster .NET | C API | C++ Class Library | JavaScript HTML5
Document .NET | C API | C++ Class Library | JavaScript HTML5
Medical .NET | C API | C++ Class Library | JavaScript HTML5
Medical Web Viewer .NET