如何为Latex表格或图形添加可交叉引用的Quarto表格标题?
求适配HTML输出的LaTeX表格Quarto标题与交叉引用方案
问题背景
Markdown表格存在局限性(无法合并单元格、自定义水平线位置等),因此需要借助其他工具创建复杂表格。我希望为原生LaTeX表格或图形添加Quarto Markdown格式的标题,要求标题能正确编号,并且支持Markdown语法的交叉引用,同时适配HTML输出。
已尝试的方法
直接使用
Table:标题
Quarto仅会识别紧跟Markdown表格的Table:为编号表格标题。如果Table:后是LaTeX表格,标题会被当作纯文本输出:Table: Table caption {#tbl-label} \begin{longtable}{| p{.20\textwidth} | p{.80\textwidth} |} \hline foo & bar \\ \hline foo & bar \\ \hline \caption{Your caption here} \label{tab:myfirstlongtable} \end{longtable}用Div包裹表格
尝试用Div将LaTeX表格包裹,添加主标题,但Quarto会自动生成空副标题(a):::: {#tbl-label layout-ncol=1} \begin{longtable}{| p{.20\textwidth} | p{.80\textwidth} |} \hline foo & bar \\ \hline foo & bar \\ \hline \caption{Your caption here} \label{tab:myfirstlongtable} \end{longtable} Table caption :::
已实现的效果
现有方案能让原生LaTeX表格实现标题功能,但只能用原生LaTeX语法交叉引用,且无法适配HTML输出。
测试代码与问题说明
Table: Latex table with Quarto caption {#tbl-label1} \begin{longtable}{| p{.20\textwidth} | p{.80\textwidth} |} \hline foo & bar \\ \hline foo & bar \\ \hline \end{longtable} ::: {#tbl-label2 layout-ncol=1} \begin{longtable}{| p{.20\textwidth} | p{.80\textwidth} |} \hline foo & bar \\ \hline foo & bar \\ \hline \end{longtable} Latex table within div with Quarto Caption ::: \begin{longtable}{| p{.20\textwidth} | p{.80\textwidth} |} \hline foo & bar \\ \hline foo & bar \\ \hline \caption{Latex table with Latex caption} \label{tbl-label3} \end{longtable} 表格@tbl-label1是为Latex表格添加Quarto标题的尝试,但由于`Table:`后未跟Markdown表格,标题被识别为纯文本输出。 表格@tbl-label2将Latex表格包裹在单栏Quarto div中,虽生成了编号标题,但额外出现了未指定的空副标题(a),且Latex表格被额外计数。 表格\ref{tbl-label3}以原生Latex方式插入表格和标题,需使用原生Latex语法`\ref{tbl-label3}`进行交叉引用。
我需要的方案:让LaTeX表格/图形能通过Markdown语法交叉引用,同时支持HTML输出适配。
内容的提问来源于stack exchange,提问作者vanadium
相关产品推荐
相关产品推荐

