Class PPMdCompressionSettings
Namespace: Aspose.Zip.Saving
Assembly: Aspose.Zip.dll (25.1.0)
压缩器或解压器工作所需的设置。
public class PPMdCompressionSettings : CompressionSettings
继承
object ← CompressionSettings ← PPMdCompressionSettings
继承成员
CompressionSettings.Bzip2, CompressionSettings.Deflate, CompressionSettings.EnhancedDeflate, CompressionSettings.Store, CompressionSettings.Lzma, CompressionSettings.Xz, CompressionSettings.PPMd, CompressionSettings.Zstd, object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()
备注
PPMd是一种由Dmitry Shkarin开发的数据压缩算法。 该算法基于多阶上下文的预测短语匹配。
构造函数
PPMdCompressionSettings(int, int)
初始化Aspose.Zip.Saving.PPMdCompressionSettings类的新实例。
public PPMdCompressionSettings(int modelOrder, int suballocatorSize)
参数
modelOrder
int
模型的顺序。
suballocatorSize
int
子分配器可能消耗的内存大小(以MB为单位)。
示例
using (Archive archive = new Archive(new ArchiveEntrySettings(new PPMdCompressionSettings(4, 10))))
{
archive.CreateEntry("data.bin", "data.bin");
archive.Save(zipFile);
}
备注
更大的模型顺序几乎肯定会导致更好的压缩,但肯定会消耗更多的内存和CPU。
PPMd算法可能需要大量内存,特别是在处理大文件和/或使用大模型顺序时。 如果PPMd所需的内存超过您提供的内存,则压缩效果会更差。
异常
modelOrder
不在2到16之间。 - 或 - suballocatorSize
不在1到256之间。
PPMdCompressionSettings()
使用默认模型顺序和子分配器大小初始化Aspose.Zip.Saving.PPMdCompressionSettings类的新实例。
public PPMdCompressionSettings()
示例
using (Archive archive = new Archive(new ArchiveEntrySettings(new PPMdCompressionSettings())))
{
archive.CreateEntry("data.bin", "data.bin");
archive.Save(zipFile);
}
备注
默认模型顺序为8,子分配器大小为50MB。
属性
ModelOrder
获取模型的顺序。
public int ModelOrder { get; }
属性值
SuballocatorSize
获取子分配器大小(以MB为单位)。
public int SuballocatorSize { get; }