Преднамеренный перенос строки в плавающем заголовке KOMA без разрушения отступа по умолчанию

Преднамеренный перенос строки в плавающем заголовке KOMA без разрушения отступа по умолчанию

Меня попросили разместить этот ответ в виде отдельного вопроса с ответом на него, чтобы другие пользователи могли его найти.

Короче говоря, я хотел использовать стандартное поведение отступа для подписей KOMA, но в дополнение к этому принудительный перенос строки, когда мне это нужно.

решение1

Это желаемое конечное состояние:

введите описание изображения здесь

К сожалению, аргумент nooneline (намек из другого вопроса и первая идея-фикс) все портит.

Вот что мне помогло:


Я использую это в своей преамбуле:

%\KOMAoption{captions}{belowfigure,nooneline,tableheading}
% nooneline was necessary for linebreaks:
% cf.http://tex.stackexchange.com/questions/66111/linebreaks-in-koma-script-captions
\KOMAoption{captions}{tableheading,belowfigure}
\newcommand{\capsize}{\fontsize{8}{9.5}\selectfont}
\setkomafont{caption}{\capsize}
\setcapwidth[c]{.8\textwidth}
% --- following two change a lot, try
%\setcapindent{0pt}
%\addtokomafont{caption}{\centering}
\addtokomafont{captionlabel}{\bfseries}
% cf. here: http://tex.stackexchange.com/questions/66116/puzzled-as-to-centering-of-koma-script-captions
% cf. for multiline solution --> avoiding nooneline (because it uncenters the caption)
% last answer here:
% http://tex.stackexchange.com/questions/101595/how-to-add-line-break-to-caption-without-using-caption-package

и затем в документе:

\begin{figure}[htbp]
  \begin{center}
   \rule{2cm}{2cm}
   \caption[Some caption short]{\tabular[t]{@{}l@{}}Some caption foobarbuz \\ source: Here and There\endtabular}
  \end{center}
\end{figure}

Веселиться :)

Связанный контент