captionbeside
在使用KOMA Script 包的环境时,我试图控制图形旁边标题的排版。\setcapwidth
使用 时该命令不起作用captionbeside
。图形放在页面的左侧,标题放在右侧(顶部)。标题应该为 4cm 宽,并允许延伸到(4cm 宽)边缘。但是,\textwidth
当图形较小时,它们会被拉伸到最大,对于较大的图形,它效果相当好。我也不知道图形和标题之间的间隔/边距,我想将其设置为精确值\marginparsep
(在我的情况下为 0.4cm)。到目前为止的示例:
\documentclass[captions=topbeside]{scrartcl}
\begin{document}
% Works here
\begin{figure}
\setcapwidth{4cm}
\setcapindent{1em}
\rule{4cm}{6cm}
\caption{Long caption that is 4cm wide}
\end{figure}
% Not here
\begin{figure}
\setcapwidth{4cm}
\setcapindent{1em}
\begin{captionbeside}{Long caption supposed to be 4cm wide}[o]
\raisebox{\dimexpr\baselineskip-\totalheight\relax}{
\rule{4cm}{6cm}
}
\end{captionbeside}
\end{figure}
\end{document}
我也尝试了该sidecap
包,可能与该caption
包一起,但是那些也没有设置标题宽度。
编辑:另一种可能性:
\begin{figure}
\mbox{%
\raisebox{\dimexpr\baselineskip-\totalheight}{%
\rule{\textwidth}{4cm}%
}%
\hspace{0.4cm}%
\parbox{4.13cm}{\captionof{figure}{Caption that is 4cm wide}}
}
\end{figure}
答案1
更新答案!
请尝试这个新改变的 MWE:
\documentclass[captions=topbeside]{scrartcl} % topbeside
\usepackage{showframe}
\begin{document}
% Not here
\begin{figure}
\setcapindent{1em}
\begin{captionbeside}{Long caption supposed to be 4cm wide}[o][8cm]%[5cm]
\raisebox{\dimexpr\baselineskip-\totalheight\relax}{
\rule{4cm}{6cm}
}
\end{captionbeside}
\end{figure}
\begin{figure}
\setcapindent{1em}
\setlength{\columnsep}{1.4cm} % <========================================
\begin{captionbeside}{Long caption supposed to be 4cm wide}[o][8cm]%[5cm]
\raisebox{\dimexpr\baselineskip-\totalheight\relax}{
\rule{4cm}{6cm}
}
\end{captionbeside}
\end{figure}
\begin{figure}
\setcapindent{1em}
\begin{captionbeside}{Long caption supposed to be 4cm wide}[o][8cm][5cm]
\raisebox{\dimexpr\baselineskip-\totalheight\relax}{
\rule{4cm}{6cm}
}
\end{captionbeside}
\end{figure}
\end{document}
在 KOMA-Script 中,环境的含义captionbeside
是:
\begin{captionbeside}[Toc title]{Title}[Position][total length][offset from left]
现在查看我的 MWE 中的第 11 行:\begin{captionbeside}{Long caption supposed to be 4cm wide}[o][8cm]%[5cm]
这里给出的宽度是图像宽度(4cm)和标题宽度(4cm)的总和,结果为 8cm。 o
给出标题的位置:外面。这里不使用偏移量。(您没有使用最新的两个选项......)
第二张图片显示了相同的内容,但图片和标题之间的间距发生了变化。参见第 20 行: \setlength{\columnsep}{1.4cm}
您可以\columnsep
按照图示进行更改(我占用了 1.4 厘米以使更改可见)。
例如,您可以在第 4110 行scrartcl.cls
(第 4103 行及后续行的定义\newenvironment*{captionbeside}
)找到相关代码。
第三幅图像与第一幅相同,但偏移了 5 厘米。这意味着图像和标题向右移动了 5 厘米(它总是从左侧开始!)。
您可以在 KOMA-Script 的文档中找到此信息,例如在我的德文书第 153 页第 3.20 章“表格和图形的浮动”中。抱歉,我没有英文书。您也可以查看texdoc KOMA-Script
。
查看结果: