当我使用 tabularray 时表格标题被隐藏

当我使用 tabularray 时表格标题被隐藏

我正在使用 Springer Nature LaTeX 模板(https://www.overleaf.com/latex/templates/springer-nature-latex-template/myxmhdsbzkyd)。 我用了https://www.latex-tables.com生成一个简单的表格:

在此处输入图片描述

这是乳胶代码

\documentclass[sn-mathphys,Numbered]{sn-jnl}
\usepackage{graphicx}%
\usepackage{multirow}%
\usepackage{amsmath,amssymb,amsfonts}%
\usepackage{amsthm}%
\usepackage{mathrsfs}%
\usepackage[title]{appendix}%
\usepackage{xcolor}%
\usepackage{textcomp}%
\usepackage{manyfoot}%
\usepackage{booktabs}%
\usepackage{algorithm}%
\usepackage{algorithmicx}%
\usepackage{algpseudocode}%
\usepackage{listings}%
\usepackage{tabularray}

\begin{document}

\begin{table}
\centering
\caption{Table X}
\resizebox{\linewidth}{!}{%
\begin{tblr}{
  width = \linewidth,
  colspec = {Q[219]Q[198]Q[198]},
  cell{1}{2} = {c=2}{0.396\linewidth,c},
  cell{2}{1} = {r=2}{c},
  vline{2-4} = {2}{},
  vline{3-4} = {3}{},
  hline{2-4} = {2-3}{},
}
  & H &   \\
V & 1 & 2 \\
  & 3 & 4 
\end{tblr}
}
\end{table}

\end{document}

由于某种原因,表格没有显示标题:

在此处输入图片描述

我的错误在哪里?请注意,我已经包含了所需的包 \usepackage{tabularray}。

答案1

作为一种解决方法,我们可以尝试{NiceTabular}使用nicematrix

我已经在 Overleaf 中尝试了以下代码(改编自您的 MWE),并使用了所考虑格式(“Springer Nature LaTeX 模板”)的 2.2 版本。

我已在我的 Overleaf 项目中加载了最新版本nicematrix.sty (版本 6.21a 2023/07/17),因为“Overleaf 的 TexLive 2022”有一个旧版本的nicematrix。它似乎可以工作。

%Version 2.1 April 2023
\documentclass[sn-mathphys,Numbered]{sn-jnl}
\usepackage{graphicx}%
\usepackage{multirow}%
\usepackage{amsmath,amssymb,amsfonts}%
\usepackage{amsthm}%
\usepackage{mathrsfs}%
\usepackage[title]{appendix}%
\usepackage{xcolor}%
\usepackage{textcomp}%
\usepackage{manyfoot}%
\usepackage{booktabs}%
\usepackage{algorithm}%
\usepackage{algorithmicx}%
\usepackage{algpseudocode}%
\usepackage{listings}%

\usepackage{nicematrix}  % <-------------

\begin{document}

\NiceMatrixOptions{caption-above}

\begin{table}[htp]
\begin{NiceTabular}{ccc}[caption = My own caption,columns-width=1cm]
& \Block{1-2}{H} \\
\Block{2-1}{V} & \Block[hvlines]{2-2}{}1 & 2 \\
               & 3 & 4 
\end{NiceTabular}
\end{table}

\end{document}

上述代码的输出

答案2

感谢您编辑您的问题。

我现在用我安装的 LaTeX 和(显然是旧版)sn-jnl文档类来测试它。通过它我无法重现您的问题,但是,使用 Overleaf 上的最新版本,这种情况不再存在。似乎它不支持tabularray包。

我建议你向 Overleaf 寻求支持。到目前为止,你只能使用建议的表格代码更改:

在此处输入图片描述

我稍微重写了你的表格代码(这对标题没有任何影响):

\documentclass[sn-mathphys,Numbered]{sn-jnl}
\usepackage{lipsum}

\usepackage{tabularray}
\UseTblrLibrary{varwidth}
\usepackage{enumitem}

\begin{document}
\lipsum[66]
    \begin{table}[ht]
\centering
\begin{tblr}{width=0.25\linewidth,
             hline{2-Z}={2-Z}{solid}, vline{2-Z}={2-Z}{solid},
             colspec = {Q[c] X[c] X[c]},
             cell{1}{2} = {c=2}{c},
             cell{2}{1} = {r=2}{c},
             }
  & H &   \\
V & 1 & 2 \\
  & 3 & 4
\end{tblr}
\caption{Table X \label{tableX}}
    \end{table}
\end{document}

答案3

作者https://www.latex-tables.com在这里,在“Generate”按钮下,您可以选择您喜欢的 LaTeX 环境。默认为“auto”,但如果不能使用“tabularray”,您可以选择“tabular”。

相关内容