Hacks on Computer Vision

使用gs压缩Latex生成的pdf

2014.03.25

最近正在办理离校手续,就是传说中集齐9个大红章,可以换得学位证和毕业证!其中有一个手续是向图书馆提交毕业论文的电子版,在填完基本信息后,需要上传毕业论文的pdf,于是问题出现:文件大小超额!

看了下pdf的大小,24.4MB,确实不小啊,印象中100页左右的纯文字的pdf大小在1MB左右,可想而知,论文里有大量没有压缩的图像,唉,没办法,搞图像处理的就是麻烦。。。看了一下毕业论文的Figures文件夹,大小为200多MB,确实吓了一跳!看来需要对图片进行压缩。单个处理各个图片,工作量有些大,即使可以写个小脚本自动处理,也稍显麻烦,还是希望Latex编译时能有压缩处理。

简单google了一下,有说在文件头部添加以下选项(如这里make PDF file size smaller):

\pdfminorversion=5 
\pdfcompresslevel=9
\pdfobjcompresslevel=2

尝试了一下,没效果。

pdftex reduce PDF size: reduce image quality? [duplicate]里,看到了这样一条命令:

gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/ebook -dNOPAUSE -dQUIET -dBATCH -sOutputFile=small.pdf big.pdf

尝试了一下,完美解决,压缩后的论文大小就剩2.4M了,效果真是明显!!

压缩等级是可以用-dPDFSETTINGS来调整的:

-dPDFSETTINGS=/screen   (screen-view-only quality, 72 dpi images)
-dPDFSETTINGS=/ebook    (low quality, 150 dpi images)
-dPDFSETTINGS=/printer  (high quality, 300 dpi images)
-dPDFSETTINGS=/prepress (high quality, color preserving, 300 dpi imgs)
-dPDFSETTINGS=/default  (almost identical to /screen)

根据Michael Palmer所言,由/screen/ebook下采样处理的图片会比较模糊,而/printer出来的效果比较好,而且能把50M的文件压缩到13MB,而我的是从24M压缩到了2M。

恩,最后加个链接–xdthesis模板,这个是中文模板,而我要写英文,所以修改了xdthesis.cfg中的一些地方,比如“目录”改为“Content”之类的。用Latex模板除了在写时比较费事外,还是比较方便的,尤其是免除了调整格式的痛苦。

__EOF__

本文作者HackCV
版权声明本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
本文链接https://hackcv.com/posts/%E4%BD%BF%E7%94%A8gs%E5%8E%8B%E7%BC%A9latex%E7%94%9F%E6%88%90%E7%9A%84pdf/

发表评论