恒定的标题垂直位置(包括章节页面)

恒定的标题垂直位置(包括章节页面)

我希望标题(始终位于图形、表格等上方)放置在页面上的同一垂直位置。我知道我可以做到

\makeatletter
\setlength{\@fptop}{0.16\textheight minus 0.160\textheight}
\makeatother

这使得垂直位置位于文本高度的 16%。但是,我使用的是双列报告文档,当图形放在章节开头时,图形会显得较低。我理解这是因为它是文本高度 + 章节标题区域高度的 16%。

我怎样才能使这些图形出现在与其他图形相同的垂直位置上?

我有一个 MWE,它实现了下面的效果,但需要我手动确定小页面的正确高度,并使用与figure章节页面上出现的图形不同的环境。还有其他方法吗?或者,如果这种方法是最好的,有没有办法引用“章节标题区域高度”,这样如果我改变章节的显示方式,就可以实现相同的效果?

(如果“正常”页面上的图形太大,我不会担心它是否会向上移动。)

\documentclass[a4paper,twocolumn,10pt]{scrreprt}
\usepackage[twocolumn,landscape,top=1cm]{geometry}

\usepackage{lipsum}
\usepackage{graphicx}
\usepackage{placeins}

\renewcommand{\floatpagefraction}{0.1}

\makeatletter
\setlength{\@fptop}{0.16\textheight minus 0.1650\textheight}
\makeatother

\newenvironment{chapterpagefigure}{
\begin{figure}
\begin{minipage}[t][0.84\textheight]{\linewidth}
}{
\end{minipage}
\end{figure}
}

\usepackage{caption}
\captionsetup{justification=raggedright,singlelinecheck=false,skip=0pt}


\begin{document}
\chapter{A somewhat long chapter title longer than two columns}
\lipsum[1-3]

\begin{chapterpagefigure}
\caption{Figure appearing on chapter page}
\includegraphics[height=5cm]{Example-image}
\end{chapterpagefigure}

\lipsum[1-2] 
\section{Foobarbaz}

\begin{figure}[p]
\caption{Slightly larger figure appearing on normal page}
\includegraphics[height=6cm]{Example-image}
\end{figure}

\lipsum

\lipsum[1-4]

\begin{figure}[p]
\caption{Slightly larger figure appearing on normal page}
\includegraphics[height=6cm]{Example-image}
\end{figure}




\end{document}

答案1

在章节的第一页上,\@colht小于\textheight。宏\@tryfcolumn用于将浮动元素布置到每列中。\@fptop每次调用时,中的更改都是本地的。

\documentclass[a4paper,twocolumn,10pt]{scrreprt}
\usepackage[twocolumn,landscape,top=1cm]{geometry}

\usepackage{lipsum}
\usepackage{graphicx}
\usepackage{placeins}

\renewcommand{\floatpagefraction}{0.1}

\makeatletter
\setlength{\@fptop}{0.16\textheight minus 0.1650\textheight}
\let\oldtryfcolumn=\@tryfcolumn
\def\@tryfcolumn{\addtolength{\@fptop}{\dimexpr \@colht-\textheight}%
  \oldtryfcolumn}
\makeatother

\usepackage{caption}
\captionsetup{justification=raggedright,singlelinecheck=false,skip=0pt}


\begin{document}
\chapter{A somewhat long chapter title longer than two columns}
\lipsum[1-3]

\begin{figure}[p]
\caption{Figure appearing on chapter page}
\includegraphics[height=5cm]{Example-image}
\end{figure}

\lipsum[1-2] 
\section{Foobarbaz}

\begin{figure}[p]
\caption{Slightly larger figure appearing on normal page}
\includegraphics[height=6cm]{Example-image}
\end{figure}

\lipsum

\lipsum[1-4]

\begin{figure}[p]
\caption{Slightly larger figure appearing on normal page}
\includegraphics[height=6cm]{Example-image}
\end{figure}

\end{document} 

相关内容