设置@fptop 和@fpbot 不会改变仅浮动页面上的默认浮动对齐方式

设置@fptop 和@fpbot 不会改变仅浮动页面上的默认浮动对齐方式

figure*我在文档中使用twocolumn它来制作列表,并且 tikz 图表占用两列的空间。我对乳胶很陌生,所以也许有理由不这样做。不过,我figure*在单独的页面(所谓的浮动页面,这没问题)上得到了一些 s。默认的乳胶机制将此figure*s 垂直对齐到页面的中心,这就是我试图改变的行为。

我尝试设置新的值这个答案建议,但它没有改变什么,我的figure*s 仍然居中。

\makeatletter
\setlength{\@fptop}{0pt}
\setlength{\@fpbot}{0pt plus 1fil}
\makeatother

值得一提的是,我覆盖默认规则用于浮动放置机制并使用geometryfloat包。我使用所谓的latexmk (lualatex)来生成输出 pdf 文件。

可以观察到整个文档这里(请遵循导入以获得完整的理解)。

浮动在页面的中心

答案1

参数\@fptop\@fpbot适用于单列布局。对于双列布局,相关参数分别为\@dblfptop\@dblfpbot。LaTeX 内核提供以下定义(以及的定义\@dblfpsep):

\newskip\@dblfptop
\newskip\@dblfpsep
\newskip\@dblfpbot
\setlength\@dblfptop{0\p@ \@plus 1fil}
\setlength\@dblfpsep{8\p@ \@plus 2fil}
\setlength\@dblfpbot{0\p@ \@plus 1fil}

因此,你的文档需要的是

\makeatletter
\setlength{\@dblfptop}{0pt}
\setlength{\@dblfpbot}{0pt plus 1fil}
\makeatother

相关内容