如何在PDF中调整位图图像的大小/重新采样并维护矢量覆盖

如何在PDF中调整位图图像的大小/重新采样并维护矢量覆盖,pdf,ghostscript,vector-graphics,inkscape,resampling,Pdf,Ghostscript,Vector Graphics,Inkscape,Resampling,我的工作流程通常如下所示: 我使用带有矢量元素(文本、线条等)的inkscape对位图图像进行注释。我从inkscape导出pdf,并将其包含在我的pdflatex源(includegraphics…)中 不知何故,我不想在嵌入inkscape之前缩小位图的比例,以保持svg文件的通用性。另一方面,pdflatex之后产生的PDF通常是不必要的,因为图像具有完全(荒谬)的分辨率。不幸的是,inkscape的pdf导出不支持立即对位图进行降采样(然而,这是经常讨论的)。因此,在运行pdflatex

我的工作流程通常如下所示:

我使用带有矢量元素(文本、线条等)的inkscape对位图图像进行注释。我从inkscape导出pdf,并将其包含在我的pdflatex源(includegraphics…)中

不知何故,我不想在嵌入inkscape之前缩小位图的比例,以保持svg文件的通用性。另一方面,pdflatex之后产生的PDF通常是不必要的,因为图像具有完全(荒谬)的分辨率。不幸的是,inkscape的pdf导出不支持立即对位图进行降采样(然而,这是经常讨论的)。因此,在运行pdflatex之前,我尝试使用ghostscript减少inkscape中的PDF。然而,我所有的向量注释都是在这个过程中呈现的,这正是我想要避免的,也是这个问题的核心所在

我使用了这样的ghostscript(发现它有不同的风格,但没有任何效果):

因此,我正在寻找一些帮助/想法,以使我的图像PDF更小,但仍然使用矢量格式的矢量艺术。

1)不要使用-dPDFSETTINGS,除非您非常确定它会做什么。在你的cas中,e真的不使用它

2) 200、400和1200(!)dpi仍然是非常高的分辨率,您可以尝试更低的分辨率

3) 您尚未设置-dDownsampleColorImages、-dDownsampleGrayImages或-dDownsampleMonoImages。因此,对下采样类型和分辨率的更改实际上不会起任何作用。(我知道这很荒谬,我们必须模仿Adobe的设置……)

如果你能提供一个示例文件,我可以对此进行测试,但我怀疑“3”是你的问题。您可能还需要查看ColorImageDownsampleThreshold(和Gray/Mono)开关

gs  -dNOPAUSE -dBATCH -dSAFER \
-sDEVICE=pdfwrite \
-dCompatibilityLevel=1.3 \
-dPDFSETTINGS=/ebook \
-dEmbedAllFonts=true \
-dSubsetFonts=true \
-dColorImageDownsampleType=/Bicubic \
-dColorImageResolution=200 \
-dGrayImageDownsampleType=/Bicubic \
-dGrayImageResolution=400 \
-dMonoImageDownsampleType=/Bicubic \
-dMonoImageResolution=1200 \
-sOutputFile=out.pdf \
 in.pdf