日々是好日

be3の備忘録

Latex キャプションに謎の数字が出現した件

結論

\makeatletter と \makeatotherで挟んだマクロの再定義に余計な文字列が含まれていることもあるため、生成されるPDFに異変があればきちんと確認しましょう。

症状

以下のようなキャプション横に謎の「3」が出現する症状に2週間ほど悩まされていました。

f:id:Be3751:20211214214921p:plain

解決

研究室から支給されたtexファイルをそのまま利用しており、以下のようにプリアンブルにてマクロの再定義をする記述がありました。

\makeatletter
\long\def\@makecaption#1#2{%
\vskip\abovecaptionskip3
\iftdir\sbox\@tempboxa{#1\hskip1zw#2}%
\else\sbox\@tempboxa{#1~~#2}%
\fi
\ifdim \wd\@tempboxa >\hsize
\iftdir #1\hskip1zw#2\relax\par
\else #1~~#2\relax\par\fi
\else
\global \@minipagefalse
\hbox to\hsize{\hfil\box\@tempboxa\hfil}%
\fi
\vskip\belowcaptionskip}
\makeatother

よく見てみると、3行目の"\abovecaptionskip"の横に「3」があることが分かります。

こいつが原因だったようです。

「3」のみを除去し、再度コンパイルし直すとキャプションは想定した通りに戻りました。

そもそもパッケージのカスタマイズをプリアンブルで出来ることを知らなかったため、図表の挿入に利用しているsubfigに問題があると思い込んで少し沼にハマっていました。

非常に初歩的なミスだと思われるので、同じ症状に困っている人はいないと思いますが、どなたかの参考になれば幸いです。

参考

マクロの再定義について

texwiki.texjp.org