有一个bug in Inkscape,当导出到PDF文件时,SVG文档中包含的JPEG图像将作为位图而不是JPEG嵌入。
结果是文件大小大大增加。例如,我有一个简单的SVG绘图,其中包含一个2 MB的JPEG图像。导出为PDF会生成14 MB的文件。
我正在寻找解决方法。是否可以通过插入正确编码的JPG图像(也许通过某种pdftk技巧)来修复生成的PDF ?
(就我而言,生成的PDF将作为图形包含在用pdflatex呈现的LaTeX文档中,因此,除了直接修复Inkscape生成的PDF外,可能还有其他解决方法。)
最佳答案
一种麻烦是先使用pdf2ps
,再使用ps2pdf
,这会将位图数据重新编码为JPEG:
pdf2ps made-by-inkscape.pdf foo.ps
ps2pdf foo.ps smaller-file.pdf
对于我的测试用例,文件大小为:
original JPEG 2.1M
made-by-inkscape.pdf 15M
foo.ps 104M
smaller-file.pdf 1.5M
但是,当然,这涉及重新编码JPEG数据,最好避免这种情况。
关于pdf - 将JPG数据正确嵌入到Inkscape生成的PDF文件中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6700889/