某些宏或整个环境本身不是方程式,比如整个 tikz 图,可以放在方程式环境中并进行编译。例如 以方程形式显示的图表
一些其他对象,比如宏生成的文本,显然根据经验法则分割线并显示结果的一般方法,导致方程环境无法编译。这种情况还挺多的。
1)是否存在某种特定类型的宏(由于其结构或使用特定符号......)无法在方程环境中进行编译?
2) 如果给定的宏确实导致 (1) 型问题,那么是否存在一个或多个环境(称为 E*)
a) 每个元素都可以单独放在方程环境中进行编译,
b)E* 对 E* 内部的输出没有太大改变,
c) E* 是否可以有一个使用符号或结构 (1) 的宏,该宏会使方程环境崩溃但不会使放置在其中的 E* 崩溃,然后将 E* 放置在方程环境内并进行编译?
[我一般会观察到,例如,tikzpicture 确实总是在方程环境内编译每个 (1) 型宏,放在方程环境中它但 tikpicture 不是 (2) 型环境,因为在这种情况下,在包含宏的 tikzpicture 的方程式环境中,唯一打印的内容是一行带编号的空行,因此出于显而易见的原因,例如 tikzpicture 是 a) 和 c),但不是 b)。是否存在 (2) 型环境?我想象它必须输出一个被视为图像的图像,然后将其加载为图片,如果其他使用的宏无法在方程式环境中编译。哦,是的,复制方程式功能并将显示的内容居中的自定义计数器很容易制作,并且可以替代方程式模式,但期刊通常不喜欢这种临时解决方案。]
答案1
TeX 有三种主要模式水平的,垂直的和数学和数学分为显示和内联。
所以问题实际上是显示数学中允许使用哪些命令。
基本上不允许使用垂直模式命令(除了\halign
,在特殊情况下它是显示屏上唯一的东西),例如\begin{equation} \vskip2in
产生! Missing $ inserted.
允许使用水平和数学模式命令,但一些与水平盒密切相关的基元除外,例如,\unhbox
它会产生错误! Incompatible list can't be unboxed.
\par
数学中不允许有空行。
可以通过先将其包装在垂直框中(例如\parbox
LaTeX 宏)来包含任何垂直模式命令。
启动数学模式的命令可能无法在数学模式下使用。\begin{equation} $x$
是一个错误。! Display math should end with $$.
然后有一些命令是不允许的,因为它是一个组,而不是因为它是数学 \begin{equation}\egroup\end{equation}
产生的! Extra }, or forgotten $.