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 では問題なく動作しますが、他の OS や 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 パッケージとは互換性がありません。
サブ図用のLaTeXコードは次の通り。ただし、その前に以下を含める必要がある。
\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}