D2D1_CONVOLVEMATRIX_SCALE_MODE enumeration (d2d1effects.h)
The interpolation mode the Convolve matrix effect uses to scale the image to the corresponding kernel unit length. There are six scale modes that range in quality and speed.
Syntax
typedef enum D2D1_CONVOLVEMATRIX_SCALE_MODE {
D2D1_CONVOLVEMATRIX_SCALE_MODE_NEAREST_NEIGHBOR = 0,
D2D1_CONVOLVEMATRIX_SCALE_MODE_LINEAR = 1,
D2D1_CONVOLVEMATRIX_SCALE_MODE_CUBIC = 2,
D2D1_CONVOLVEMATRIX_SCALE_MODE_MULTI_SAMPLE_LINEAR = 3,
D2D1_CONVOLVEMATRIX_SCALE_MODE_ANISOTROPIC = 4,
D2D1_CONVOLVEMATRIX_SCALE_MODE_HIGH_QUALITY_CUBIC = 5,
D2D1_CONVOLVEMATRIX_SCALE_MODE_FORCE_DWORD = 0xffffffff
} ;
Constants
D2D1_CONVOLVEMATRIX_SCALE_MODE_NEAREST_NEIGHBOR Value: 0 Samples the nearest single point and uses that. This mode uses less processing time, but outputs the lowest quality image. |
D2D1_CONVOLVEMATRIX_SCALE_MODE_LINEAR Value: 1 Uses a four point sample and linear interpolation. This mode outputs a higher quality image than nearest neighbor mode. |
D2D1_CONVOLVEMATRIX_SCALE_MODE_CUBIC Value: 2 Uses a 16 sample cubic kernel for interpolation. This mode uses the most processing time, but outputs a higher quality image. |
D2D1_CONVOLVEMATRIX_SCALE_MODE_MULTI_SAMPLE_LINEAR Value: 3 Uses 4 linear samples within a single pixel for good edge anti-aliasing. This mode is good for scaling down by small amounts on images with few pixels. |
D2D1_CONVOLVEMATRIX_SCALE_MODE_ANISOTROPIC Value: 4 Uses anisotropic filtering to sample a pattern according to the transformed shape of the bitmap. |
D2D1_CONVOLVEMATRIX_SCALE_MODE_HIGH_QUALITY_CUBIC Value: 5 Uses a variable size high quality cubic kernel to perform a pre-downscale the image if downscaling is involved in the transform matrix. Then uses the cubic interpolation mode for the final output. |
D2D1_CONVOLVEMATRIX_SCALE_MODE_FORCE_DWORD Value: 0xffffffff |
Requirements
Requirement | Value |
---|---|
Header | d2d1effects.h |