我有一个 Inkscape SVG 文件,其中包含一些透明效果和不同的图层,我想将其导出到 PDF 文件进行分发。当我使用“另存为...”或“保存副本...”并选择 PDF 格式时,所有效果都是乱码:
顶部:预期输出。底部:实际输出。
我不介意将图像扁平化,失去编辑功能等等,因为我仍然有原始的 .svg,但我无论如何都找不到任何选项。我宁愿避免导出为光栅化格式,因为我希望能够使用它在大纸张上打印。
在寻找解决方案的过程中,我发现此帖最初来自 2006 年其中最新的答案来自 2012 年,内容如下
6 年后……同样的问题。Inkscape 无法导出到 pdf 级不透明度。太伤心了。
难道真的就没有办法了吗?
答案1
您应该将您的 Inkscape 升级到 PPA 版本 Pre-0.49,我的测试使用遮罩、剪辑和参考路径差异产生了结果:
要升级你的 inkscape,请打开终端并发出以下命令:
sudo add-apt-repository ppa:inkscape.dev/trunk
sudo apt-get update
sudo apt-get install inkscape-trunk
这将删除 inkscape 的 0.48 版本并将其替换为您的 pdf 文件所需的 0.49 之前的版本。
答案2
您也可以尝试将 inkscape.svg
文件转换为.pdf
使用包rsvg-convert
中的文件librsvg2-bin
:
rsvg-convert -f pdf -o foo.pdf foo.svg
这保留了我的文件的透明度。
答案3
好的,以下是我对于解决这个问题的一些看法。
我尝试使用 来回答上一个问题rsvg-convert
,这对于透明项目来说效果很好。现在的问题是,我的 SVG 中有一个嵌入图像,它实际上是以非常低的分辨率进行栅格化的。为 指定更高的 X/Y dpirsvg-convert
并没有改变这一点。
因此我做了以下操作,解决了这个问题:
- 将图像“栅格化”为 PDF:
rsvg-convert -f pdf -o rasterized.pdf orig.svg
- 在 Inkscape 中打开原始图像:
inkscape orig.svg
- 在 Inkscape 中打开栅格化图像(现在包含透明形状,但也包含栅格化的嵌入图像):
inkscape rasterized.pdf
- 取消后者的所有项目的组合,直到得到错误栅格化的图像
- 复制嵌入的图片2.进入一个4.,替换错误栅格化的
- 正常通过 Inkscape 将其保存为 PDF。
结果:透明形状和高分辨率图像。
答案4
我发现解决这个明显错误的一个方法是:在 Inkscape 中另存为:EPS,然后将文件保存为 epstopdf。结果看起来很完美