LBitmapBase::Resize

#include "ltwrappr.h"

virtual L_INT LBitmapBase::Resize(pLBitmapDst, uStructSize, uFlags)

Resizes the class object's bitmap and places the resized bitmap in the destination class object.

Parameters

LBitmapBase * pLBitmapDst

Pointer to a LBitmapBase bitmap object that will be updated with the resized bitmap.

L_UINT uStructSize

Size of the BITMAPHANDLE structure used by the object. Pass sizeof(BITMAPHANDLE).

L_UINT uFlags

Flags that control the behavior when resizing the bitmap. Use one of the following:

Value Meaning
SIZE_NORMAL [0x0000] Resize normally.
SIZE_FAVORBLACK [0x0001] (Document/Medical only) Preserve black objects when making the image smaller. This option affects only 1-bit, black-and-white images, where it prevents the disappearance of thin lines. You can use a bitwise OR ( | ) to combine this flag with another one. For example, SIZE_RESAMPLE | SIZE_FAVORBLACK causes color images to be resampled, but applies the favor-black option to 1-bit, black-and-white images.
SIZE_RESAMPLE [0x0002] Use linear interpolation and averaging to produce a higher-quality image.
SIZE_BICUBIC [0x0004] Use bicubic interpolation and averaging to produce a higher quality image. This is slower than SIZE_RESAMPLE.
SIZE_SCALETOGRAY [0x0008] (Document/Medical only). Use interpolation to display black and white images using shades of gray when the image is resized. This improves the readability when the image is scaled up or down. The generated image is 8-bit grayscale, so this option should be used only for black and white images.
SIZE_OLD_RESAMPLE [0x0010] Use the old resample algorithm from LEADTOOLS 14.5.
SIZE_PREMULTIPLYALPHA [0x0020] Premultiply the alpha channel values when performing resize.

Returns

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

Comments

This function will use the width and height specified in the destination class object for the resize operation.

Required DLLs and Libraries

Platforms

Win32, x64.

See Also

Functions

Topics

Example

L_INT LBitmapBase__ResizeExample() 
{ 
   L_INT nRet; 
   LBitmapBase MyBitmap, ResizeBitmap; 
 
   nRet =MyBitmap.Load(MAKE_IMAGE_PATH(TEXT("image1.cmp"))); 
   if(nRet !=SUCCESS) 
      return nRet; 
   nRet =ResizeBitmap.Create(100,100,24,ORDER_BGR, NULL,TOP_LEFT,TYPE_CONV); 
   if(nRet !=SUCCESS) 
      return nRet; 
   nRet = MyBitmap.Resize(&ResizeBitmap, sizeof(BITMAPHANDLE), SIZE_NORMAL); //this will resize MyBitmap and put the resized image in ResizeBitmap 
   if(nRet !=SUCCESS) 
      return nRet; 
 
   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
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2021 LEAD Technologies, Inc. All Rights Reserved.