virtual L_INT LBitmapBase::CopyPalette(pLSrcBitmap)
Copies the palette of a source bitmap and places it into a destination bitmap. Only the palette field of the bitmap handle is copied.
Pointer to the source bitmap handle. You must have a valid image loaded into the bitmap for this function to work.
Value | Meaning |
---|---|
SUCCESS | The function was successful. |
< 1 | An error occurred. Refer to Return Codes. |
This function does not support signed data images. It returns the error code ERROR_SIGNED_DATA_NOT_SUPPORTED if a signed data image is passed to this function.
The destination bitmap must be allocated and must be 8-bit or less before this function is called. The source bitmap and destination bitmap must have the same bits per pixel.
The destination bitmaps existing palette will be destroyed before the copy is made.
When the destination bitmap is freed, the palette will also be destroyed.
Win32, x64.
L_INT LBitmapBase__CopyPaletteExample()
{
L_INT nRet;
LBitmapBase LeadBitmap; /* Bitmap handle to hold the loaded image. */
pBITMAPHANDLE pLeadBitmapHandle = LeadBitmap.GetHandle();
/* Load the bitmap, keeping the bits per pixel of the file */
nRet = LeadBitmap.Load(MAKE_IMAGE_PATH(TEXT("IMAGE1.CMP")), 0, ORDER_BGR);
if(nRet !=SUCCESS)
return nRet;
LBitmapBase TmpBitmap;
pBITMAPHANDLE pTmpBitmapHandle = TmpBitmap.GetHandle();
nRet = TmpBitmap.Copy(LeadBitmap);
if(nRet !=SUCCESS)
return nRet;
nRet = TmpBitmap.CopyPalette(&LeadBitmap);
if(nRet !=SUCCESS)
return nRet;
//free bitmap
if(pLeadBitmapHandle->Flags.Allocated)
L_FreeBitmap(pLeadBitmapHandle);
if(pTmpBitmapHandle->Flags.Allocated)
L_FreeBitmap(pTmpBitmapHandle);
return SUCCESS;
}
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document