ワークブックの圧縮レベルを調整する
Contents
[
Hide
]
ワークブックの圧縮レベルを調整する
開発者は、より大きなワークブックを操作するときに、ワークブックの圧縮レベルを調整できます。開発者は、処理時間よりも小さいファイル サイズを優先する場合もあれば、その逆の場合もあります。 Aspose.Cells提供**OoxmlCompressionType**ワークブックの圧縮レベルを設定するために使用できる列挙。の**OoxmlCompressionType**列挙は、次のメンバーを提供します。
- Level1: 最速ですが、効果が最も低い圧縮です。
- レベル 2: レベル 1 より少し遅いですが、より良いです。
- レベル 3: レベル 2 より少し遅いですが、より良いです。
- レベル 4: レベル 3 より少し遅いですが、より良いです。
- レベル 5: レベル 4 よりも少し遅くなりますが、圧縮率が高くなります。
- Level6: 速度と圧縮効率のバランスが良い。
- Level7: かなり良い圧縮!
- Level8: Level7 よりも優れた圧縮率!
- Level9: 「最良」の圧縮。最良とは、入力データ ストリームのサイズを最大限に削減することを意味します。これは、最も遅い圧縮でもあります。
次のコード スニペットは、**OoxmlCompressionType**列挙し、Level1、Level6、および Level9 の変換時間を比較します。生成されたファイルのサイズを比較することもできます。
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
//Source directory | |
string sourceDir = RunExamples.Get_SourceDirectory(); | |
string outDir = RunExamples.Get_OutputDirectory(); | |
Workbook workbook = new Workbook(sourceDir + "LargeSampleFile.xlsx"); | |
XlsbSaveOptions options = new XlsbSaveOptions(); | |
options.CompressionType = OoxmlCompressionType.Level1; | |
var watch = System.Diagnostics.Stopwatch.StartNew(); | |
workbook.Save(outDir + "LargeSampleFile_level_1_out.xlsb", options); | |
watch.Stop(); | |
var elapsedMs = watch.ElapsedMilliseconds; | |
Console.WriteLine("Level 1 Elapsed Time: " + elapsedMs); | |
watch = System.Diagnostics.Stopwatch.StartNew(); | |
options.CompressionType = OoxmlCompressionType.Level6; | |
workbook.Save(outDir + "LargeSampleFile_level_6_out.xlsb", options); | |
watch.Stop(); | |
elapsedMs = watch.ElapsedMilliseconds; | |
Console.WriteLine("Level 6 Elapsed Time: " + elapsedMs); | |
watch = System.Diagnostics.Stopwatch.StartNew(); | |
options.CompressionType = OoxmlCompressionType.Level9; | |
workbook.Save(outDir + "LargeSampleFile_level_9_out.xlsb", options); | |
watch.Stop(); | |
elapsedMs = watch.ElapsedMilliseconds; | |
Console.WriteLine("Level 9 Elapsed Time: " + elapsedMs); |