使用 .svg 文件中的子图创建图形

使用 .svg 文件中的子图创建图形

我正在尝试在 Overleaf 中创建由多个子图组成的多个图形。为了获得高分辨率图片,我将它们保存为 .svg 格式。我阅读了不同的帖子,了解到 svg 包利用 subfigure(或 subfig?)包来实现这一点。我尝试过用不同的方法创建图像,但都没有效果。我还读到过使用 inkscape 的解决方法,但这些方法似乎已经过时了。我可以在 LaTeX 中使用什么代码来实现我想要的效果?

我尝试过的其中一个版本如下:

\documentclass{article}
\usepackage{svg}
\usepackage{subfigure}

\begin{document}
\begin{figure}[H]
    \begin{subfigure}[t]{1\textwidth}
       \includesvg[width=\linewidth]{sul_trends.svg}
       \label{fig:a}
    \end{subfigure}
\end{figure}

但它会产生一个错误:Missing number, treated as zero. <to be read again> } l.322 \begin{subfigure}[t]{1\textwidth}

答案1

由于svg加载subfig,而这又与不兼容subcaption,因此没有剩下:在环境\subfloat内部使用figure

这个subfigure包已经过时并且不应再使用!

\documentclass{article}
\usepackage{graphicx}
\usepackage{svg}
\usepackage{subfig}

\begin{document}

\begin{figure}%
\centering
\subfloat[First.]{\includegraphics[scale=0.05]{sampleimage.jpg}}\qquad
\subfloat[Second.]{\includegraphics[scale=0.05]{sampleimage.jpg}}\qquad
\subfloat[Third.]{\includegraphics[width=0.25\textwidth]{sampleimage.jpg}}\qquad
\caption{Three sub-floats.}
\label{fig:a}
\end{figure}

\end{document}

在此处输入图片描述

相关内容