Translate

2020年12月17日 星期四

產生漂亮的數學運算式 - MathJax

之前寫了一個 符號選擇的 app 可以產生 𝐗₂+𝐘⁽⁴⁺⁵ⁿ⁾ 這樣的數學式,如果遇到更複雜的有沒有辦法呢?

這個時候就要利用其它更強大的工具來做了,其中我覺得最好用的是 MathJax ,以及 AsciiMath 的語法

MathJax 官網

LaTeX 語法說明

AsciiMath 官網

先來一個範例


<script>
MathJax = {
  loader: {load: ['input/asciimath', 'output/chtml']}
}//設定輸出為 chtml , 也可以設為 output/svg 來輸出 svg 圖檔
</script>
<script src="https://polyfill.io/v3/polyfill.min.js?features=es6"></script>
<script type="text/javascript" id="MathJax-script" async="" src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/startup.js">
</script>

<p>
剛才的運算式 <font color="#00f">`X_2+Y^((4+5n))`</font> 原始字串:<font color="#00f">X_2+Y^((4+5n))</font>
</p>

來個複雜一點的, 原始字串:<font color="#00f">Ans=((-b)+-sqrt(b^2-4ac))/(2a)</font> 
顯示如下 :
<p>
`Ans=((-b)+-sqrt(b^2-4ac))/(2a)`
</p>  

剛才的運算式 原始字串:X_2+Y^((4+5n))

來個複雜一點的, 原始字串:Ans=((-b)+-sqrt(b^2-4ac))/(2a) 顯示如下 :

如果要顯示 MathJax 的選單,可以用這個設定

<script>
MathJax = {
  loader: {load: ['input/asciimath', 'output/chtml', 'ui/menu']},
};
</script>

如果要手動重新繪製數學式,可以呼叫這個指令

    MathJax.typeset();

沒有留言:

張貼留言