带有化学大分子反应模块的表格

带有化学大分子反应模块的表格

我想在 chemmacros 提供的反应环境中使用类似 tabular 的东西。像这样:

\documentclass[12pt]{article}  
\usepackage{chemmacros}
\usepackage{siunitx}
\newcommand{\li}[1]{\SI{#1}{\liter}}  
\begin{document}  
\begin{center}
\begin{tabular}{cccccccc}
   & \ch{C3H8\gas} & $+$ & \ch{5 O2\gas} & \ch{->} & \ch{3 CO2\gas} & $+$ & \ch{4 H2O\gas}  \\
  Hasiera & V? &   &   &   & --  &   & --     \\
  Bukaera &  --   &   &  --  &  & \li{2}  &  &      \\
\end{tabular} 
\end{center}  
\begin{center}
\begin{tabular}{cccccccc}
   & \ch{C3H8\gas} & $+$ & \ch{5 O2\gas} & \ch{->} & \ch{3 CO2\gas} & $+$ & \ch{4 H2O\gas}  \\
  Hasiera & V? &   & \li{0.5}  &   & --  &   & --     \\
  Bukaera &  --   &   &  --  &  &   &  &      \\
\end{tabular}
\end{center}
\end{document}

在此处输入图片描述

有没有办法用 chemmacros 来实现这个功能?谢谢

答案1

tabular如果我理解正确的话,您是否希望使用与但使用chemmacros'环境相同的布局reactions*?这不完全可能,因为环境在后台reactions*使用amsmath's ,这意味着它具有相同的对齐行为。align*

但是添加一个可以做你想做的事情的新环境很容易。chemmacros手册在有关环境的部分中说reactions

您可以使用以下命令创建新类型的反应:

\NewChemReaction{<name>}[<number of arguments>]{<math name>}

[…]<math name>是底层数学环境。[…]

它没有说的是,底层环境没有需要作为数学显示环境。完全可以使用以下方式tabular代替:

\documentclass{article}

\usepackage{chemmacros}
\usechemmodule{reactions}
\NewChemReaction{chemtable}[1]{tabular}

\usepackage{siunitx}
\newcommand*{\vol}[1]{\SI{#1}{\liter}}  

\begin{document}  

\begin{chemtable}{cccccccc}
          & C3H8\gas &+ & 5 O2\gas &-> & 3 CO2\gas &+ & 4 H2O\gas \\
  Hasiera & V?       &  &          &   & "--"      &  & "--" \\
  Bukaera & "--"     &  &  "--"    &   & "\vol{2}" &  &
\end{chemtable}

\end{document}

在此处输入图片描述

array通过一些小的修改(需要加载包),可以获得更好的输出:

\begin{chemtable}{l*7{c@{}}}
          & C3H8\gas &+ & 5 O2\gas &-> & 3 CO2\gas &+ & 4 H2O\gas \\
  Hasiera & V?       &  &          &   & "--"      &  & "--" \\
  Bukaera & "--"     &  &  "--"    &   & "\vol{2}" &  &
\end{chemtable}

在此处输入图片描述

相关内容