如何定义表列始终为数学方程式,而其他列为文本?

如何定义表列始终为数学方程式,而其他列为文本?

我想排版一个表格,列出一些方程式,例如

Euler's formula  &    e^{i\phi} &= \cos\phi + i\sin\phi
Euler's identity & 1 + e^{i\pi} &= 0

将其放在\begin{tabular}{l|rl}环境中,所有公式都需要用$' 包围,而使用array文本必须放入 中\text{...}。有没有办法定义一个默认包含的是文本,而另一个是数学模式?

答案1

\documentclass{article}
\usepackage{array}
\begin{document}

\begin{tabular}{@{} l >{$}r<{$} @{\kern1.4pt} >{$}l<{$} @{}}
Euler's formula  &    e^{i\phi} &= \cos\phi + i\sin\phi \\
Euler's identity & 1 + e^{i\pi} &= 0\\
\end{tabular}

\end{document}

在此处输入图片描述

默认表格标题是

-----------col 1---------- ------------col 2 ---------- ---------- col 3---------
\tabcolsep TEXT \tabcolsep \tabcolsep $MATH$ \tabcolsep \tabcolsep $MATH$ \tabcolsep

我可以用忽略这个额外水平空间的@{...}默认长度来替换它。\tabcolsep@{}之间然后它替换两列两个都 \tabcolsep

答案2

为了将来参考,tabu包裹使得这相当容易:

\documentclass[a4paper, 12 pt]{scrartcl}

\usepackage[utf8]{inputenx}
\usepackage[T1]{fontenc}
\usepackage{lmodern}

\usepackage{amsmath}
\usepackage{tabu}

\begin{document}

\section{Another possibility}

\begin{tabu} to 0.75\textwidth{X[l] X[r, $] X[l, $]}
Euler's formula  &    e^{i\phi} &= \cos\phi + i\sin\phi \\
Euler's identity & 1 + e^{i\pi} &= 0
\end{tabu}

\end{document}

因此,只需在列定义中添加一个 $,其所有内容就会在数学模式下处理。屏幕上显示的内容如下: 在屏幕上看起来怎么样

相关内容