2016-09-27 340 views
0

我使用https://github.com/opencollab/jlatexmath來解析java中的乳膠數學公式。當試圖解析一個簡單的複數:使用jlatexmath解析乳膠

TeXFormula tex = new TeXFormula("32 + 45~i"); 

我得到以下異常:

org.scilab.forge.jlatexmath.ParseException: Unknown character : '~' (or 126) 

字符「〜」應該是一個牢不可破的空間,本文檔中解釋。 https://en.wikibooks.org/wiki/LaTeX/FAQ#Non-breaking_spaces

使用'〜'的原因是因爲我想渲染由不同的庫返回的乳膠公式:mathjs.org,它在某些公式中包含'〜'字符。

jlatexmath是否支持'〜'或是否必須使用不同的間距命令?現在

+0

我不知道JLaTeXMath,但在LaTeX的數學模式中,間距通常是用\,\;來完成的。 \:(請參閱http://www.emerson.emory.edu/services/latex/latex_119.html) - 另請注意,在數學模式下,間距通常不會完成,因爲格式化程序可以自行完成。你的公式應該是「32 + 45i」 – mtj

+0

使用「〜」的原因是因爲我想呈現由不同庫返回的乳膠公式:http://mathjs.org/並且它包含「〜」字符在一些公式中。我修正了它: latex.replaceAll(「〜」,「\\,」) 在渲染之前,它是一個骯髒的黑客攻擊。你有更好的主意嗎? – adrianromero

+0

不,對不起。 (除了使用latex.replaceAll(「〜」,「」),因爲你真的不應該在公式中做間距,而普通空間只能作爲令牌分隔符,而不能作爲可見的元素) – mtj

回答