应用 floatrow 样式来对齐和词汇表

应用 floatrow 样式来对齐和词汇表

我使用booktabsfloatrowfloat 样式的包ruled。为了保持一致性,我想应用这个看(例子)我使用的词汇表作为术语和amsmath环境。到目前为止,我使用手册caption中描述的技术floatrow,使用captionsetupcaption

我想知道是否有任何简单的方法可以floatrow处理像浮动一样的小页面并添加适当的规则。

这是一个不太简单的例子。它包括一个tablefigure,看起来我也想要它们。还有一个格式不正确的glossaryalign环境。

\documentclass{report}
\usepackage{amsmath}
\usepackage{booktabs}
\usepackage[demo]{graphicx}

\usepackage{caption}
\usepackage[list=on]{subcaption}
\usepackage{glossaries}

\usepackage{floatrow}

\floatsetup{style=ruled, footposition=caption, capposition=bottom, heightadjust=object}   %make graphics look like booktables
\floatsetup[table]{style=plain, footposition=bottom}
\captionsetup[table]{labelfont=bf}

\newglossaryentry{demo}{
                    name        =modulo,
                    symbol      =\ensuremath{\protect \bmod},
                    description ={modulo operator}}

\glsaddall

\begin{document}
\chapter{needs work}
\begin{center}%vertical spacing
\begin{minipage}{\linewidth}%group caption and content on same page
    \centering
    \captionsetup{type=table}
    \begin{align}
        1+2=3
    \end{align}
    \caption{Align}
\end{minipage}
\end{center}

\begin{center}%vertical spacing
\begin{minipage}{\linewidth}%group caption and content on same page
    \centering
    \captionsetup{type=table}
    \renewcommand{\glossarysection}[2][]{}
    \printglossary
    \caption{Nomenclature glossary}
\end{minipage}
\end{center}

\chapter{should be look}
\begin{table}
\begin{tabular}{lrrp{5cm}}
    \toprule
    %name & lines per set & sets & pros/cons\\
     & hea &der \\
    \midrule
    con & ten & t \\
    con & ten & t \\
    \bottomrule
\end{tabular}
\caption{Table}
\end{table}

\begin{figure}
\includegraphics[height=2in, width=4in]{}
\caption{Figure}
\end{figure}
\end{document}

答案1

一种可能的解决方案是使用figure环境,但使用H位置说明符和\captionsetup{type=table};这样,对象将获得所需的ruled样式,不会浮动(H意味着“恰好在这里”)并且它们的标题作为表格标题:

\documentclass{report}
\usepackage{amsmath}
\usepackage{booktabs}
\usepackage[demo]{graphicx}
\usepackage{caption}
\usepackage[list=on]{subcaption}
\usepackage{glossaries}
\usepackage{floatrow}

\makeglossaries

\DeclareFloatVCode{rule}{\vskip2pt\hrule\vskip4pt}
\DeclareFloatVCode{lowrule}{\par\rule{\hsize}{.8pt}\par}

\floatsetup{style=ruled, footposition=caption, capposition=bottom, heightadjust=object}   %make graphics look like booktables
\floatsetup[table]{style=plain, footposition=bottom}
\captionsetup[table]{labelfont=bf}

\newglossaryentry{demo}{
  name=modulo,
  symbol=\ensuremath{\protect \bmod},
  description={modulo operator}}
\newglossaryentry{permutation}{
  name=\ensuremath{(12)},
  description={a permutation}}

\glsaddall

\begin{document}
\chapter{A solution}
\gls{demo}, \gls{permutation}
\begin{figure}[H]
    \centering
    \captionsetup{type=table}
    \begin{align}
        1+2=3
    \end{align}
    \caption{Align}
\end{figure}

\begin{figure}[H]
    \centering
    \captionsetup{type=table}
    \renewcommand{\glossarysection}[2][]{}
    \printglossary
    \caption{Nomenclature glossary}
\end{figure}

\end{document}

在此处输入图片描述

我还改变了样式的定义rulelowrule使用ruled,以便初始和最终规则比分隔对象和其标题的中间线更粗,并在规则和标题之间提供更好的垂直间距。

相关内容