gpt4 book ai didi

macros - 如何在 MathJax 中定义自定义宏

转载 作者:行者123 更新时间:2023-12-02 09:52:13 25 4
gpt4 key购买 nike

我正在尝试在 MathJax 中定义 LaTeX 文件中使用的自定义宏。

可以定义简单的宏(单个参数),没有任何问题,例如;

\newcommand{\braket}[1]{\langle #1 \rangle}

作为

Macros: {
braket: ['{\\langle #1 \\rangle}', 1]
}

但要与复杂的问题作斗争;

\newcommand{\Abs}[2][]{\left\lvert#2\right\rvert_{\text{#1}}}

尝试将其定义为:

Macros: {
Abs: ['{\\left\\lvert#2\\rvert_{\\text{#1}}}', 2]
}

但运气不好。

这就是它在 LaTeX 文件中的使用方式

\begin{align}\nonumber
p_e = \Abs{\braket{e|\psi(t)}}^2 = \sin^2\Omega t\, .
\end{align}

不知道我哪里做错了。

我不是 LaTeX 专家,而只是一名尝试在 Web 应用程序上显示 LaTeX 文件的开发人员(针对量子物理社区),因此我将非常感谢您的帮助。谢谢。

P.S 这个问题是在 SE 上提出并关闭的,他们将我重定向到 SO。

最佳答案

我已更新the codepen from my comment

首先,你忘记了\\right;我还修改了您的宏定义,使其具有可选参数。换句话说,大致如下:

Macros: {
braket: ['{\\langle #1 \\rangle}', 1],
Abs: ['\\left\\lvert #2 \\right\\rvert_{\\text{#1}}', 2, ""]
}},

关于macros - 如何在 MathJax 中定义自定义宏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24628668/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com