Asymptote SVG 导出为矢量,而不是渲染。如何操作?

Asymptote SVG 导出为矢量,而不是渲染。如何操作?

TL;DR:我的问题在下面以粗体显示。

前言:我对 Latex 还很陌生。几天来一直在摆弄 MikTex 和 TexLive。在 Windows 上有一个可用的设置(使用 ghostscript、Image Magick、WinEdt9、TexLive、asymptote、asypictureB)。

使用 WinEdt 中的 PDFTeXify,并添加-shell-escape命令行参数,我可以从中生成正确的 PDF(great looking) example(这个例子实际上就是我深入研究 Latex 的原因)

我正在尝试将上述渐近线脚本导出为 SVG。

如果我设置settings.outformat = "svg";.tex 文件(两次),它确实会生成一个 svg,但带有渲染内容(由 svg 排列的大约 120 个外部 png 文件)。我希望它是纯矢量(就像在 PDF 中一样)。我怎么做?

http://asymptote.sourceforge.net/doc/Options.html提及:

要生成 SVG 输出,您需要 dvisvgm(版本 0.8.7 或更高版本)http://dvisvgm.sourceforge.net并且必须使用 latex 或 tex tex 引擎。您可能需要调整配置变量 libgs 以指向 Ghostscript 库 libgs.so 的位置(或指向一个空字符串,具体取决于 dvisvgm 的配置方式)。

我检查了一下,似乎所有依赖项都没有问题。

旁注:如果我这样做settings.outformat = "eps";,我会得到一个*-sphere.eps和一个*-cilinder.eps,但不是两个 eps 文件合并的最终结果。那些 eps 文件确实是纯矢量。我可以手动合并它们并将它们转换为 svg。不用说,我想要一次性完成。

答案1

马丁提供了很多信息来解释为什么(至少目前)这是不可能的。

因此,我将这样回答无法解决

相关内容