Products | Support | Email a link to this topic. | Send comments on this topic. | Back to Introduction - All Topics | Help Version 19.0.11.2
|
Leadtools.ColorConversion Namespace > ConversionParameters Class : WhitePoint Property |
public ConversionWhitePoint WhitePoint {get; set;}
'Declaration Public Property WhitePoint As ConversionWhitePoint
'Usage Dim instance As ConversionParameters Dim value As ConversionWhitePoint instance.WhitePoint = value value = instance.WhitePoint
public: property ConversionWhitePoint WhitePoint { ConversionWhitePoint get(); void set ( ConversionWhitePoint value); }
This example will converts RGB to CMYK using built-in conversion.
Imports Leadtools Imports Leadtools.Codecs Imports Leadtools.ColorConversion <TestMethod()> _ Public Sub WhitePointExampleExample() ' Initialize the RasterCodecs class Dim codecs As RasterCodecs = New RasterCodecs ' StartUp the ColorConversion. RasterColorConverterEngine.Startup() ' The input file name Dim inputFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp") ' load the input image as Rgb. Dim rgbImage As RasterImage = codecs.Load(inputFileName, 24, CodecsLoadByteOrder.Rgb, 1, 1) ' Image buffer array Dim rgbBuffer(rgbImage.BytesPerLine * rgbImage.Height) As Byte ' get image buffer For i As Integer = 0 To rgbImage.Height - 1 rgbImage.GetRow(i, rgbBuffer, (i * rgbImage.BytesPerLine), rgbImage.BytesPerLine) Next ' Initialize the Cmyk buffer array Dim cmykBuffer(CInt(rgbImage.Height * rgbImage.Width * 4)) As Byte ' Initialize a new Converter object Dim converter As New RasterColorConverterEngine ' Initialize a new ConversionParameters new class object. Dim convParams As ConversionParameters = New ConversionParameters ' Initialize the WhitePoint property class. Dim whitePoint As ConversionWhitePoint = ConversionWhitePoint.Empty ' Set the WhitePoint property. whitePoint.WhitePoint = ConversionWhitePointType.D50 ' Set the XWhite property. whitePoint.XWhite = 0 ' Set the YWhite property. whitePoint.YWhite = 0 convParams.WhitePoint = whitePoint ' Set the Quantization property. convParams.Quantization = 8 ' Set the Method property. convParams.Method = ConversionMethodFlags.UseBuiltIn ' Set the ActiveMethod property. convParams.ActiveMethod = ConversionMethodFlags.UseBuiltIn ' Set GcrLevel property. Dim cmykParameters As New ConversionCmykParameters() cmykParameters.GcrLevel = 150 convParams.CmykParameters = cmykParameters Try ' Start the ColorConversion. converter.Start(ConversionColorFormat.Rgb, ConversionColorFormat.Cmyk, convParams) ' Convert Rgb to CMYK. converter.Convert(rgbBuffer, _ 0, _ cmykBuffer, _ 0, _ rgbImage.Width, _ rgbImage.Height, _ CInt(rgbImage.BytesPerLine - (rgbImage.Width * (rgbImage.BitsPerPixel / 8))), _ 0) ' Stop the ColorConversion. converter.Stop() ' Initialize an image to hold the converted buffer. Dim cmykImage As RasterImage = New RasterImage(RasterMemoryFlags.Conventional, rgbImage.Width, rgbImage.Height, 24, RasterByteOrder.Bgr, RasterViewPerspective.TopLeft, Nothing, IntPtr.Zero, 0) ' Start the color conversion converter.Start(ConversionColorFormat.Cmyk, ConversionColorFormat.Bgr, convParams) ' convert the image buffer converter.ConvertToImage(cmykBuffer, _ 0, _ cmykImage, _ rgbImage.Width, _ rgbImage.Height, _ 0, _ CInt(rgbImage.BytesPerLine - (rgbImage.Width * (rgbImage.BitsPerPixel / 8)))) ' stop the conversion converter.Stop() ' the output File Name. Dim outputFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "ResultImage.bmp") ' Save the result image. codecs.Save(cmykImage, outputFileName, RasterImageFormat.Bmp, 24) ' dispose the used images rgbImage.Dispose() cmykImage.Dispose() Catch ex As Exception MessageBox.Show(ex.Message) End Try ' Shutdown the ColorConversion. RasterColorConverterEngine.Shutdown() End Sub Public NotInheritable Class LEAD_VARS Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images" End Class
using Leadtools; using Leadtools.Codecs; using Leadtools.ColorConversion; [TestMethod] public void WhitePointPropertyExample() { // Initialize the RasterCodecs class RasterCodecs codecs = new RasterCodecs(); // StartUp the ColorConversion. RasterColorConverterEngine.Startup(); // The input file name string inputFileName = Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp"); // load the input image as Rgb. RasterImage rgbImage = codecs.Load(inputFileName, 24, CodecsLoadByteOrder.Rgb, 1, 1); // Image buffer array byte[] rgbBuffer = new byte[rgbImage.BytesPerLine * rgbImage.Height]; // get image buffer for(int i = 0; i < rgbImage.Height; i ++) rgbImage.GetRow(i, rgbBuffer, i * rgbImage.BytesPerLine, rgbImage.BytesPerLine); // Initialize the Cmyk buffer array byte[] cmykBuffer = new byte[rgbImage.Height * rgbImage.Width * 4]; // Initialize a new Converter object RasterColorConverterEngine converter = new RasterColorConverterEngine(); // Initialize a new ConversionParameters new class object. ConversionParameters convParams = new ConversionParameters(); // Initialize the WhitePoint property class. ConversionWhitePoint whitePoint = ConversionWhitePoint.Empty; // Set the WhitePoint property. whitePoint.WhitePoint = ConversionWhitePointType.D50; // Set the XWhite property. whitePoint.XWhite = 0; // Set the YWhite property. whitePoint.YWhite = 0; convParams.WhitePoint = whitePoint; // Set the Quantization property. convParams.Quantization = 8; // Set the Method property. convParams.Method = ConversionMethodFlags.UseBuiltIn; // Set the ActiveMethod property. convParams.ActiveMethod = ConversionMethodFlags.UseBuiltIn; // Set GcrLevel property. ConversionCmykParameters cmykParameters = new ConversionCmykParameters(); cmykParameters.GcrLevel = 150; convParams.CmykParameters = cmykParameters; // Initialize an image to hold the converted buffer. RasterImage cmykImage = null; try { // Start the ColorConversion. converter.Start(ConversionColorFormat.Rgb, ConversionColorFormat.Cmyk, convParams); // Convert Rgb to CMYK. converter.Convert( rgbBuffer, 0, cmykBuffer, 0, rgbImage.Width, rgbImage.Height, rgbImage.BytesPerLine - (rgbImage.Width * (rgbImage.BitsPerPixel / 8)), 0); // Stop the ColorConversion. converter.Stop(); // Initialize labImage. cmykImage = new RasterImage(RasterMemoryFlags.Conventional, rgbImage.Width, rgbImage.Height, 24, RasterByteOrder.Bgr, RasterViewPerspective.TopLeft, null, IntPtr.Zero, 0); // Start the color conversion converter.Start(ConversionColorFormat.Cmyk, ConversionColorFormat.Bgr, convParams); // convert the image buffer converter.ConvertToImage(cmykBuffer, // converted buffer 0, // offset to the beginning of source buffer cmykImage, // image to be save rgbImage.Width, // pixels width rgbImage.Height, // pixels height 0, // 0 bytes align rgbImage.BytesPerLine - (rgbImage.Width * (rgbImage.BitsPerPixel / 8))); // stop the conversion converter.Stop(); // the output File Name. string outputFileName = Path.Combine(LEAD_VARS.ImagesDir, "ResultImage.bmp"); // Save the result image. codecs.Save(cmykImage, outputFileName, RasterImageFormat.Bmp, 24); // dispose the used images rgbImage.Dispose(); cmykImage.Dispose(); } catch(Exception ex) { MessageBox.Show(ex.Message); } // Shutdown the ColorConversion. RasterColorConverterEngine.Shutdown(); } static class LEAD_VARS { public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images"; }