感谢您阅读我的问题
介绍
我的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
我的.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 格式的图片?有没有更简单的方法?