2013-05-16 56 views
0

我一直在試圖確定將某些計算機代數系統的輸出轉換爲某種可見格式(mathml,latex)的最佳方法,那麼最好的方法是什麼?將平原ascii數學或ascii藝術轉換爲mathml/latex

我試過使用普通的ascii表示法,並轉換爲mathml,但結果並不總是正確的,我一直在考慮獲得二維ascii藝術表示並將其更改爲mathml,有沒有庫這可以做到這一點(IM與Python工作) 我試過onetwo,但他們只能用簡單的ascii而不是2-ascii。

         %pi 
            3 %e  3 
(%o1)        ------- - - 
            5  5 

(%o3) 3*%e^%pi/5-3/5 

上述兩種都是非常根據最大值是相同的,但將它們轉換爲 MATHML產量不完善的結果,因爲的「%」的優先順序被弄亂和pi結束而乘以ë比superscipt。用'%pi'代替'pi'是否足夠?

+0

你見過http://www.hippasus.com/resources/symmath/maximatypeset.html? – katrielalex

+0

@katrielalex是的,我知道maxima能夠做到這一點,可以很好地處理自己簡單的ascii輸入,但不適用於二維ascii藝術。此外,因爲即時通過編程訪問它(即時通過使用Python),它會變得有點笨拙(更不用說提示什麼時候這樣做)在每次評估後運行tex(%),而這一切都不是我嘗試使用其他CAS如公理/單數/減少。 – mike

回答

2

應該很容易將該線性的%窗體轉換爲asciimath,基本上只需刪除%並用反引號包圍即可。

使用Asciimath的MathJax版本

<!DOCTYPE html> 
<html> 
<head> 
<script type="text/javascript" 
    src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.0/MathJax.js?config=TeX-MML-AM_HTMLorMML"> 
</script> 
<title></title> 
</head> 
<body> 

`3*e^pi/5-3/5` 


</body> 
</html> 

主要生產

enter image description here

+0

謝謝,我已經決定把它作爲一個停止差距的措施,我不知道這是多麼強大和未來的證明,但它的工作原理。 – mike

+0

未來的注意事項:cdn.mathjax.org即將結束其生命週期,請查看https://www.mathjax.org/cdn-shutting-down獲取遷移提示(也許可以爲未來的讀者更新您的文章)。 –

+0

@PeterKrautzberger謝謝你的ping(你可以編輯它:-)我會修復,謝謝。 –