#include "ltwrappr.h"

virtual L_INT LBitmap::Scramble (nColStart, nRowStart, nWidth, nHeight, uKey, uFlags)

L_INT32 nColStart;

starting column in pixels (0-based)

L_INT32 nRowStart;

starting row in pixels (0-based)

L_INT32 nWidth;

width of area to scramble in pixels

L_INT32 nHeight;

height of area to scramble in pixels

L_UINT32 uKey;

key that determines the scramble

L_UINT uFlags;

flag that determines whether to encrypt or decrypt the area

Scrambles all or a portion of a bitmap.

Parameter Description
nColStart Starting column in pixels (0-based).
nRowStart Starting row in pixels (0-based).
nWidth Width of area to scramble in pixels.
nHeight Height of area to scramble in pixels.
uKey Key that determines the scramble. This is an unsigned integer with a minimum value of 0 and a maximum value of 4294967295 (0xffffffff).
uFlags Flag that determines whether to encrypt or decrypt the area. Possible values are:
  Value Meaning
  SB_ENCRYPT Encrypts the area (the reverse of a decrypt).
  SB_DECRYPT Decrypts the area (the reverse of an encrypt).
  SB_INTERSECT Intersect the specified rect with the bitmap's rect.



The function was successful.

< 1

An error occurred. Refer to Return Codes.


Scrambling a rectangular area means that the pixels in that area are shuffled around into a pseudo-random location within the area.

Some properties of shuffling:

Given the same encrypt area (defined by nColStart, nRowStart, nWidth, nHeight) and the same key, setting (uFlags = SB_ENCRYPT) is the inverse of (uFlags = SB_DECRYPT)

Required DLLs and Libraries


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


Win32, x64.

See Also


LAnnEncrypt::GetEncryptOptions, LAnnEncrypt::SetEncryptOptions, Class Members


Annotation Functions: Object Properties


Implementing Annotations


Automated User Interface for Annotations


Annotation Functions: Creating and Deleting Annotations


Types of Annotations


L_INT LBitmap__ScrambleExample(LBitmap *pLBitmap)  
   if (!pLBitmap->IsAllocated()) 
      return FAILURE;  
   return pLBitmap->Scramble(0,  
Help Version 20.0.2020.4.5
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2020 LEAD Technologies, Inc. All Rights Reserved.

LEADTOOLS Raster Imaging C++ Class Library Help