svg 套件和子標題不相容

svg 套件和子標題不相容

當 subcaption 套件也包含時,有沒有辦法使用 svg 套件? svg 套件使用了 subfig 套件,這顯然會導致衝突。但 subcaption 包優於 subfig 包似乎是常識。

答案1

這個答案subfig解決方案是透過此抑制包的負載

\expandafter\def\csname [email protected]\endcsname{}

命令。不幸的是,這對我來說只適用於 TeX Live 2015。

答案2

我向 svg 包的當前維護者發送了一封電子郵件,他回覆了以下解決方案:

\RequirePackage{scrlfile}
\PreventPackageFromLoading{subfig}
\documentclass{article}
\usepackage{subcaption}
\usepackage{svg}
\usepackage{hyperref}
\begin{document}
test
\end{document}

在 Windows 上的 MiKTeX 上就像魅力一樣,我還沒有嘗試過其他作業系統或 TeX 發行版。該軟體包的新版本svg可能很快就會發布,其中將修復此問題。

答案3

極為粗暴的解決方法:

將檔案複製svg.sty到您的專案資料夾,然後簡單地註釋或刪除以下行(第 40 行):

\@ifpackageloaded{subfig}{}{\RequirePackage{subfig}}%

到目前為止,這不會產生任何錯誤並正確編譯 svg 檔案。當我在環境\includesvg中使用 svg 圖像檔案時也適用subcaption

答案4

經過大約1個小時的工作,我在官方文件中找到了解決方案

包小標題:https://mirror.hmc.edu/ctan/macros/latex/contrib/caption/subcaption.pdf

請注意:此軟體包與 subfigure 和 subfig 軟體包不相容。

以下子圖的乳膠代碼。但在此之前你需要包括

\usepackage{subcaption} 

\begin{figure}
    \begin{minipage}[b]{.5\linewidth}
        \centering
        \includegraphics[]{fig-1.pdf}
        \subcaption{A subfigure}\label{fig:1a}
    \end{minipage}%
    \begin{minipage}[b]{.5\linewidth}
        \centering
            \includegraphics[]{fig-2.pdf}
        \subcaption{Another subfigure}\label{fig:1b}
    \end{minipage}
    \caption{A figure}\label{fig:1}
\end{figure}

如果您碰巧包含一些如下所示的包

\usepackage{subfigure}
\usepackage{subfig}

您只需對上述內容進行評論即可;subfigure並且subfig不相容subcaption。刪除它們將解決您的問題。

   %\usepackage{subfigure}
    %\usepackage{subfig}

相關內容