从 Inkscape SVG 创建 PDF,不会破坏字体和效果

从 Inkscape SVG 创建 PDF,不会破坏字体和效果

我有一个 Inkscape SVG 文件,其中包含一些透明效果和不同的图层,我想将其导出到 PDF 文件进行分发。当我使用“另存为...”或“保存副本...”并选择 PDF 格式时,所有效果都是乱码:

顶部:预期输出。底部:实际输出

顶部:预期输出。底部:实际输出。

我不介意将图像扁平化,失去编辑功能等等,因为我仍然有原始的 .svg,但我无论如何都找不到任何选项。我宁愿避免导出为光栅化格式,因为我希望能够使用它在大纸张上打印。

在寻找解决方案的过程中,我发现此帖最初来自 2006 年其中最新的答案来自 2012 年,内容如下

6 年后……同样的问题。Inkscape 无法导出到 pdf 级不透明度。太伤心了。

难道真的就没有办法了吗?

答案1

您应该将您的 Inkscape 升级到 PPA 版本 Pre-0.49,我的测试使用遮罩、剪辑和参考路径差异产生了结果:

示例图像显示了剪切蒙版和 Inkscape 中 PDF 格式的差异

要升级你的 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并没有改变这一点。

因此我做了以下操作,解决了这个问题:

  1. 将图像“栅格化”为 PDF:rsvg-convert -f pdf -o rasterized.pdf orig.svg
  2. 在 Inkscape 中打开原始图像:inkscape orig.svg
  3. 在 Inkscape 中打开栅格化图像(现在包含透明形状,但也包含栅格化的嵌入图像):inkscape rasterized.pdf
  4. 取消后者的所有项目的组合,直到得到错误栅格化的图像
  5. 复制嵌入的图片2.进入一个4.,替换错误栅格化的
  6. 正常通过 Inkscape 将其保存为 PDF。

结果:透明形状和高分辨率图像

答案4

我发现解决这个明显错误的一个方法是:在 Inkscape 中另存为:EPS,然后将文件保存为 epstopdf。结果看起来很完美

相关内容