L_RotateBitmapViewPerspective

#include "l_bitmap.h"

L_LTKRN_API L_INT L_RotateBitmapViewPerspective(pBitmap, nAngle)

pBITMAPHANDLE pBitmap;

/* pointer to the bitmap handle */

L_INT nAngle;

/* degrees of rotation */

Rotates an image by changing the bitmap's view perspective.

Parameter

Description

pBitmap

Pointer to the bitmap handle.

nAngle

Degrees of rotation. Valid values +-90, +-180, +-270, or +-360. Positive values are clockwise; negative values are counterclockwise.

Returns

SUCCESS

The function was successful.

< 1

An error occurred. Refer to Return Codes.

Comments

This function achieves fast rotation by changing only the view perspective. After using this function, you can reverse the result by restoring the original View Perspective.

Some functions must account for the view perspective. For general information about view perspectives, refer to Accounting for View Perspective.

Required DLLs and Libraries

LTKRN

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:

L_RotateBitmap, L_ShearBitmap, L_FlipBitmap, L_ReverseBitmap, L_DlgRotate, L_HighQualityRotateBitmap

Topics:

Raster Image Functions: Doing Geometric Transformations

Example

#define MAKE_IMAGE_PATH(pFileName) TEXT("C:\\Users\\Public\\Documents\\LEADTOOLS Images\\")pFileName


 L_INT RotateBitmapViewPerspectiveExample(L_VOID)
{
   L_INT nRet;
   BITMAPHANDLE LeadBitmap;

   nRet = L_LoadBitmap(MAKE_IMAGE_PATH(TEXT("IMAGE1.CMP")), &LeadBitmap, sizeof(BITMAPHANDLE), 0, ORDER_BGR, NULL, NULL);
   if(nRet != SUCCESS)
      return nRet;

   nRet = L_RotateBitmapViewPerspective ( &LeadBitmap, 90 );
   if(nRet != SUCCESS)
      return nRet;

   nRet = L_SaveBitmap(MAKE_IMAGE_PATH(TEXT("Result.BMP")), &LeadBitmap, FILE_BMP, 24, 0, NULL);
   if(nRet != SUCCESS)
      return nRet;
   if(LeadBitmap.Flags.Allocated)
      L_FreeBitmap(&LeadBitmap);  

   return SUCCESS;
}