Location:
gifscaler.h
Link against: gifscaler.lib
class CGifScaler : public CBase;
Description
The public API for clients to call the GifScaler scaling and color quantization library.
Derivation
CBase
- Base class for all classes to be instantiated on the heap
CGifScaler
- The public API for clients to call the GifScaler scaling and color quantization library
Members
Defined in CGifScaler
:
Cancel()
, EHighQualityQuantization
, ELowQualityQuantization
, EMaximumQualityQuantization
, EMediumQualityQuantization
, NewL()
, NewL()
, Scale()
, TOptions
, ThresholdScale()
, ~CGifScaler()
Inherited from CBase
:
Delete()
,
Extension_()
,
operator new()
static IMPORT_C CGifScaler *NewL(CFbsBitmap &aSource, TOptions aOptions=EHighQualityQuantization);
Description
The function NewL constructs a CGifScaler. This version constructs a scaler for scaling and color quantizing only. No mask
data is required in this case)
Parameters
CFbsBitmap &aSource |
The bitmap to be re-scaled.
|
TOptions aOptions |
Scaling and color quantization options.
|
|
Return value
CGifScaler *
|
A pointer to a fully constructed CGifScaler
|
|
Leave codes
KErrArgument |
if the source bitmap or the options are invalid.
|
|
Panic codes
ENoSourceBitmap |
if the source bitmap has not been created.
|
|
static IMPORT_C CGifScaler *NewL(CFbsBitmap &aSource, CFbsBitmap &aSourceMask, TOptions aOptions=EHighQualityQuantization);
Description
The function NewL constructs a CGifScaler. This version constructs a scaler for scaling and color quantizing an image with
transparency.
Parameters
CFbsBitmap &aSource |
The bitmap to be re-scaled.
|
CFbsBitmap &aSourceMask |
The mask bitmap that provides the transparency data.
|
TOptions aOptions |
Scaling and color quantization options.
|
|
Return value
CGifScaler *
|
A pointer to a fully constructed CGifScaler
|
|
Leave codes
KErrArgument |
if the source bitmap, source mask bitmap, or the options are invalid.
|
|
Panic codes
ENoSourceBitmap |
if the source bitmap has not been created.
|
ENoSourceMaskBitmap |
if the source mask bitmap has not been created.
|
|
IMPORT_C ~CGifScaler();
Description
This is the destructor for the CGifScaler and is responsible for deallocating all resources allocated by the CGifScaler.
IMPORT_C void Scale(TRequestStatus *aStatus, CFbsBitmap &aDestination, CPalette &aPalette, TBool aMaintainAspectRatio=ETrue);
Description
Scale the source bitmap and mask to produce a single 8bpp bitmap and an output palette. If a mask was supplied during construction
the last index in the palette will be used for transparency.
The scaling factor is based on the relative sizes of the source and target bitmaps. The operation is asynchronous. When it
is complete, successfully or otherwise, the TRequestStatus
aStatus is set, passing the state of the operation.
Parameters
TRequestStatus *aStatus |
Request status to signal when scaling is complete.
|
CFbsBitmap &aDestination |
The destination bitmap. (EColor256)
|
CPalette &aPalette |
The output palette.
|
TBool aMaintainAspectRatio |
ETrue - the aspect ratio is retained; this is the default. The same scaling factor is applied in both the horizontal and vertical
directions. This is the smaller of the horizontal scaling factor and the vertical scaling factor. EFalse - the aspect ratio
need not be retained.
|
|
IMPORT_C void ThresholdScale(TRequestStatus *aStatus, CFbsBitmap &aDestination, CPalette &aPalette, TUint8 aTransparencyThreshold,
TBool aMaintainAspectRatio=ETrue);
Description
Scale the source bitmap and mask to produce a single 8bpp bitmap and an output palette, specifying a transparency level to
be used when determining whether destination pixels are transparent. If a mask was supplied during construction the last index
in the palette will be used for transparency.
The scaling factor is based on the relative sizes of the source and target bitmaps. The operation is asynchronous. When it
is complete, successfully or otherwise, the TRequestStatus
aStatus is set, passing the state of the operation.
Parameters
TRequestStatus *aStatus |
Request status to signal when scaling is complete.
|
CFbsBitmap &aDestination |
The destination bitmap. (EColor256)
|
CPalette &aPalette |
The output palette.
|
TUint8 aTransparencyThreshold |
The transparency level used to determine if destination pixels are transparent.
|
TBool aMaintainAspectRatio |
ETrue - the aspect ratio is retained; this is the default. The same scaling factor is applied in both the horizontal and vertical
directions. This is the smaller of the horizontal scaling factor and the vertical scaling factor. EFalse - the aspect ratio
need not be retained.
|
|
IMPORT_C void Cancel();
Description
Cancel any outstanding activity.
TOptions
Description
TOptions is an enumeration within the namespace CGifScaler The enumeration provides a set of supported quantization levels:
(EHighQualityQuantization is the default setting as it provides the best balance between quality and speed)