To have the toolkit generate the array of colors:
If the image is grayscale (not binary) call the GrayScaleToMultitoneCommand with Distribution set to GrayScaleToMultitoneCommandDistributionType.Linear. The GrayScaleToMultitoneCommand will take the color(s) set in the Color property and generate a 256 color gradient for each color.
If the image is not grayscale (it is color) call the GrayScaleToMultitoneCommand with Distribution set to GrayScaleToMultitoneCommandDistributionType.Linear. The GrayScaleToMultitoneCommand will take the color(s) set in the Color property and generate a 256 color gradient for each color. These colors will be used to change only those pixels in the color image for which Red = Green = Blue.
To use a user-defined array of colors:
If the image is grayscale (not binary) call GrayScaleToMultitoneCommand with Distribution set to GrayScaleToMultitoneCommandDistributionType.UserDefined.
If the image is not grayscale (it is color) call GrayScaleToMultitoneCommand with Distribution set to GrayScaleToMultitoneCommandDistributionType.UserDefined. (See the expanded explanation in i, ii and iii of (b) above.) These colors will be used to change only those pixels in the color image for which Red = Green = Blue.
For more information, refer to Introduction to Image Processing With LEADTOOLS. For more information, refer to Grayscale Images.
Gray Scale to Multitone Function - Before

Gray Scale to Multitone Function - After

View additional platform support for this Gray Scale to Multitone function.
Run the GrayScaleToMultitoneCommand on an image.
using Leadtools;using Leadtools.Codecs;using Leadtools.ImageProcessing.Color;public void GrayScaleToMultitoneCommandExample(){// Load an imageRasterCodecs codecs = new RasterCodecs();codecs.ThrowExceptionsOnInvalidImages = true;RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, @"ImageProcessingDemo\Beauty16.jpg"));// Prepare the commandGrayScaleToMultitoneCommand command = new GrayScaleToMultitoneCommand();command.Colors = new RasterColor[2];command.Colors[0].R = 255;command.Colors[0].G = 255;command.Colors[0].B = 0;command.Colors[1].R = 255;command.Colors[1].G = 0;command.Colors[1].B = 0;command.Gradient = null;command.Distribution = GrayScaleToMultitoneCommandDistributionType.Linear;command.Tone = GrayScaleToMultitoneCommandToneType.Duotone;command.Type = GrayScaleToDuotoneCommandMixingType.ReplaceOldWithNew;command.Run(image);codecs.Save(image, Path.Combine(LEAD_VARS.ImagesDir, "Result.jpg"), RasterImageFormat.Jpeg, 24);}static class LEAD_VARS{public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images";}