Inno Setup入门(三)——指定压缩方式

时间:2021-12-24 18:25:26

Setup段中的compression指定了采用的压缩方式,较高的压缩率需要较多的时间或者需要更大的内存空间,可用的值如下:

zip

zip/1到zip/9

bzip

bzip/1 到bzip/9

lzma

lzma/fast

lzma/normal

lzma/max

lzma/ultra

lzma/ultra64

lzma2

lzma2/fast

lzma2/normal

lzma2/max

lzma2/ultra

lzma2/ultra64

none

其中lzma2/max是编译器使用的默认压缩方式,另外,lzma/ultra、lzma/ultra64、lzma2/ultra和lzma2/ultra64在使用前需要审查一下内存需求。Zip方式的压缩算法比较快,并且在压缩和解压的时候只需要很低的内存空间(不超过1M),但是压缩并不如其他的方式好,zip和lzma算法一样,有一个很特别的属性:对不可压缩文件(例如已经被压缩过的文件)直接跳过,默认的压缩级别是7(可用的是1-9)

Bzip是bzip2压缩器采用的方法,通常比zip方法压缩好,但是压缩速度比较慢,同时需要占用更大的内存空间,通常在压缩的时候是8M,解压的时候则是4M,默认的压缩级别是9(可用的是1-9)

Lzma则是7-Zip LZMA压缩器采用的方法,相比前面的zip和bzip压缩算法,效果明显好一些,但是也要占用较多的内存,速度也比较慢。

Lzma2是7-Zip LZMA2压缩器采用的方法,该算法是lzma的改进版,能对不可压缩文件提供更好的比率,并可对大文件实现多部分同步压缩。同样地,该算法也要消耗较大的内存。

None显然是不使用任何压缩方法。

可以根据自己的文件特性选择合适的压缩算法,个人认为就目前的情况而言,一般的打包使用默认的压缩算法即可。