svg - pdf 到 svg 并不完美

标签 svg imagemagick ghostscript imagemagick-convert inkscape

我尝试了几乎所有库将 pdf 转换为 svg,以下是它们的结果

  1. gs 或 Ghostscript 和 imagemagick:大小乘以 100
  2. pdf2svg 和 inkscape:pdf 顶部的图像一点也不准确,这里是 pdf 和 svg 的链接。

PDF:https://drive.google.com/open?id=0BxyQR1owWa_pcnhhSk5wQWJGMVk SVG:https://drive.google.com/open?id=0BxyQR1owWa_pVnhoLVlob1U2d1k

如果我遗漏了一些需要完成的事情,请建议我。

最佳答案

Ghostscript SVG 输出设备已被严重弃用,不再受支持(或者实际上内置于标准 Ghostscript 二进制文件中)。

无论如何,您需要意识到 PDF 是一个非常丰富的图形模型,并且根本不可能使用 SVG 图形模型重现 PDF 的所有可能的细微差别,特别是字体是一个问题,但因此几乎是任何一种透明度。发生这种情况时,Ghostscript 会将 PDF 渲染为图像,并将其插入到 SVG 文件中。几乎可以肯定,这就是您看到 SVG 文件比 PDF 文件大得多的原因。您应该能够使用 -r 开关来控制渲染的分辨率,从而允许您在质量和尺寸之间进行权衡。

即使整个文件没有转换为位图,也可能大部分文件都转换为位图,或者 SVG 中的位图压缩不如 PDF 好(或者 GS 没有利用所有可能性) )。 FWIW 未压缩的 PDF 文件大小 > 4MB。

关于svg - pdf 到 svg 并不完美,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37392798/

相关文章:

javascript - 哪种 SVG 支持检测方法最好?

css - 如何使用 z-index 将 svg 放置在其他 svg 之上

javascript - 如何读取 canvas 元素中 SVG 的 viewbox 属性?

batch-file - Image Magick Convert -profile 后替换原始 jpg

cmd - 如何使用 imagemagick 将 sRGB 颜色配置文件分配给图像

c - 使用 ghostscript 合并两个 PCL 时会创建一个额外的空白页

html - 为什么 SVG 背景颜色没有改变?

imagemagick - ruby & RMagick : determining real width & height of text

linux - 向 ghostscipt 运行配置添加一个允许的路径

pdf - 如何从 PDF 中删除所有图像?