standalone-class: 使用 dvisvgm 进行转换 - 激活 all-pages 选项

standalone-class: 使用 dvisvgm 进行转换 - 激活 all-pages 选项

如果我想将pdf文件的每一页转换为相同数量的单个svg文件,则有效的命令是:

dvisvgm --pdf --page=1- in.pdf out.svg

但如果我将其设置为standalone.cls-optionconvert

\documentclass[crop,tikz,
convert={outext=.svg, 
command=\unexpanded{dvisvgm --pdf --page=1- \infile}}, 
%multi=true, % ?
]{standalone}

我明白了

Class standalone Warning: Conversion unsuccessful!
(standalone)              There might be something wrong with your
(standalone)              conversation software or the file permissions!

暗示:没有‘所有页面选项’--page=1-它也能工作;但他只生成了第 1 页的 svg 文件。

我需要做什么?

完成 MWE:

% arara: pdflatex: {  shell: yes }  

\documentclass[crop,tikz,
convert={outext=.svg, 
command=\unexpanded{dvisvgm --pdf --page=1- \infile}}, 
%multi=true,
]{standalone}
\begin{document}

\foreach \Letter in {A,2,3,...,10,J,Q,K}{%%
\begin{tikzpicture}% Example:
\node[align=center, draw, rounded corners=1pt, inner sep=1pt,
minimum width=0.5*6ex, minimum height=0.5*9ex,
]{\Letter \\ $\clubsuit$};
\end{tikzpicture}
}%%
\end{document}

在此处输入图片描述

答案1

我建议让 arara 调用 dvisvgm。对我来说,它看起来更简洁,因为它将 LaTeX 代码与处理它的 shell 命令分开。此外,dvisvgm 通常在使用 DVI 而不是 PDF 文件时产生更好的结果:

% arara: latex
% arara: dvisvgm: { options: [--page=1-] }

\documentclass[crop,tikz]{standalone}
\begin{document}
\foreach \Letter in {A,2,3,...,10,J,Q,K}{
  \begin{tikzpicture}
    \node[align=center, draw, rounded corners=1pt, inner sep=1pt,
      minimum width=0.5*6ex, minimum height=0.5*9ex,
    ]{\Letter \\ $\clubsuit$};
  \end{tikzpicture}
}
\end{document}

相关内容