public static ImageOptimizerOptions Default { get; }
The default optimization options used by LEADTOOLS for optimizing an image.
This method returns an ImageOptimizerOptions structure containing the default optimization options to be used to optimize an image.
For more information, refer to the ImageOptimizerOptions structure members.
using Leadtools;using Leadtools.Codecs;using Leadtools.ImageOptimization;public void TestJpegImageOptimizer(){// Initialize the RasterCodecs classRasterCodecs codecs = new RasterCodecs();// The input and output locationstring inputFileName = Path.Combine(LEAD_VARS.ImagesDir, "Cannon.jpg");string outputFolder = Path.Combine(LEAD_VARS.ImagesDir, "OptimizedImages");// Initialize a new Optimizer objectImageOptimizer optimizer = new ImageOptimizer();// Optimization OptionsImageOptimizerOptions options = ImageOptimizerOptions.Default;// Set custom optimization optionsoptions.JpegQualityFactor = 255;options.JpegColorSpace = ImageOptimizerJpegColorSpace.JpegColorSpace422;// Load the input file into a memory byte arraybyte[] orgBuffer = File.ReadAllBytes(inputFileName);// Optimize this bufferbyte[] optBuffer = optimizer.OptimizeBuffer(codecs, orgBuffer, 0, orgBuffer.Length, options, OptimizeBufferProgress);// Save this image into the output folder// Make sure the output folder existsif (!Directory.Exists(outputFolder))Directory.CreateDirectory(outputFolder);// Get the name of the output file from the input filestring outputFileName = Path.Combine(outputFolder, Path.GetFileName(inputFileName));// Save the optimized buffer to the output fileusing (FileStream fs = File.Create(outputFileName))fs.Write(optBuffer, 0, optBuffer.Length);// Compare the original image size with the optimized sizelong orgSize = new FileInfo(inputFileName).Length;long optSize = new FileInfo(outputFileName).Length;int percentage = (int)((double)optSize * 100.0 / orgSize);string message = string.Format("Original image size: {0} KB{1}Optimized image size: {2} KB{1}Percentage: {3}%",orgSize / 1024, Environment.NewLine, optSize / 1024,100 - percentage);MessageBox.Show(message);//shutdown the RasterCodecs class.}static bool OptimizeBufferProgress(int percent){Console.WriteLine(string.Format("{0}%", percent));return true;}static class LEAD_VARS{public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images";}