我有一长串的风险清单想要写在我的文件中。
我设法让它与 longtable 一起工作,如图 1 所示(它是葡萄牙语的,因为这是我的硕士论文)。
我在这里遇到的问题是模板中有一个配置将表格与“Quadros”(主要用于文本并带有外线)分开。此表格应为“Quadro”而不是“Tabela”,并且应包含在该列表中。
我之所以遇到这个问题,是因为我正在使用一个名为 ABNTex2 的包,它将所有内容转换为适合我的主人的正确格式,并且创建的内容之一是一个新的浮点 Quardo 来处理这种区分
Quadro 通常实例化的方式如下:
\begin{quadro}[htb]
\caption{Editores de Texto Livres}
\label{quadro:editores_texto_livres}
\centering
\begin{tabular}{|l|l|r|} \hline
Editor & Multiplataforma & Específico para Latex \\ \hline
Kwriter & Sim & Não \\
Texmaker & Sim & Sim \\
Kile & Sim & Sim \\
Geany & Sim & Não \\ \hline
\end{tabular}
\end{quadro}
如果我尝试将长表封装在 Quadro 浮点中,它根本就不会显示出来,而且我很确定这是因为它太长了。
因此,我请求帮助的是:
1- 有没有办法更改此代码,以允许 quadro 跨越多个页面,从而允许长表位于其中? 或者另一种方法只是让浮点接受长表?
\newcommand{\listquadroname}{Lista de quadros}
\newcommand{\quadroname}{Quadro}
\newcommand{\quadrorefname}{Quadro}
\newcommand{\chartautorefname}{Quadro}
\addto\captionsenglish{% ingles
\renewcommand{\listquadroname}{List of charts}
\renewcommand{\quadroname}{Chart}
\renewcommand{\quadrorefname}{Chart}
\renewcommand{\chartautorefname}{Chart}
}
\newfloat{quadro}{htbp}{loq}[chapter]
\floatname{quadro}{\quadroname}
\floatstyle{plaintop}
\restylefloat{quadro}
\newlistof{listofquadros}{loq}{\listquadroname}
\newlistentry{quadro}{loq}{0}
\renewcommand{\thequadro}{\thechapter.\@arabic\c@quadro}
\setfloatadjustment{quadro}{\centering}
\renewcommand{\cftquadroname}{\quadroname\space}
\renewcommand*{\cftquadroaftersnum}{\hfill\textendash\hfill}
2-有没有办法只更改此特定表所属的名称和列表?
3- 最后的办法是,我该如何去除外面的垂直线?(这样才能算作“Tabela”)
答案1
第一次尝试。这仅显示需要修补的内容,并且可能确实需要根据您的 mwe 进行更改。
\documentclass{report}
% \usepackage[strut=off]{caption}
\usepackage{float}
\usepackage{longtable}
\usepackage{xpatch}
\newcommand{\listquadroname}{Lista de quadros}
\newcommand{\quadroname}{Quadro}
\newcommand{\quadrorefname}{Quadro}
\newcommand{\chartautorefname}{Quadro}
\newfloat{quadro}{htbp}{loq}[chapter]
\floatname{quadro}{\quadroname}
\floatstyle{plaintop}
\restylefloat{quadro}
\makeatletter
\renewcommand{\thequadro}{\thechapter.\@arabic\c@quadro}
% patch longtable internal macros to use counter "quadro" and write to ".loq"
\xpatchcmd\LT@array
{\refstepcounter{table}}
{\refstepcounter{quadro}}
{}{\fail}
% handle compatibility with caption package
\@ifpackageloaded{caption}{
\renewcommand\LTcaptype{quadro}
}{
\xpatchcmd\LT@c@ption
{\fnum@table}
{\fnum@quadro}
{}{\fail}
\xpatchcmd\LT@c@ption
{\addcontentsline{lot}{table}{\protect\numberline{\thetable}{#2}}}
{\addcontentsline{loq}{quadro}{\protect\numberline{\thequadro}{#2}}}
{}{\fail}
}
\makeatother
\begin{document}
\listof{quadro}{\listquadroname}
\chapter{title}
\begin{quadro}[htb]
\caption{Editores de Texto Livres}
\label{quadro:editores_texto_livres}
\centering
\begin{tabular}{|l|l|r|} \hline
Editor & Multiplataforma & Específico para Latex \\ \hline
Kwriter & Sim & Não \\
Texmaker & Sim & Sim \\
Kile & Sim & Sim \\
Geany & Sim & Não \\ \hline
\end{tabular}
\end{quadro}
\begin{longtable}{cc}
\caption{This is a longtable title} \\
a & b \\
c & d
\end{longtable}
\end{document}