Visual Basic
C#
Managed Extensions for C++
C++/CLI
Parameters
- page
- Image to change color space.
- newColorSpace
- New color space.
- doNotScalePixels
- Flag indicating whether to change pixel values according to the new color space.
- backgroundColor
- Background to composite the image over when removing alpha channel.
If conversion removes the alpha channel from an image, the image is composited over a solid background specified by BackColor. BackColor should be in the same color space as the original image, but without the Alpha channel. For example, if original image is in RGBA color space and newColorSpace is CMYK, BackColor should have RGB color space. The method will first transform the image into RGB and then to CMYK.
The following formula is used to burn alpha (i.e., to convert from RGBA/P to RGB):
- If Page is not pre-multiplied: I = I * A + B (1-A)
- If Page is pre-multiplied: I = I + B (1-A)
If the image contains extra channels, and newColorSpace contains extra channels, the method does not change them.
Note: Conversion to Grayscale colorspace takes into account the human eye's sensitivity to different parts of the light spectrum. ImageGear uses the following formula when converting from RGB to Grayscale: Gray = Gray = Red * 77 / 255 + Green * 151 / 255 + Blue * 28 / 255.