LBitmap::Invert

#include "ltwrappr.h"

virtual L_INT LBitmap::Invert(uFlags = 0)

L_UINT32 uFlags;

/* flags */

Inverts the colors in the class object's bitmap, making it like a photographic negative.

Parameter

Description

uFlags

Reserved for future use. Must be 0.

Returns

SUCCESS

The function was successful.

< 1

An error occurred. Refer to Return Codes.

Comments

This function can also be used to invert the color of a 1-bit image, making the black white and the white black.

This function originally works on the image source data, but if the image has a LUT, the function will work on the LUT.

To use this function with source data for an image that has LUT:

1.

Set the LBitmapBase::EnableUseLUT to FALSE.

2.

Call this function.

3.

After applying the function, set the LBitmapBase::EnableUseLUT back to TRUE.

myBitmap.EnableUseLUT(FALSE);
myBitmap.Invert();
myBitmap.EnableUseLUT(TRUE);
 

To update a status bar or detect a user interrupt during execution of this function, refer to LBase::EnableStatusCallback.

This function supports 12 and 16-bit grayscale and 48 and 64-bit color images. Support for 12 and 16-bit grayscale and 48 and 64-bit color images is available only in the Document/Medical toolkits.

This function does not support 32-bit grayscale images. It returns the error code ERROR_GRAY32_UNSUPPORTED if a 32-bit grayscale image is passed to this function.

Required DLLs and Libraries

LTDIS
LTFIL
LTIMGCLR

For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application.

Platforms

Win32, x64.

See Also

Functions:

LBitmap::AdjustTint. LBitmap::ColorHalfTone, LBitmap::ChangeHue, LBitmap::ChangeSaturation, LBitmap::HistoContrast, LBitmap::StretchIntensity, LBitmap::RemapIntensity, LBitmap::GetHistogram, LBitmap::ChangeContrast, LBitmap::ChangeIntensity, LBitmap::HistoEqualize, LBitmap::GammaCorrect, LBitmap::WindowLevel, LBitmap::WindowLevelExt, LBitmapBase::Fill, LBitmapBase::GetPixelColor, LBitmapBase::PutPixelColor, LBitmapBase::EnableUseLUT, LBitmap::AutoBinarize, LBitmap::DynamicBinary, LBitmap::AutoBinary, Class Members

Topics:

Raster Image Functions: Modifying Intensity Values

 

Correcting Colors

 

Raster Image Functions: Correcting Colors

Example

#define MAKE_IMAGE_PATH(pFileName) TEXT("C:\\Users\\Public\\Documents\\LEADTOOLS Images\\")pFileName
L_INT LBitmap__InvertExample()
{
   L_INT nRet;
   LBitmap LeadBitmap;
   nRet =LeadBitmap.Load(MAKE_IMAGE_PATH(TEXT("image1.cmp")), 0,ORDER_BGR);
   if(nRet !=SUCCESS)
      return nRet;
   nRet =LeadBitmap.Invert();
   if(nRet !=SUCCESS)
      return nRet;
   return SUCCESS;
}