2017-03-04 2 views
1

私はアンドロイドで数式を表示したいと思っています。このhttps://github.com/kexanie/MathViewは完全にうまく動作していますが、このコードではどこからtexという文字列を得ることができますか?私は式16を単語16を使ってラテックス形式に変換しようとしましたが、変換したラテックス文字列を元の文字列(MainActivityの文字列tex)に置き換えると、表示されている方程式の代わりにラテックス文字列がそのまま表示されます。androidの数式を表示する

まずMainActivityコードは完全に

public class MainActivity extends AppCompatActivity { 
    MathView formula_two; 
    String tex = "This come from string. You can insert inline formula:" + 
      " \\(ax^2 + bx + c = 0\\) " + 
      "or displayed formula: $$\\sum_{i=0}^n i^2 = \\frac{(n^2+n)(2n+1)}{6}$$"; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
    } 

    @Override 
    protected void onResume() { 
     super.onResume(); 

     formula_two = (MathView) findViewById(R.id.formula_two); 

     formula_two.setText(tex); 
    } 
} 

これは私が私の文字列私は何か間違ったことをやっていることを確認するために

public class MainActivity extends AppCompatActivity { 
    MathView formula_two; 
    String tex = "\\begin{document}\n" + 
      "\n" + 
      "%\\selectlanguage{english} %%% remove comment delimiter ('%') and select language if required\n" + 
      "\n" + 
      "\n" + 
      "\\noindent ${\\left(x+a\\right)}^n=\\int^n_{k=0}{\\left(\\genfrac{}{}{0pt}{}{n}{k}\\right)x^ka^{n-k}}$ this is a test to check latex format ${\\left(1+x\\right)}^n=1+\\frac{nx}{1!}+\\frac{n\\left(n-1\\right)x^2}{2!}+\\dots $\n" + 
      "\n" + 
      "\\noindent \n" + 
      "\n" + 
      "\n" + 
      "\\end{document}"; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
    } 

    @Override 
    protected void onResume() { 
     super.onResume(); 

     formula_two = (MathView) findViewById(R.id.formula_two); 

     formula_two.setText(tex); 
    } 
} 

でTeXの文字列を置き換えているMainActivityある方程式を表示しています数式 の式をtex形式に変換します。どのように完全にそれを変換することができます私は 良いチュートリアルを検索したが、couldnt見つけることができます。任意のヘルプが と評価されました

答えて

0

MathJaxは完全なLaTeXドキュメント、数学的表現のみを処理しません。したがって、定義した変数texをレンダリングすることはできません。特に、MathJaxは\begin{...}\end{...}の間のものは数式であると考えているので、\begin{document}...\end{document}は数学として扱われます。 \noindentマクロは認識されず(数式モードマクロのみが実装されています)、余分なドル記号はリテラルドル記号として表示されます。

また、ドル記号の区切り記号はMathJaxのデフォルト設定では有効になっていないため、数式区切り記号として機能させたい場合は、明示的に有効にする必要があります。詳細は、MathJax Documentationを参照してください。

関連する問題