Xceed.Compression.Silverlight.v6.6 Assembly > Xceed.Compression Namespace : CompressionLevel Enumeration |
'Declaration Public Enum CompressionLevel Inherits System.Enum Implements System.IComparable, System.IConvertible, System.IFormattable
'Usage Dim instance As CompressionLevel
public enum CompressionLevel : System.Enum, System.IComparable, System.IConvertible, System.IFormattable
Member | Description |
---|---|
Highest | Maximum compression. Best compression ratio that the compression algorithm is capable of producing. Compared to the Normal compression level, this level significantly increases compression time for only slightly smaller compressed data. It is recommended to use this setting only when you really need to achieve the smallest possible files and when compression time is not important. Numeric value: 9. |
Lowest | Minimum compression. Takes the least amount of time to compress data. Numeric value: 1. |
None | No compression is applied. Numeric value: 0. |
Normal | Normal compression. Best balance between the time it takes to compress data and the compression ratio achieved. Numeric value: 6. |
The compression level only applies to the Deflated, Deflated64, PPMd, and LZMA compression methods. It does not apply to the BZip2 or BWT compression methods.
The greater the amount of compression applied, the greater the time it takes to perform the compression.
When CompressionLevel.None is used with CompressionMethod.Deflate or CompressionMethod.Deflate64, data will be written in the specified format but no compression will be applied. Since the Deflate format breaks the data down into blocks, it has some overhead. Therefore, compressed data can be slightly larger than uncompressed data. So the correct way to truly disable compression and avoid overhead is to specify CompressionMethod.Stored. The format contains a marker that specifies the end of the data. Components such as Xceed Real-Time Zip for .NET automatically make use of this combination to store uncompressed items without sacrificing the ability to read back the data through a stream.
For all other compression methods, CompressionLevel.None changes the effective method to CompressionMethod.Stored.
When CompressionMethod.BZip2 or CompressionMethod.BWT is used, the compression level value determines the block size to be used for compression: the actual block size is determined by multiplying the numeric value corresponding to the level (see table above) multiplied by 100,000.
CompressionLevel.Highest gives the best compression but takes the most memory.
When CompressionMethod.LZMA is used, the compression level value is passed to the LZMAOptions.SetTemplate method.
System.Object
System.ValueType
System.Enum
Xceed.Compression.CompressionLevel
Target Platforms: Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2