我设法弄清楚了如何创建一份完全用现代简历风格。我使用 moderncv 类本身来制作简历和附件(使每个文档成为一个部分,其中嵌入一到几张扫描图像)。对于求职信,我使用基于 moderncv 的提议好的来自穆鲁尼克斯线。
我的问题是附件 pdf 的文件大小。我有很多证书和文件要展示。我扫描了它们并将它们从 pdf 转换为 png,然后使用
\usepackage{float}
\floatstyle{boxed}
\restylefloat{figure}
以漂亮的方式展示它们。
但是,如果只选择 18 张图片,pdf 的大小为 14 MB,而所有图片加起来为 28 MB。因此,我使用以下方法减小了文件大小:瘸子然后将图像缩放到 1.5 而不是 0.6 - 但结果是不可接受的低分辨率(图像质量差)。
有没有办法摆脱这个困境,即有没有办法将 pdf 文件大小减小到 2-3 MB,并在 moderncv 文档中嵌入大约 18 个几乎整页的 png 图像 - 而不会丢失可读性和过多的图像质量?
编辑:我尝试了黑白,效果很好(!):
-rw-r--r-- 1 tj users 1288744 25. Sep 20:27 scan1.png
-rw-r--r-- 1 tj users 70618 6. Okt 15:19 scan1b.png
-rw-r--r-- 1 tj users 496796 6. Okt 18:02 scan1c.png
-r-xr-xr-x 1 tj users 1743427 25. Sep 14:26 scan 1.pdf
scan1 是从 pdf 到 png 的默认转换,scan1b 是缩小图像尺寸的结果(不幸的是,无法读取),scan1c 是黑白的 scan1 - 不到一半的大小,相当不错。
答案1
没有软件包makemypdfsmaller.sty
可以在不删除信息的情况下减小 PDF 文件大小。但是,您可以采取以下措施:
减少图像数量
你真的需要包含 18 张图片吗?也许 16 或 12 张就够了。
减小图像尺寸
您可以使用 imagemagick(或 gimp 等)来缩小图像尺寸。您必须试验哪些值是可以接受的。
convert -geometry 75% input.png output.png
减少颜色数量
尤其是当图像包含白色背景上的文本或只有几种颜色(如证书通常所含)时,您可以显著减小图像大小。尝试不同的值,例如 4、8、16
convert -colors 16 input.png output.png
optipng
在文件上运行
optipng
减少颜色数量后,程序可以将文件缩小约 1% 到 4%。虽然不多,但无损。压缩率最高的最慢设置是-o7
。
optipng -o7 input.png
增加 PDF 压缩
设置\pdfcompresslevel9
。这也无济于事,但也许有助于将其压缩到刚好适合文件大小限制。
缩小最终 PDF
如果您已经创建了 PDF 或无法再访问图像,则可以使用 ghostscript 降低最终 PDF 的分辨率。例如,使用设置-dPDFSETTINGS=/ebook
。这是一个例子。
gs \
-sOutputFile=output_file.pdf \
-sDEVICE=pdfwrite \
-dNOPAUSE \
-dBATCH \
-dPDFSETTINGS=/ebook \
input_file.pdf
/ebook
将分辨率设置为 150 DPI。其他设置为
/screen
(75 DPI) 或/print
(300 DPI)。
答案2
在尝试将所有简历 PDF 文件(求职信、简历、附件)合并为一个 PDF 文件时,我发现使用下面的合并脚本也是缩小 PDF 文件的完美方法,所以我想分享它,你可以找到原始这里它将总大小超过 5 MB 的文件缩小为一个小于 1 MB 的文件:
gs -q -sPAPERSIZE=a4 -dNOPAUSE -dBATCH -sDEVICE=pdfwrite
\ -sOutputFile=output.pdf file1.pdf file2.pdf file3.pdf
如果经常使用它,你可以考虑创建如下的 bash 脚本:
#!/bin/sh
gs -q -sPAPERSIZE=a4 -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile="$@"
然后你可以简单地使用它:
mergepdf output.pdf file1.pdf file2.pdf file3.pdf
将 a4 更改为 letter 或您正在使用的任何其他纸张尺寸。