CodecsJpeg2000CompressionControl Enumeration (original) (raw)

Summary

Indicates the compression control method.

Syntax

C#

Objective-C

C++/CLI

Java

Python

public enum CodecsJpeg2000CompressionControl   

typedef NS_ENUM(NSInteger, LTCodecsJpeg2000CompressionControl) { LTCodecsJpeg2000CompressionControlLossless = 0, LTCodecsJpeg2000CompressionControlRatio = 1, LTCodecsJpeg2000CompressionControlTargetSize = 2, LTCodecsJpeg2000CompressionControlQualityFactor = 3 };

public enum CodecsJpeg2000CompressionControl 
public enum class CodecsJpeg2000CompressionControl   

class CodecsJpeg2000CompressionControl(Enum): Lossless = 0 Ratio = 1 TargetSize = 2 QualityFactor = 3

Members

Value Member Description
0 Lossless Lossless compression.
1 Ratio Compress the file based on the value of the CompressionRatio.
2 TargetSize Compress the file based on the value of the TargetFileSize.
3 QualityFactor Compress the file based on the value of the QualityFactor.

Example

using Leadtools; using Leadtools.Codecs; using Leadtools.ImageProcessing.Core; public void CodecsJpeg2000OptionsExample() { RasterCodecs codecs = new RasterCodecs(); string srcFileName = Path.Combine(LEAD_VARS.ImagesDir, "Image1.j2k"); CodecsJpeg2000PrecinctSize[] precintSizes = (CodecsJpeg2000PrecinctSize[])Enum.GetValues(typeof(CodecsJpeg2000PrecinctSize)); foreach (var precinctSize in precintSizes) { Console.WriteLine($"PrecinctSize types: {precinctSize}"); } //Setting the Jpeg2000 load options. CodecsJpeg2000Options & CodecsJpeg2000LoadOptions reference codecs.Options.Jpeg2000.Load.J2kResolution = new LeadSize(800, 800); codecs.Options.Jpeg2000.Load.Jp2Resolution = new LeadSize(800, 800); codecs.Options.Jpeg2000.Load.CmwResolution = new LeadSize(0, 0); //loading a Jpeg2000 image. RasterImage srcImage = codecs.Load(srcFileName); //Setting the Jpeg2000 save options. CodecsJpeg2000SaveOptions reference codecs.Options.Jpeg2000.Save.AlphaChannelActiveBits = 16; codecs.Options.Jpeg2000.Save.AlphaChannelLossless = false; codecs.Options.Jpeg2000.Save.CompressionControl = CodecsJpeg2000CompressionControl.Ratio; codecs.Options.Jpeg2000.Save.CompressionRatio = 15.0f; codecs.Options.Jpeg2000.Save.DecompositionLevels = 5; codecs.Options.Jpeg2000.Save.DerivedQuantization = true; codecs.Options.Jpeg2000.Save.ImageAreaHorizontalOffset = 0; codecs.Options.Jpeg2000.Save.ImageAreaVerticalOffset = 0; codecs.Options.Jpeg2000.Save.ProgressingOrder = CodecsJpeg2000ProgressionsOrder.PositionComponentResolutionLayer; codecs.Options.Jpeg2000.Save.PrecinctSize = CodecsJpeg2000PrecinctSize.HierarchicalOne64; codecs.Options.Jpeg2000.Save.ReferenceTileHeight = 240; codecs.Options.Jpeg2000.Save.ReferenceTileWidth = 480; codecs.Options.Jpeg2000.Save.RegionOfInterest = CodecsJpeg2000RegionOfInterest.UseLeadRegion; codecs.Options.Jpeg2000.Save.RegionOfInterestRectangle = new LeadRect(0, 0, 0, 0); codecs.Options.Jpeg2000.Save.TargetFileSize = 10240; codecs.Options.Jpeg2000.Save.TileHorizontalOffset = 0; codecs.Options.Jpeg2000.Save.TileVerticalOffset = 0; codecs.Options.Jpeg2000.Save.UseColorTransform = true; codecs.Options.Jpeg2000.Save.UseEphMarker = false; codecs.Options.Jpeg2000.Save.UseRegionOfInterest = false; codecs.Options.Jpeg2000.Save.UseSopMarker = false; //Save the first sample. codecs.Save(srcImage, Path.Combine(LEAD_VARS.ImagesDir, "Image1_test.j2k"), RasterImageFormat.J2k, srcImage.BitsPerPixel); codecs.Options.Jpeg2000.Save.Reset(); //changing some of the Jpeg2000 save options codecs.Options.Jpeg2000.Save.CompressionRatio = 23.0f; codecs.Options.Jpeg2000.Save.DecompositionLevels = 6; codecs.Options.Jpeg2000.Save.ReferenceTileHeight = 320; codecs.Options.Jpeg2000.Save.ReferenceTileWidth = 320; codecs.Options.Jpeg2000.Save.UseEphMarker = true; codecs.Options.Jpeg2000.Save.ProgressingOrder = CodecsJpeg2000ProgressionsOrder.ResolutionPositionComponentLayer; codecs.Options.Jpeg2000.Save.UseSopMarker = true; codecs.Options.Jpeg2000.Save.TargetFileSize = 102400; var maximumComponentsNumber = CodecsJpeg2000SaveOptions.MaximumComponentsNumber; var maximumDecompressionLevels = CodecsJpeg2000SaveOptions.MaximumDecompressionLevels; Console.WriteLine("MaximumComponents: {0}, MaximumDecompressionLevels: {1}", maximumComponentsNumber, maximumDecompressionLevels); //Save the first sample. codecs.Save(srcImage, Path.Combine(LEAD_VARS.ImagesDir, "Image1_test.jp2"), RasterImageFormat.J2k, srcImage.BitsPerPixel); // Clean up srcImage.Dispose(); codecs.Dispose(); } static class LEAD_VARS { public const string ImagesDir = @"C:\LEADTOOLS22\Resources\Images"; }

Leadtools.Codecs Assembly

CompactFile(Stream,Stream,int,int,bool,int,int,bool,int,CodecsSavePageMode,bool,bool) Method

CompactFile(Stream,Stream,int,int,bool,long,int,bool,long,CodecsSavePageMode,bool,bool,bool) Method

CompactFile(string,string,int,int,bool,int,int,bool,int,CodecsSavePageMode,bool,bool) Method

CompactFile(string,string,int,int,bool,long,int,bool,long,CodecsSavePageMode,bool,bool,bool) Method

StartCompress(int,int,int,RasterByteOrder,RasterViewPerspective,int,byte[],int,int,CodecsCompression,CodecsCompressDataCallback) Method