Mathjax 3演示交互文本输入和HTML输出的配置问题 [英] problems with configuration of mathjax 3 demo interactive TeX input and HTML output

查看:6
本文介绍了Mathjax 3演示交互文本输入和HTML输出的配置问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

演示路径: https://github.com/mathjax/MathJax-demos-web/blob/master/input-tex2chtml.html

我添加mathjax配置:

<script src="https://polyfill.io/v3/polyfill.min.js?features=es6"></script>
<script>
    MathJax = {
        tex: {
            inlineMath: [['$', '$']]
        }
    };
</script>
<script id="MathJax-script" async src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-chtml-full.js"></script>

如下运行:

$符号不应该在那里,但它仍然显示,即使TeX语法是正确的。

如何使$消失?我哪里错了?解决方案是什么?

推荐答案

您的配置正确。您尝试使用输入域和tex2chtmlPromiseVIA的方式有一点小问题。convert

如果您将行放在正文中而不是文本区域中,您可以看到代码正在工作:

数据-lang="js"数据-隐藏="假"数据-控制台="假"数据-巴贝尔="假">
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="utf-8">
    <meta http-equiv="x-ua-compatible" content="ie=edge">
    <meta name="viewport" content="width=device-width">
    <title>MathJax v3 with interactive TeX input and HTML output</title>
    <script src="https://polyfill.io/v3/polyfill.min.js?features=es6"></script>
    <script>
        MathJax = {
            tex: {
                inlineMath: [["$", "$"]]
            }
        };
    </script>
    <script id="MathJax-script" async src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-chtml.js"></script>
</head>

<body>
Testing math:
<p>$x = {-b pm sqrt{b^2-4ac} over 2a}$</p>
</body>

</html>


有关您的使用问题的详细信息,请参阅此GitHub问题Delimiter not working with MathJax.tex2chtmlPromise method

";函数的作用是:使用LaTeX字符串作为参数,不需要分隔符。[.]因此,如果您将分隔符传递给它,它们将作为数学运算的一部分进行排版。不需要分隔符,因为您标识的是数学,而不是MathJax,并将其直接传递给函数。不需要分隔符,因为不需要将数学与周围文本分开,因为您已经这样做了。";

当您在文档中使用$分隔符时,您指定的分隔符将得到适当处理。文档正文中必须使用分隔符,以将其与周围的文本区分开来。

然而,在文本区域中,预计用户输入的唯一内容是有效的Math。考虑到这一预期,分隔符是意外的。将原始输入传递给MathJax.tex2chtmlPromise时,包含的任何文本都将排版为数学。因此,为什么您的$符号在您的输出字段中显示为文字。

这篇关于Mathjax 3演示交互文本输入和HTML输出的配置问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆