我正在尝试显示两个图形,它们分别在单独的小页面中包含两个 SVG 图像:
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{graphicx}
\usepackage{svg}
\begin{document}
\begin{figure}
\centering
\begin{minipage}{0.5\textwidth}
\centering
\includesvg[width=1.0\textwidth]{plots/PrisonersDilemma/Lattice2D/initial_moral_mean_stability}
\end{minipage}\hfill
\begin{minipage}{0.5\textwidth}
\centering
\includesvg[width=1.0\textwidth]{plots/PrisonersDilemma/Lattice2D/initial_moral_mean_morality}
\end{minipage}\hfill
\caption{Figure 1}
\label{fig:label1}
\end{figure}
\begin{figure}
\centering
\begin{minipage}{0.5\textwidth}
\centering
\includesvg[width=1.0\textwidth]{plots/StagHunt/Lattice2D/initial_moral_mean_stability}
\end{minipage}\hfill
\begin{minipage}{0.5\textwidth}
\centering
\includesvg[width=1.0\textwidth]{plots/StagHunt/Lattice2D/initial_moral_mean_morality}
\end{minipage}\hfill
\caption{Figure 2}
\label{fig:label2}
\end{figure}
\end{document}
在输出中,后两幅图像被渲染为前两幅图像。也就是说,第二幅图中的两个 SVG 应该是不同的:
SVG 文件位于指定的确切位置,我确保所有四个文件都不同。看起来 LaTeX 也在第二幅图中使用了第一幅图中指定的文件。我在这里做错了什么?
答案1
其实这是因为文件名相同。默认情况下,所有生成的文件都.\svg-inkscape
以其简单的文件名存储在 下的当前工作文件夹中,这就是这些文件被覆盖的原因( 下只有两个 pdf 文件.\svg-inkscape
)。这个问题(https://github.com/mrpiggi/svg/issues/11) 已经已知,我将在下一个主要版本中修复它。目前,\svgsetup{inkscapepath=svgsubdir}
可以用作解决方法。这会将生成的文件放置在 svg 文件的相应子文件夹中。