我正在尝试使用 latex 生成我制作的图片的 pdf 和 svg 格式,但是使用 dvisvgm 工具会使我的 pdf 文件看起来很奇怪

我正在尝试使用 latex 生成我制作的图片的 pdf 和 svg 格式,但是使用 dvisvgm 工具会使我的 pdf 文件看起来很奇怪

感谢您阅读我的问题

介绍


我的latex编译环境是VSCode + Texlive + LaTeX 研讨会。


我想使用蒂克兹在 latex 中的工具包来绘制一些图片并生成.pdf.svg 图片。该工具韋斯維爾用于生成svg格式的图片。
我的想法是.pdf直接编译并生成西拉特克斯,而.svg生成如下:第一的乳胶编译.tex文件到.dvi文件,然后使用韋斯維爾编译工具.dvi文件到.svg文件。
以下是我的编译环境配置(只列出我使用的编译方式):

乳胶工具

"latex-workshop.latex.tools": [
        {
            "name": "dvisvgm",
            "command": "dvisvgm",
            "args": [
                // "-synctex=1",
                // "-interaction=nonstopmode",
                // "-file-line-error",
                // "-pdf",
                "%DOCFILE%.dvi"
            ]
        },
        {
            "name": "latex",
            "command": "latex",
            "args": [
                "-synctex=1",
                "-interaction=nonstopmode",
                "-file-line-error",
                "%DOCFILE%"
            ]
        },
        {
            "name": "xelatex",
            "command": "xelatex",
            "args": [
                "-synctex=1",
                "-interaction=nonstopmode",
                "-file-line-error",
                "%DOCFILE%"
            ]
        },
    ],

乳胶配方

"latex-workshop.latex.recipes": [
        {
            "name": "XeLaTeX",
            "tools": [
                "xelatex"
            ]
        },
        {
            "name": "LaTeX",
            "tools": [
                "latex"
            ]
        },
        {
            "name": "DviSvgm",
            "tools": [
                "dvisvgm"
            ]
        },
        {
            "name": "XeLaTeX -> LaTeX -> DviSvgm",
            "tools": [
                "xelatex",
                "latex",
                "dvisvgm"
            ]
        },
    ],

问题描述

在执行我的想法的时候,我发现了以下问题。以下是我的代码和结果:

我的代码

\documentclass[dvisvgm,tikz]{standalone}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{amsfonts}
\usepackage{upgreek}
\renewcommand{\familydefault}{\sfdefault}
%\usetikzlibrary{...}% tikz package already loaded by 'tikz' option
\begin{document}
\begin{tikzpicture}[scale=1]
% Draw a circle
\draw (0,0) circle (2cm);
% Draw a rectangle
\draw (3,0) rectangle (5,2);
% Draw an arrow
\draw[->] (6,1) -- (8,1);
% Label some points
\node at (0,0) [below] {Center};
\node at (4,1) {Rectangle};
\node at (7,1) [above] {Arrow};
\end{tikzpicture}
\end{document} 

编译方式为:XeLaTeX -> LaTeX -> DviSvgm

以下是我的输出文件:

我的 .pdf

我的 .pdf

我的.svg(在visio中)

我的.svg(在visio中)

该 pdf 文件看起来完全错误!


在我的不断努力下,我发现了以下成果:

以下是我修改后的代码和最终结果

(我删除了韋斯維爾在选项中):

我的代码

\documentclass[tikz]{standalone}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{amsfonts}
\usepackage{upgreek}
\renewcommand{\familydefault}{\sfdefault}
%\usetikzlibrary{...}% tikz package already loaded by 'tikz' option
\begin{document}
\begin{tikzpicture}[scale=1]
% Draw a circle
\draw (0,0) circle (2cm);
% Draw a rectangle
\draw (3,0) rectangle (5,2);
% Draw an arrow
\draw[->] (6,1) -- (8,1);
% Label some points
\node at (0,0) [below] {Center};
\node at (4,1) {Rectangle};
\node at (7,1) [above] {Arrow};
\end{tikzpicture}
\end{document} 

编译方式为:XeLaTeX -> LaTeX -> DviSvgm

以下是我的新输出文件:

我的 .pdf

在此处输入图片描述

我的.svg

在此处输入图片描述

pdf 文件看起来更好


我的问题是,为什么添加韋斯維爾到[选项]制作编译的.pdf文件赛莱特错了吗?添加韋斯維爾选项?是否有任何另一种方式同时生成 .pdf 格式和 .svg 格式的图片?有没有更简单的方法?

感谢您阅读我的问题!

相关内容