如何使用“tabularray”和“pdflscape”使表格居中并移动页眉和页脚?

如何使用“tabularray”和“pdflscape”使表格居中并移动页眉和页脚?

我知道如何使用 使表格居中\begin{adjustwidth}{-1cm}{-1cm}以及如何使用 删除页眉和页脚\thispagestyle{empty}。但在tabularraypdflscape环境中,它似乎没有居中,也不能没有页眉和页脚。例如,

\documentclass{article}
\usepackage{tabularx}
\usepackage{tabularray}
\usepackage{pdflscape}
\usepackage{chngpage}
\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage{lipsum}
\pagestyle{headings}
\begin{document}    
\section{New section}
\lipsum{1-6}
    \begin{landscape}
    \thispagestyle{empty}
    \begin{adjustwidth}{-1cm}{-3cm}
        \begin{longtblr}[caption={hello},
        label={tab:table1}]{
        colspec={*{17}{X[c]}}
        }
        \SetCell[c=2]{m} 1& &{{{3\\3\\4}}}&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        \end{longtblr}
    \end{adjustwidth}
    \end{landscape}
\lipsum{1-6}
\end{document}

结果如下:

在此处输入图片描述

另外三个问题:

  1. 中间怎么\SetCell[c=2]{m} 1没做成呢?1
  2. 如何在纵向和横向纸张之间的空白处填充文字?
  3. 如果我TblrNote在此表中插入许多注释。所有注释将显示在表格底部。有没有办法让每个注释都显示在显示其符号的页面上?

答案1

  • 如何删除页眉和页脚\thispagestyle{empty}

thispagestyle{empty}仅更改一页的页眉。由于您的表格有多个页面,\pagestyle{empty}因此您应该改用。由于您在landscape环境内部执行此操作,并且\pagestyle是本地声明,因此在landscape环境完成后,页面样式将自动重置为其先前的值。由于环境landscape以分页符开始和结束,因此页面样式的更改可以正常工作。

  • 中间怎么\SetCell[c=2]{m} 1没做成呢?1

这是对含义的误解m。它并不意味着将内容垂直置于单元格的中心。相反,它的意思是:将内容的基线放在内容的垂直中心。在一行中,所有单元格的基线都放在相同的水平。行中所有其他单元格的基线都在顶部(或唯一一行),因此第一个单元格的垂直中心就在那里。如果您\SetCell[c=1]{m}对第二个单元格使用{3\\3\\4},则第一个单元格将与第二个单元格的中心对齐,但也会与行中所有其他单元格的中心对齐。如果您想要这样,那么这就是解决方案。如果不是,您可以在第一个单元格顶部添加一个空行,例如:

\SetCell[c=2]{t} {\mbox{}\\1}

  • 如何在纵向和横向纸张之间的空白处填充文字?

环境landscape会开始一个新页面,因此如果您想先填满页面,则必须将其延迟到出现分页符为止。这可以通过包来完成afterpage。如果您的 LaTeX 安装足够新,您可以使用例如钩子shipout/after,但为了以防万一,我将在这里使用 afterpage。

由于建议只使用少量代码\afterpage,我将把表格放在一个单独的文件中。因此,将代码从 开始\begin{landscape}和结束于\end{landscape}(包括两者)放在一个单独的文件中lscapetable.tex。在主文件中,将其替换为

\afterpage{\input{lscapetable}},并放入\usepackage{afterpage}序言中。

  • 如果我TblrNote在此表中插入许多注释。所有注释将显示在表格底部。有没有办法让每个注释都显示在显示其符号的页面上?

我不知道。

这是我的完整解决方案(顺便说一下,\lipsum用于[...]其论点):

\documentclass{article}
\usepackage{tabularx}
\usepackage{tabularray}
\usepackage{pdflscape}
\usepackage{chngpage}
\usepackage[english]{babel}
\usepackage[utf8]{inputenc}
\usepackage{lipsum}
\usepackage{afterpage}
\pagestyle{headings}
\begin{document}    
\section{New section}
\lipsum[1-6]
\afterpage{\input{lscapetable}}
\lipsum[1-6]
\end{document}

文件lscapetable.tex

    \begin{landscape}
    \pagestyle{empty}
    \begin{adjustwidth}{-1cm}{-1cm}
        \begin{longtblr}[caption={hello},
        label={tab:table1}]{
        colspec={*{17}{X[c]}}
        }
        \SetCell[c=2]{t} {\mbox{}\\1} & &{{{3\\3\\4}}}&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17\\
        \end{longtblr}
    \end{adjustwidth}
    \end{landscape}

相关内容