Sets new conversion parameters.
public void SetParameters(Leadtools.Colorconversion.ConversionParameters parameters)
Public Sub SetParameters( _ByVal parameters As Leadtools.Colorconversion.ConversionParameters _)
public:void SetParameters(Leadtools.Colorconversion.ConversionParameters^ parameters)
parameters
A ConversionParameters object that describes the conversion properties to be set.
The parameters parameter should not be null(Nothing). If it is, this method will fail.
This example will convert a CMYK buffer to RGB buffer.
Imports LeadtoolsImports Leadtools.CodecsImports Leadtools.ColorConversionPublic Function GetCmykBufferFromImage(ByVal bgrImage As RasterImage) As Byte()' StartUp the ColorConversion.RasterColorConverterEngine.Startup()' Image buffer arrayDim bgrBuffer(bgrImage.BytesPerLine * bgrImage.Height) As Byte' get image bufferDim i As IntegerFor i = 0 To bgrImage.Height - 1bgrImage.GetRow(i, bgrBuffer, (i * bgrImage.BytesPerLine), bgrImage.BytesPerLine)Next i' Initialize a new Converter objectDim converter As New RasterColorConverterEngine()Dim cmykBuffer(bgrImage.Height * bgrImage.Width * 4) As ByteTry' Start the color conversionconverter.Start(ConversionColorFormat.Bgr, ConversionColorFormat.Cmyk, Nothing)' convert the image bufferconverter.Convert(bgrBuffer, _0, _cmykBuffer, _0, _bgrImage.Width, _bgrImage.Height, _CInt(bgrImage.BytesPerLine - (bgrImage.Width * (bgrImage.BitsPerPixel / 8))), _0)' stop the conversionconverter.Stop()Catch ex As ExceptionMessageBox.Show(ex.Message)End TryRasterColorConverterEngine.Shutdown()Return cmykBufferEnd FunctionPublic Function GetImageFromCmykBuffer(ByVal cmykBuffer As Byte(), ByVal width As Integer, ByVal height As Integer) As RasterImage' StartUp the ColorConversion.RasterColorConverterEngine.Startup()' Initialize a new Converter objectDim Converter As New RasterColorConverterEngine()' Initialize an image to hold the converted buffer.Dim cmykImage As RasterImage = NothingTrycmykImage = New RasterImage(RasterMemoryFlags.Conventional, width, height, 24, RasterByteOrder.Bgr, RasterViewPerspective.TopLeft, Nothing, IntPtr.Zero, 0)' Start the color conversionConverter.Start(ConversionColorFormat.Cmyk, ConversionColorFormat.Bgr, Nothing)' convert the image bufferConverter.ConvertToImage(cmykBuffer, _0, _cmykImage, _width, _height, _0, _CInt(cmykImage.BytesPerLine - (cmykImage.Width * (cmykImage.BitsPerPixel / 8))))' stop the conversionConverter.Stop()Catch ex As ExceptionMessageBox.Show(ex.Message)End Try' Shutdown the ColorConversion.RasterColorConverterEngine.Shutdown()Return cmykImageEnd Function<TestMethod()> _Public Sub SetParametersExample()' StartUp the RasterCodecs.Dim codecs As New RasterCodecs' StartUp the ColorConversion.RasterColorConverterEngine.Startup()' The input file nameDim inputFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "Image1.cmp")' load the input image as Bgr.Dim bgrImage As RasterImage = codecs.Load(inputFileName, 24, CodecsLoadByteOrder.Bgr, 1, 1)Dim width As Integer = bgrImage.WidthDim height As Integer = bgrImage.HeightDim cmykBuffer() As Byte = GetCmykBufferFromImage(bgrImage)' Initialize the Rgb buffer arrayDim rgbBuffer(CInt(cmykBuffer.Length - cmykBuffer.Length / 4)) As Byte' Initialize a new Converter objectDim converter As New RasterColorConverterEngine' Initialize a new ConversionParameters class object.Dim convParams As ConversionParameters = New ConversionParameters' we want to use the built in LEAD ICC conversion method and built in conversionconvParams.Method = ConversionMethodFlags.UseBuiltIn Or ConversionMethodFlags.UseIcc' set the active conversion methodconvParams.ActiveMethod = ConversionMethodFlags.UseBuiltIn' Initialize WhitePoint property class.convParams.WhitePoint = New ConversionWhitePoint' Set WhitePoint property.Dim whitePoint As ConversionWhitePointwhitePoint.WhitePoint = ConversionWhitePointType.D50convParams.WhitePoint = whitePoint' Initialize CmykParameters property class.convParams.CmykParameters = New ConversionCmykParameters' Set GcrLevel property.Dim cmykParameters As ConversionCmykParameterscmykParameters.GcrLevel = 150convParams.CmykParameters = cmykParametersTry' Initialize the ColorConversionconverter.Start(ConversionColorFormat.Cmyk, ConversionColorFormat.Rgb, convParams)' convert the Cmyk buffer to Rgb buffer using Built-in conversion.converter.Convert(cmykBuffer, _0, _rgbBuffer, _0, _width, _height, _0, _CInt(bgrImage.BytesPerLine - (bgrImage.Width * (bgrImage.BitsPerPixel / 8))))' Change the active method for conversionconvParams.Method = ConversionMethodFlags.ChangeActiveMethod Or ConversionMethodFlags.ChangeCmyk' Switch to ICC conversion methodconvParams.ActiveMethod = ConversionMethodFlags.UseIcc' Set Mask property.cmykParameters.Mask = ConversionCmykMask.Gcr' Set GcrLevel property.cmykParameters.GcrLevel = 175convParams.CmykParameters = cmykParameters' Update the conversion parametersconverter.SetParameters(convParams)' convert the image bufferconverter.Convert(cmykBuffer, _0, _rgbBuffer, _0, _width, _height, _0, _CInt(bgrImage.BytesPerLine - (bgrImage.Width * (bgrImage.BitsPerPixel / 8))))' Stop the ColorConversionconverter.Stop()Catch ex As ExceptionMessageBox.Show(ex.Message)rgbBuffer = NothingEnd Try' the output File Name.Dim outputFileName As String = Path.Combine(LEAD_VARS.ImagesDir, "ResultImage.bmp")' Save the converted ImageDim cmykImage As RasterImage = GetImageFromCmykBuffer(cmykBuffer, width, height)codecs.Save(cmykImage, outputFileName, RasterImageFormat.Bmp, 24)' Shutdown the ColorConversion.RasterColorConverterEngine.Shutdown()' Shutdown the RasterCodecsEnd SubPublic NotInheritable Class LEAD_VARSPublic Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"End Class
using Leadtools;using Leadtools.Codecs;using Leadtools.ColorConversion;public byte[] GetCmykBufferFromImage(RasterImage bgrImage){// StartUp the ColorConversion.RasterColorConverterEngine.Startup();// Image buffer arraybyte[] bgrBuffer = new byte[bgrImage.BytesPerLine * bgrImage.Height];// get image bufferfor (int i = 0; i < bgrImage.Height; i++)bgrImage.GetRow(i, bgrBuffer, i * bgrImage.BytesPerLine, bgrImage.BytesPerLine);// Initialize a new Converter objectRasterColorConverterEngine converter = new RasterColorConverterEngine();byte[] cmykBuffer = new byte[bgrImage.Height * bgrImage.Width * 4];try{// Start the color conversionconverter.Start(ConversionColorFormat.Bgr, ConversionColorFormat.Cmyk, null);// convert the image bufferconverter.Convert(bgrBuffer, // input buffer0, // offset from the begining of the source buffercmykBuffer, // output buffer0, // offset from the begining of the destination bufferbgrImage.Width, // pixels widthbgrImage.Height, // pixels heightbgrImage.BytesPerLine - (bgrImage.Width * (bgrImage.BitsPerPixel / 8)),0); // 0 bytes align// stop the conversionconverter.Stop();}catch (Exception ex){MessageBox.Show(ex.Message);}RasterColorConverterEngine.Shutdown();return cmykBuffer;}public RasterImage GetImageFromCmykBuffer(byte[] cmykBuffer, int width, int height){// StartUp the ColorConversion.RasterColorConverterEngine.Startup();// Initialize a new Converter objectRasterColorConverterEngine converter = new RasterColorConverterEngine();// Initialize an image to hold the converted buffer.RasterImage cmykImage = null;try{cmykImage = new RasterImage(RasterMemoryFlags.Conventional, width, height, 24, RasterByteOrder.Bgr, RasterViewPerspective.TopLeft, null, IntPtr.Zero, 0);// Start the color conversionconverter.Start(ConversionColorFormat.Cmyk, ConversionColorFormat.Bgr, null);// convert the image bufferconverter.ConvertToImage(cmykBuffer, // converted buffer0, // offset from the begining of the source buffercmykImage, // image to be savewidth, // pixels widthheight, // pixels height0, // 0 bytes aligncmykImage.BytesPerLine - (cmykImage.Width * (cmykImage.BitsPerPixel / 8)));// stop the conversionconverter.Stop();}catch (Exception ex){MessageBox.Show(ex.Message);}// Shutdown the ColorConversion.RasterColorConverterEngine.Shutdown();return cmykImage;}public void SetParametersExample(){// Initialize the RasterCodecsRasterCodecs codecs = new RasterCodecs();// StartUp the ColorConversion.RasterColorConverterEngine.Startup();// The input file namestring inputFileName = Path.Combine(LEAD_VARS.ImagesDir, "image1.cmp");// load the input image as Bgr.RasterImage bgrImage = codecs.Load(inputFileName, 24, CodecsLoadByteOrder.Bgr, 1, 1);int width = bgrImage.Width;int height = bgrImage.Height;byte[] cmykBuffer = GetCmykBufferFromImage(bgrImage);// Initialize the Rgb buffer arraybyte[] rgbBuffer = new byte[cmykBuffer.Length - cmykBuffer.Length / 4];// Initialize a new Converter objectRasterColorConverterEngine converter = new RasterColorConverterEngine();// Initialize a new ConversionParameters class object.ConversionParameters convParams = new ConversionParameters();// we want to use the built in LEAD ICC conversion method and built in conversionconvParams.Method = ConversionMethodFlags.UseBuiltIn | ConversionMethodFlags.UseIcc;// set the active conversion methodconvParams.ActiveMethod = ConversionMethodFlags.UseBuiltIn;// Initialize WhitePoint property class.convParams.WhitePoint = new ConversionWhitePoint();// Set WhitePoint property.ConversionWhitePoint whitePoint = new ConversionWhitePoint();whitePoint.WhitePoint = ConversionWhitePointType.D50;convParams.WhitePoint = whitePoint;// Initialize CmykParameters property class.convParams.CmykParameters = new ConversionCmykParameters();// Set GcrLevel property.ConversionCmykParameters cmykParameters = new ConversionCmykParameters();cmykParameters.GcrLevel = 150;convParams.CmykParameters = cmykParameters;try{// Initialize the ColorConversionconverter.Start(ConversionColorFormat.Cmyk, ConversionColorFormat.Rgb, convParams);// convert the Cmyk buffer to Rgb buffer using Built-in conversion.converter.Convert(cmykBuffer,0,rgbBuffer,0,width,height,0,bgrImage.BytesPerLine - (bgrImage.Width * (bgrImage.BitsPerPixel / 8)));// Change the active method for conversionconvParams.Method = ConversionMethodFlags.ChangeActiveMethod | ConversionMethodFlags.ChangeCmyk;// Switch to ICC conversion methodconvParams.ActiveMethod = ConversionMethodFlags.UseIcc;// Set Mask property.cmykParameters.Mask = ConversionCmykMask.Gcr;// Set GcrLevel property.cmykParameters.GcrLevel = 175;convParams.CmykParameters = cmykParameters;// Update the conversion parametersconverter.SetParameters(convParams);// convert the image bufferconverter.Convert(cmykBuffer, 0, rgbBuffer, 0, width, height, 0, 0);// Stop the ColorConversionconverter.Stop();}catch(Exception ex){MessageBox.Show(ex.Message);rgbBuffer = null;}// the output File Name.string outputFileName = Path.Combine(LEAD_VARS.ImagesDir, "ResultImage.bmp");// Save the converted ImageRasterImage cmykImage = GetImageFromCmykBuffer(cmykBuffer, width, height);codecs.Save(cmykImage, outputFileName, RasterImageFormat.Bmp, 24);// Shutdown the ColorConversion.RasterColorConverterEngine.Shutdown();// Shutdown the RasterColor}static class LEAD_VARS{public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";}
|
Products |
Support |
Feedback: SetParameters Method - Leadtools.ColorConversion |
Introduction |
Help Version 19.0.2017.3.22
|

Raster .NET | C API | C++ Class Library | JavaScript HTML5
Document .NET | C API | C++ Class Library | JavaScript HTML5
Medical .NET | C API | C++ Class Library | JavaScript HTML5
Medical Web Viewer .NET
Your email has been sent to support! Someone should be in touch! If your matter is urgent please come back into chat.
Chat Hours:
Monday - Friday, 8:30am to 6pm ET
Thank you for your feedback!
Please fill out the form again to start a new chat.
All agents are currently offline.
Chat Hours:
Monday - Friday
8:30AM - 6PM EST
To contact us please fill out this form and we will contact you via email.