我使用booktabs
和floatrow
float 样式的包ruled
。为了保持一致性,我想应用这个看(例子)我使用的词汇表作为术语和amsmath
环境。到目前为止,我使用手册caption
中描述的技术floatrow
,使用captionsetup
和caption
。
我想知道是否有任何简单的方法可以floatrow
处理像浮动一样的小页面并添加适当的规则。
这是一个不太简单的例子。它包括一个table
和figure
,看起来我也想要它们。还有一个格式不正确的glossary
和align
环境。
\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}
我还改变了样式的定义rule
和lowrule
使用ruled
,以便初始和最终规则比分隔对象和其标题的中间线更粗,并在规则和标题之间提供更好的垂直间距。