使用 tabularx 和 minipage 居中

使用 tabularx 和 minipage 居中

我对 LaTeX 还不熟悉,遇到了一个小问题,我有一个三列一行的表格,第一列和最后一列相等,中间占据了所有空间。但我想让其内容居中。当我使用时,\centering我得到了下图中的结果。有什么解决办法吗?

    \begin{table}
    \begin{tabularx}{\linewidth}{|m{3cm}|X|m{3cm}|}
        \hline

        \begin{minipage}{\textwidth}
            \includegraphics[width=3cm, height=2.5cm]{ump.png}
        \end{minipage}

        &

        \begin{minipage}{\textwidth}
            \centering
            Université Mohamed Premier \\
            École Nationale de Commerce et de Gestion \\
            Oujda. \\
        \end{minipage}

        &

        \begin{minipage}{\textwidth}
            \includegraphics[width=3cm, height=2.5cm]{ump.png}
        \end{minipage}

        \\ \hline
        \end{tabularx}
\end{table}

代码 结果

非常感谢。

答案1

    \documentclass[a4paper]{article}

    \usepackage{tabularx}
    \usepackage{graphicx}
    \begin{document}

    \begin{table}
    \begin{tabularx}{\linewidth}{|m{3cm}|>{\centering\arraybackslash}X|m{3cm}|}

    \hline
         \includegraphics[scale=3.1]{2.png}      
         & \vspace*{-9mm}
         Université Mohamed Premier\newline
          Ecole Nationale de Commerce et de Gestion\newline
           Oujda. 
            &
          \vspace*{5mm}
          \includegraphics[scale=3.1]{2.png}


        \\ \hline

     \end{tabularx}

     \end{table}


     \end{document}

在此处输入图片描述

答案2

在此处输入图片描述

您不需要内部 minipage 或外部 table 环境。不使用 tabularx 可能更简单。

\documentclass{article}

\usepackage{tabularx,graphicx}

\begin{document}

\noindent
\renewcommand\tabularxcolumn[1]{m{#1}}
\begin{tabularx}{\linewidth}{|m{3cm}|X|m{3cm}|}
    \hline


        \includegraphics[width=\linewidth]{example-image-a}


    &


        \centering
        Université Mohamed Premier \\
        École Nationale de Commerce et de Gestion \\
        Oujda.

    &

        \includegraphics[width=\linewidth]{example-image-b}

    \\ \hline
    \end{tabularx}

\bigskip

But simpler you don't need a table at all

\bigskip


\noindent
\mbox{\includegraphics[width=2.5cm]{example-image-a}%
\hfill
\begin{tabular}[b]{c}
        Université Mohamed Premier \\
        École Nationale de Commerce et de Gestion \\
        Oujda.
\end{tabular}%
\hfill
\includegraphics[width=2.5cm]{example-image-b}}

\end{document}

答案3

每个单元格使用一个简单的tabular。这样,徽标就会自动垂直居中,文本也会自动居中。>{\centering}中间列之前还需要一个,使其水平居中。

\documentclass[a4paper,12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage{graphicx,tabularx}
\usepackage[margin=1in]{geometry}
\begin{document}

\newcommand{\cell}[1]{\begin{tabular}{@{}c@{}}#1\end{tabular}}

\begin{table}
\begin{tabularx}{\linewidth}{|c|>{\centering}X|c|}
\hline
    \cell{\includegraphics[scale=3]{logo.png}}
     & 
     \cell{Université Mohamed Premier \\
     École Nationale de Commerce et de Gestion\\
     Oujda.} 
     &
     \cell{\includegraphics[scale=3]{logo.png}} \\ \hline
 \end{tabularx}
 \end{table}

 \end{document}

[1]:https://i.stack.imgur.com/pRt

答案4

由于我不认为这必须浮动(看起来像标题),所以我删除了表格环境。通过重新定义X列类型并使用以下valign键可以实现居中adjustbox

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc} 
\usepackage{amsmath}
\usepackage{graphicx, adjustbox}
\usepackage{tabularx, cellspace}
\renewcommand{\tabularxcolumn}[1]{m{#1}}
\begin{document}%

\begin{tabularx}{\linewidth}{|Sc|X|Sc|}
\noalign{\setlength{\cellspacetoplimit}{0pt}}
\hline
     \adjincludegraphics[width=3cm, valign=c]{ump.png}
    &
        \centering
        Université Mohammed Premier \\
        École Nationale de Commerce\\ et de Gestion \\
        Oujda.
    &
        \adjincludegraphics[width=3cm, valign=c]{ump.png}\\
\hline
\end{tabularx}

\end{document} 

在此处输入图片描述

相关内容