簡體   English   中英

在JavaFX WebView中加載MathJax

[英]Loading MathJax in JavaFX WebView

我的項目包中有一個HTML文件。 換一種說法:

com/package/name/index.html

我正在使用JavaFX WebEngine將其加載到WebView

    String url = MyApp.class.getResource("index.html").toExternalForm();  
    webView.getEngine().load(url);

MyApp與HTMl文件位於同一軟件包中,因此可以正常工作。 該頁面按預期顯示。

現在,我要調用一個JavaScript庫。 特別是MathJax。

我已將MathJax文件夾放在同一軟件包中,因此.js文件的路徑為

com/package/name/MATHJAX/MathJax.js?

無論如何,在我編寫的HTML文件中

<script type="text/javascript" src="MATHJAX/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>

如果我要在Chrome或FireFox中運行此文件,它將很好地打開並解析我的數學。

但是,如果我嘗試在JavaFX的WebView打開它,則不會進行解析(因此,我假設MathJax庫沒有被加載)。

那么,加載MathJax的正確路徑是什么?


進展:

index.html文件更改為

<script type="text/x-mathjax-config">
  MathJax.Hub.Config({
    extensions: ["tex2jax.js","MathMenu.js"],
    jax: ["input/TeX", "output/HTML-CSS"],
    tex2jax: {
      inlineMath: [ ['$','$'], ["\\(","\\)"] ],
      displayMath: [ ['$$','$$'], ["\\[","\\]"] ],
      processEscapes: true
    },
    MathMenu: {
      delay: 600
    },
    "HTML-CSS": { availableFonts: ["TeX"] }
  });
</script>
<script type="text/javascript" src="MATHJAX/MathJax.js"></script>

將有效地到達MathJax.js文件。 但是,它將無法加載MathJax的其余部分,並引發如下錯誤:

文件加載失敗:jar:file:/Users/me/Program.jar!/com/package/name/MATHJAX/extensions/MathMenu.js

您是否嘗試過使用CDN包含js?

<script type="text/javascript" async
  src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.0/MathJax.js?    config=TeX-MML-AM_CHTML">
</script>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM