newfloat
パッケージの代わりにパッケージを使用すると、および/またはにfloat
何らかの副作用があるようです。llncs
listings
ケース1:パッケージを使用するとfloat
、リストのフロート キャプションは正しくフォーマットされませんが、MWE #1 に示すように、リストのキャプションの間隔は正しくなります。
ケース2:パッケージを使用するとnewfloat
、リストのフロート キャプションは正しくフォーマットされますが、MWE #2 に示すように、キャプションとリストの間に追加のスペースがあります。(このスペースは、図の環境で確認できるように、ドキュメント クラスによって定義されていません。)
ケース3:このスペースは、MWE #3 で見られるように、キャプション パッケージによっても導入されます。(推測に過ぎません。コメントを参照してください)
ケース4:環境の float オプションを使用するのlistings
も選択肢ではありません。フロートする場所にテキスト内にスペースが残るからです。MWE #4 を参照してください。
リストのスタイルと間隔を図と同じにするにはどうすればよいでしょうか?
MWE#1
\documentclass{llncs}
\usepackage{listings}
\usepackage{float}
\floatstyle{plaintop}
\newfloat{lstfloat}{tb}{lop}
\floatname{lstfloat}{Listing}
\lstset{
aboveskip=0pt,
belowskip=0pt
}
\begin{document}
\begin{lstfloat}
\caption{Code Caption}
\begin{lstlisting}
My listing here seom more text here
\end{lstlisting}
\end{lstfloat}
\begin{figure}
\caption{Text}
\centering Hello
\end{figure}
\end{document}
MWE #2
\documentclass{llncs}
\usepackage{listings}
\usepackage{newfloat}
\DeclareFloatingEnvironment[fileext=lop,placement={tb},name=Listing]{lstfloat}
\lstset{
aboveskip=0pt,
belowskip=0pt
}
\begin{document}
\begin{lstfloat}
\caption{Code Caption}
\begin{lstlisting}
My listing here seom more text here
\end{lstlisting}
\end{lstfloat}
\begin{figure}
\caption{Text}
\centering Hello
\end{figure}
\end{document}
MWE #3
\documentclass{llncs}
\usepackage{listings}
\usepackage{caption}
\usepackage{float}
\floatstyle{plaintop}
\newfloat{lstfloat}{tb}{lop}
\floatname{lstfloat}{Listing}
\lstset{
aboveskip=0pt,
belowskip=0pt
}
\begin{document}
\begin{lstfloat}
\caption{Code Caption}
\begin{lstlisting}
My listing here seom more text here
\end{lstlisting}
\end{lstfloat}
\begin{figure}
\caption{Text}
\centering Hello
\end{figure}
\end{document}
MWE #4
\documentclass{llncs}
\usepackage{lipsum}
\usepackage{listings}
\lstset{
aboveskip=0pt,
belowskip=0pt
}
\begin{document}
\lipsum[1]
\begin{lstlisting}[float=tb,caption={Code Caption}]
My listing here seom more text here
\end{lstlisting}
\lipsum[1]
\begin{figure}[tb]
\caption{Text}
\centering Hello
\end{figure}
\lipsum[1]
\end{document}
編集:ケース4とmwe #4を追加 編集2:フォローアップ通知を下へ移動する
これは私の質問の続きです:フロート名を太字にする
答え1
skip=0pt
パッケージによって追加される垂直方向のスペースを回避できますcaption
。
\documentclass{llncs}
\usepackage{listings}
\usepackage{newfloat}
\DeclareFloatingEnvironment[fileext=lop,placement={tb},name=Listing]{lstfloat}
\usepackage{caption}
\captionsetup[lstfloat]{labelfont={bf},name={Listing},labelsep=period, skip=0pt}
\captionsetup[figure]{labelfont={bf},name={Fig.},labelsep=period}
\lstset{
aboveskip=0pt,
belowskip=0pt
}
\usepackage{mwe}% for testing purpose only
\begin{document}
\blindtext% for testing purpose only
\begin{lstfloat}
\caption{Code Caption}
\begin{lstlisting}
My listing here seom more text here
\end{lstlisting}
\end{lstfloat}
\blindtext% for testing purpose only
\begin{figure}
\caption{Text}
\centering Hello
\end{figure}
\blindtext% for testing purpose only
\end{document}
ここでは、左側に MWE #1 (ダミー テキスト付き)、右側に私のコードの出力があります。