#include "ltwrappr.h"

virtual L_INT LBitmap::ConvertUnsignedToSigned(uFlags)

Converts an unsigned bitmap to signed.


L_UINT uFlags

Flag that indicates how to process bits outside the low bit to high bit range. Possible values are:

Value Meaning
PROCESS_RANGE_ONLY [0x0001] Shift data by adding half the range to each pixel without changing bits outside the (LowBit-HighBit) range.
PROCESS_OUTSIDE_RANGE [0x0002] Shift data by adding half the range to each pixel and set to zero all bits outside the (LowBit-HighBit) range.


Value Meaning
SUCCESS The function was successful.
< 1 An error occurred. Refer to Return Codes.


This function updates MaxVal and MinVal different values with new values that consider bitmap new sign. Also LBitmapBase::IsPixelsSigned() value will be set to one.

This function supports 12 and 16-bit grayscale images. Support for 12 and 16-bit grayscale 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


Win32, x64.

See Also




L_INT LBitmap__ConvertUnsignedToSignedExample(LBitmap * plBitmap)  
   L_INT nRet; 
   /* convert bitmap to signed */ 
   if(!plBitmap->IsPixelsSigned() )  
      nRet =plBitmap->ConvertUnsignedToSigned(PROCESS_RANGE_ONLY); 
      if(nRet !=SUCCESS) 
         return nRet; 
      return FAILURE; 
   return SUCCESS; 
Help Version 21.0.2021.7.2
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2021 LEAD Technologies, Inc. All Rights Reserved.

LEADTOOLS Raster Imaging C++ Class Library Help