我正在尝试压缩我的一些大型文档文件。但是大多数文件最多只能压缩 10%。我正在使用 7zip 终端命令。
7z a filename.7z -m0=LZMA -mx=9 -mmt=on -aoa -mfb=64 filename.pptx
关于更改参数的任何建议。我需要至少 30% 的压缩比。
我正在尝试压缩我的一些大型文档文件。但是大多数文件最多只能压缩 10%。我正在使用 7zip 终端命令。
7z a filename.7z -m0=LZMA -mx=9 -mmt=on -aoa -mfb=64 filename.pptx
关于更改参数的任何建议。我需要至少 30% 的压缩比。
.pptx
文件或.docx
文件是内部.zip
档案。您不能期望对已压缩的文件进行大量压缩。
文档状态lzma2
可以处理更好的无法压缩的数据,因此您可以尝试使用
7z a -m0=lzma2 -mx filename.7z filename.pptx
但所需的 30% 几乎无法达到。
如果您真的需要这种压缩,您可以使用 pptx 只是一个精美的 zip 文件这一事实:
解压pptx,然后用7zip压缩。要恢复等效(但不相同)的 pptx,请使用 7zip 解压缩并使用 zip 重新压缩。
可能有一些复杂性,例如对于 epub,有一个特定的文件必须作为档案中的第一个文件未压缩地存储在从开始的特定偏移量处。我不熟悉 pptx,但它可能有类似的要求。
我认为文件大小的小幅减少不太可能值得麻烦,但这是我能想到的唯一方法。
根据 pptx 大小的原因,您还可以尝试压缩包含的文件。例如,通过使用更好的压缩器重新压缩 png 文件、剥离不必要的数据(例如元数据或更改历史记录)或对 jpeg 文件应用较低质量设置的有损压缩。
那么最大压缩的一个想法是
lzma2 有点好 - 但是如果文件包含许多 jpg 的文件,请考虑给开源打包程序 peazip或更多指定paq8o尝试。Paq8 内置 Jpeg 压缩器并支持范围压缩。所以它也会与 jpg 一起出现在其他文件中。与此相反, Winzip 的zipx将需要纯 jpg 文件,在这种情况下是无用的。
但同样为了使 PAQ 有效地工作/压缩您的目标文件,您需要将 zip/deflate 压缩“归零”,将其转换为未压缩的 zip。
那么 PAQ 可能有点异国情调,但在我看来它比 zipx 更诚实和清晰。PAQ 不受支持,因此最好只用谷歌搜索没有/不知道的东西,你会发现一些东西。相比之下,Zipx 可能看起来有点奇怪,因为它看起来像一个普通的 zip,并且文件在 Winrar 或 7zip 中正确列出,但是当你想提取 jpg 时它会失败,所以如果用户没有经验,它可能看起来像 zip 损坏。很难找到到目前为止只有 winzip 或Unarchiver (unar.exe) 可以正确处理的 zipx。
PPTX、XLSX、DOCX文件数量多的话,确实可以有效压缩。通过将它们中的每一个解压缩到它们的目录中,归档器可以找到它们之间的共性,对样板 XML 以及它们之间的任何公共文本进行重复数据删除。
如果您必须使用 ZIP 格式,首先创建一个包含所有这些文件的零压缩“存储”存档,然后将其压缩。这是必要的,因为 ZIP 存档中的每个文件都是从头开始压缩的,而没有利用不同文件之间的冗余。
通过利用样板重复数据删除,30% 应该是小菜一碟。