为什么 LaTeX 会对 synctex 文件进行 gzip 压缩?

为什么 LaTeX 会对 synctex 文件进行 gzip 压缩?

为什么 latex 会 gzip 压缩 synctex 文件,而不压缩其他辅助文件?解压文件后发现文件大小约为 40 kB,并不大。这是“遗留”行为(当时计算机没有太多存储空间)还是对该文件进行 gzip 压缩有什么好处?

答案1

确实,使用 gzip 压缩.synctex文件可以节省磁盘空间。对于一本 500 页的书来说,其大小为

-rw-r--r-- user group   3.9M May 29 01:16 foo.synctex.gz

解压后的文件为

-rw-r--r-- user group    18M May 29 01:16 foo.synctex

PDF 文件只有 2.2 MiB;数字本身就说明了一切:文件大小增长非常快。当负责编辑器和 PDF 查看器之间同步的软件发出请求时,即时解压文件非常快,而且不会产生明显的开销。

现代计算机对磁盘的空间限制并不大,但如果压缩文件是合理的话,4.5 比 1 的比例不容忽视。

文字处理器使用的格式也存在类似情况.odt:它只是一个隐藏的压缩 ZIP 文件。GNU 程序gzip对于较小的文件来说似乎无足轻重,但它具有解压速度快的优点。

答案2

很可能.synctex文件默认被 gzip 压缩只是为了节省磁盘空间。

其他辅助文件没有经过 gzip 压缩,因为它们体积较小,并且需要在编译过程中快速读取(该.synctex文件在编译过程中不起作用,但被 PDF 阅读器用来链接回您的 TeX 代码)。

相关内容