PGF/TikZ 的 dvisvgm 选项/驱动程序的用途是什么?

PGF/TikZ 的 dvisvgm 选项/驱动程序的用途是什么?

我尝试从 TikZ 创建 SVG 输出,但遇到了一些问题。这些问题现在已经解决,但结果是我在问自己我的误解在哪里,或者手册是否有误。

我在 Windows 上使用 MikTeX,参考的是手册的 3.0.1a 版本。

我按照手册中的示例创建了这个文档

\documentclass[dvisvgm]{minimal}
\usepackage{tikz}

\begin{document}
Hello \tikz [baseline] \fill [fill=blue!80!black] (0,.75ex) circle[radius=.75ex];
\end{document}

然后我运行latex test.texdvisvgm test.dvi。这创建了一个 SVG 文件,但在我尝试使用的 Web 浏览器中,圆圈没有显示出来。原因是 SVG 元素具有以下属性:

height='6.9185pt' viewBox='19.9253 3.04414 22.416 6.9185' width='22.416pt'

显然,它刚好够容纳文本,而圆圈则被忽略了。(更多测试表明,如果我只有图形而没有文本,则 SVG 元素的尺寸为 0pt 乘以 0pt。)

但如果我把上面例子的第一行改成

\documentclass{standalone}

然后突然一切正常并且 SVG 是正确的:

height='6.9185pt' viewBox='-72 -72 32.1719 6.9185' width='32.1719pt'

我的问题:

  • 为什么手册中的示例不起作用?这是错误还是我遗漏了什么?
  • 手册中提到的驱动程序有什么用处?它们真的被使用过吗?在我使用的例子中,我从未[dvisvgm]在任何地方提到过这个选项。据我所知,我.tex像往常一样编译了文件,dvisvgm程序完成了将输出转换为 SVG 的工作.dvi。我知道有人需要告诉 PGF/TikZ 创建一个.dvi适合 SVG 转换的文件,但是谁做的呢?standalone包自动完成了吗?

相关内容