垂直对齐表格内的列表标题

垂直对齐表格内的列表标题

我遇到了以下问题:下面的 LaTeX 代码产生了图片中的输出。

\usepackage{listings, tabularx, caption}

\begin{table}[h]
\centering
\caption{Vergleich von C++ und Swift Code}
\begin{tabularx}{\linewidth}{ | X | X | }

\hline
\lstinputlisting[style=table, caption={C++ Code}]{code/hello_world.cpp} & \lstinputlisting[style=table, caption={C Code}]{code/hello_world.c}\\
\hline

\end{tabularx}\par
\bigskip
Caption
\end{table}

在此处输入图片描述

有没有办法让两个代码示例的标题垂直对齐?

答案1

当您在表格中显示列表时,您可以为子标题另起一行。

我个人认为,您使用了太多标题。在您的示例中,表格上方有一个标题,列表下方有子标题,表格下方还有另一个(无用的)标题。在我的示例中,我删除了最后一个。

\documentclass[a4paper,11pt]{article}
\usepackage[main=ngerman]{babel}
\usepackage{listings, tabularx}
\begin{document}

\begin{table}[h]
  \caption{Vergleich von C++ und Swift Code}
  \begin{tabularx}{\linewidth}{ | X | X | }
    \hline
    \lstinputlisting{code/hello_world.cpp} 
    & \lstinputlisting{code/hello_world.c}\\
    %% NEW: the following line contains the requested subcaptions, 
    %% being set on one line.
    \parbox{\linewidth}{\centering C++-Beispiel} 
    & \parbox{\linewidth}{\centering C-Beispiel} \\
    \hline
  \end{tabularx}
\end{table}
\end{document}

结果如下:

在此处输入图片描述

相关内容