|
Available in LEADTOOLS Imaging Pro, Vector, Document, and Medical Imaging toolkits. |
LBitmapBase::Resize
#include "ltwrappr.h"
virtual L_INT LBitmapBase::Resize(pLBitmapDst, uStructSize, uFlags)
|
LBitmapBase * pLBitmapDst; |
/* pointer to a LBitmapBase bitmap object to be updated*/ |
|
L_UINT uStructSize; |
/* size of the BITMAPHANDLE structure */ |
|
L_UINT uFlags; |
/* flags that control the resize behavior */ |
Resizes the class object's bitmap and places the resized bitmap in the destination class object.
|
Parameter |
Description |
|
|
pLBitmapDst |
Pointer to a LBitmapBase bitmap object that will be updated with the resized bitmap. |
|
|
uStructSize |
Size of the BITMAPHANDLE structure used by the object. Pass sizeof(BITMAPHANDLE). |
|
|
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. |
Returns
|
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
|
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. |
See Also
|
Functions: |
LBitmapBase::Size, LBuffer::StartResize, LBuffer::Resize, LBuffer::StopResize, LBitmapBase::SizeInterpolate, Class Members |
|
Topics: |
|
|
|
Example
L_INT LBitmapBase__ResizeExample()
{
L_INT nRet;
LBitmapBase MyBitmap, ResizeBitmap;
RGBQUAD Colors[256];
nRet =MyBitmap.Load(TEXT("%UserProfile%\\My Documents\\LEADTOOLS Images\\image1.cmp"));
if(nRet !=SUCCESS)
return nRet;
nRet =MyBitmap.GetColors(0, 255, Colors) ;
if(nRet !=SUCCESS)
return nRet;
nRet =ResizeBitmap.Create(100,100,24,ORDER_BGR, Colors,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;
}