#include <icl/imageconversionextension.h>
class TImageConvScaler |
Public Member Enumerations | |
---|---|
enum | TScalerQuality { EMinimumQuality, EMediumQuality, EMaximumQuality } |
Public Member Functions | |
---|---|
IMPORT_C void | GetCapabilities(TScalerCaps &) |
IMPORT_C void | SetScalingL(const TSize &, TImageConvScaler::TScalerQuality, TBool) |
IMPORT_C void | SetScalingL(TInt, TImageConvScaler::TScalerQuality) |
Scaling extension for Image Conversion Library. Supports both arbitrary or 'power of two' 1/2, 1/4, 1/8 scaling
Quality used during scaling.
Enumerator | Value | Description |
---|---|---|
EMinimumQuality | ||
EMediumQuality | ||
EMaximumQuality |
IMPORT_C void | GetCapabilities | ( | TScalerCaps & | aCaps | ) | const |
Get the codec plugin's capabilities.
Parameters | |
---|---|
aCaps | Returns scaling capabilities of the codec plugin. |
IMPORT_C void | SetScalingL | ( | const TSize & | aDesiredSize, |
TImageConvScaler::TScalerQuality | aQuality, | |||
TBool | aLockAspectRatio | |||
) |
Request scaling to the desired size using the quality specified and specifying if the aspect ratio is to be preserved. Ensure that CImageDecoder::GetDestinationSize is used to obtain the size of destination bitmap passed to CImageDecoder::Convert if scaling is set up by calling this method.
Example: If a plugin is only capable of power of two scaling, with an original image size of 600x400, then calling this SetScalingL function with a desired size of 500x300 will result in a subsequent call to CImageDecoder::GetDestinationSize returning a size of 300x200 (that is, a scaling coefficient of -2).
See also: CImageDecoder::Convert CImageDecoder::GetDestinationSize TImageConvScaler::GetCapabilities
Parameters | |
---|---|
aDesiredSize | Proposed size of the scaled image. Note that this may not necessarily be the size returned by a subsequent call to CImageDecoder::GetDestinationSize and is dependant upon the operations (such as scaling, cropping and rotation) requested and also the capabilities of the plugin (which can be queried using TImageConvScaler::GetCapabilities). |
aQuality | Desired quality of the image. Allows codec to lower quality targets to improve performance. |
aLockAspectRatio | Set to ETrue if the aspect ratio of the original image is to be preserved. |
Leave Codes | |
---|---|
KErrNotSupported | if an invalid size is passed. |
KErrNotSupported | if aLockAspectRatio is EFalse and codec only supports preservation of aspect ratio. |
IMPORT_C void | SetScalingL | ( | TInt | aScalingCoeff, |
TImageConvScaler::TScalerQuality | aScalingQuality | |||
) |
Define the scaling to be applied to the image according to the given coefficient at the requested quality. Ensure that CImageDecoder::GetDestinationSize is used to obtain the size of destination bitmap to be passed to CImageDecoder::Convert.
See also: CImageDecoder::Convert
Parameters | |
---|---|
aScalingCoeff | Scale to apply to the source. 2 means twice the original size, -2 half the size. Do not confuse this with ReductionFactor where 2 indicates 1/2 size. |
aScalingQuality | Desired quality of the image. Allows codec to lower quality targets to improve performance. |
Leave Codes | |
---|---|
KErrNotSupported | if codec cannot perform the requested scale. |