LuaLaTeX:表格环境中逐字环境的水平对齐

时间:2019-08-08 15:38:42

标签: latex tabular verbatim

首先,我完全意识到我的代码可能不是实现我想要做的理想方法。但是我不是专业的LaTeX用户,这就是我想出的方式。

我做了一个最小的示例,希望该示例在编译时可以工作(编译器:LuaLaTeX)以显示我的问题。 我正在尝试用tabularx表创建一个投影器框架,该表一方面包含行内逐字环境,另一方面包含等式环境。 “ Y”列类型是tabularx的“ X”环境的修改形式,我在另一个Stackoverflow线程上找到了它。

现在的精确问题如下:我希望逐字表达式与方程表达式对齐,或者至少在每个单元格中垂直居中。

如上所述,我远非专家,而且我已经用尽了所有想法,因此,我非常感谢任何形式的想法和建议。 :)

\documentclass[c, 10pt]{beamer}

\usepackage{polyglossia}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{siunitx}
\usepackage{tabularx}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{siunitx}
\usepackage{placeins}
\usepackage{multirow}
\usepackage{booktabs}
\usepackage{verbatim}
\usepackage{fancyvrb}
\usepackage{nicefrac}
\usepackage{array}

\setdefaultlanguage{english}

\usetheme{JuanLesPins}
\usecolortheme{seahorse}

\newcolumntype{Y}{>{\centering\arraybackslash} X}

\begin{document}

\begin{frame}[fragile, allowframebreaks]{Symbols and Commands}
    \begin{block}{\centering \large{Division}}
        \begin{table}[h]
            \centering
            \renewcommand\baselinestretch{0.01}\selectfont
            \begin{tabularx}{\textwidth}{Y Y Y}
                \toprule
                \multicolumn{1}{m{.3\textwidth}}{\centering Code} & \multicolumn{2}{m{.6\textwidth}}{\centering Examples}\\
                \midrule 
                \verb|\dfrac{a}{b}| & 
                {\begin{equation*}
                    \dfrac{a}{b}
                    \end{equation*}} & 
                {\begin{equation*}
                    \mathrm{e}^{\dfrac{1}{k_BT}}
                    \end{equation*}} \\
                \verb|\frac{a}{b}| &
                {\begin{equation*}
                    \frac{a}{b}
                    \end{equation*}} &
                {\begin{equation*}
                    \mathrm{e}^{\frac{1}{k_BT}}
                    \end{equation*}} \\
                \verb|\nicefrac{a}{b}| &
                {\begin{equation*}
                    \nicefrac{a}{b}
                    \end{equation*}} &
                {\begin{equation*}
                    \mathrm{e}^{\nicefrac{1}{k_BT}}
                    \end{equation*}} \\
                \bottomrule
            \end{tabularx}
        \end{table}
    \end{block}
\end{frame}    

\end{document}

1 个答案:

答案 0 :(得分:0)

要将无编号的方程式放在表中,我宁愿使用内联数学而不是方程式环境。要获得与方程式相同的分数表示,请添加\displaystyle

离题:

  • 不要多次加载软件包

  • 请勿使用fragile, allowframebreaks,除非它们确实是框架所必需的

  • [H]这样的浮动说明符在没有浮动机制的文档类中没有意义

  • 在投影仪表中不需要\centering,它们默认情况下居中

  • 语法\large{...}是错误的,\large是一个开关并且不带参数,因此应为\large Division。无论如何,最好不要将格式化指令放在宏参数中,而要设置适当的投影机模板来控制块标题的字体


\documentclass[c, 10pt]{beamer}

%\usepackage{polyglossia}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{siunitx}
\usepackage{tabularx}
%\usepackage{amsmath}
%\usepackage{amssymb}
%\usepackage{siunitx}
%\usepackage{placeins}
\usepackage{multirow}
\usepackage{booktabs}
%\usepackage{verbatim}
%\usepackage{fancyvrb}
\usepackage{nicefrac}
\usepackage{array}


%\setdefaultlanguage{english}

\usetheme{JuanLesPins}
\usecolortheme{seahorse}

\newcolumntype{Y}{>{\centering\arraybackslash} X}

\setbeamerfont{block title}{size=\large}

\begin{document}

\begin{frame}
    \frametitle{Symbols and Commands}
    \begin{block}{\centering Division}
        \begin{table}
%            \centering
%            \renewcommand\baselinestretch{0.01}\selectfont
            \begin{tabularx}{\textwidth}{Y Y Y}
                \toprule
                 Code & \multicolumn{2}{c}{Examples}\\
                \midrule 
                \verb|\dfrac{a}{b}| & 
                $\displaystyle\dfrac{a}{b}$ & 
                $\displaystyle\mathrm{e}^{\dfrac{1}{k_BT}}$ \\\addlinespace
                \verb|\frac{a}{b}| &
                $\displaystyle\frac{a}{b}$ &
                $\displaystyle\mathrm{e}^{\frac{1}{k_BT}}$ \\\addlinespace
                \verb|\nicefrac{a}{b}| &
                $\displaystyle\nicefrac{a}{b}$ &
                $\displaystyle\mathrm{e}^{\nicefrac{1}{k_BT}}$ \\
                \bottomrule
            \end{tabularx}
        \end{table}
    \end{block}
\end{frame}    

\end{document}