WebView и MathML

Я попытался поместить код MathML в WebView, и он не отображается должным образом. Что я делаю неправильно?

import android.app.Activity;
import android.os.Bundle;
import android.webkit.WebView;

public class HelloWebView extends Activity {
WebView mWebView;
String mathml = "<html><body><math xmlns=\"http://www.w3.org/1998/Math/MathML\"><mrow><msup> <mi>x</mi> <mn>2</mn> </msup></mrow></math> END OF TEST</body></html>";

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    mWebView = (WebView) findViewById(R.id.webview);
    mWebView.getSettings().setJavaScriptEnabled(true);
    mWebView.loadData(mathml, "text/html", "utf-8");
   }
}

person AG7    schedule 19.04.2011    source источник


Ответы (3)


Строка mathml использует теги MathML. WebView не может отображать теги MathML. Я пытался использовать MathJax, но для отображения математических уравнений требуется 16 МБ файлов. Я не знаю, как MathJax можно использовать в Android, учитывая его размер.

person Gaurav Agarwal    schedule 07.09.2011
comment
Если ваше приложение имеет доступ в Интернет, вы можете использовать их CDN. Я использую CDN, чтобы избежать громоздких APK, и онлайн-версия отлично работает. - person Mani; 06.01.2017

Вы должны посмотреть на MathJax (www.mathjax.org). Это движок JavaScript для отображения MathML. На самом деле он используется для отображения математики в StackExchange.

person Paul Topping    schedule 20.04.2011
comment
IPython также использует Mathjax в своем ноутбуке, и он работает очень хорошо. - person Carl Smith; 08.03.2013

person    schedule
comment
Вам нужно поместить этот код для загрузки mathml с помощью MathJax. mathjax.org - person Yogendra; 31.03.2017
comment
Хотя этот фрагмент кода может решить вопрос, включение объяснения действительно помогает улучшить качество вашего поста. Помните, что вы отвечаете на вопрос для будущих читателей, и эти люди могут не знать причин вашего предложения кода. Изменить эту информацию в вашем вопросе. - person Drag and Drop; 31.03.2017