2017-06-06 7 views
0

私はTinyMCEエディタを使用する必要がありますが、私はまた、数学的な方程式や数式を編集することができる必要があります。私は私のTinyMCEインストールにFMathエディタプラグインを追加しました。TinyMCEのfMath EditorプラグインからMathML/Latexコードを取得するには?

は、はい、それは動作し、私は数式を追加することができますが、方程式はSRCブロブ含むとIMGタグが生成されます:http URL、画像はブラウザのメモリに存在を意味し、ブラウザが閉じられた後に削除されます。

はい、AJAXでBLOB imgタグを使って何かをする方法がいくつかありますが、問題は、編集したテキストと数式をデータベースに保存できるようにすることです。

私は最良のアプローチは、データベースの方程式のMathML/Latex表現を保存することだと思います。障害は、FMathエディタはドキュメントが貧弱なので、このMathML/Latexコードを生成する方法を認識していません。

どうすればいいですか、いくつかのFMath関数、getMathML()コードなどがありますか?

プラグインAPIトラフTinyMCEに問題が発生しましたか?

答えて

0

TinyMCEプラグインフォルダ内のFMathのplugin.min.jsをチェックすると、TinyMCEが作成したiframeにHTMLページのOnlyEditor.htmlがロードされます。このhtmlページには次のようなゲッター関数が含まれています。

<script type="text/javascript"> 

    var e1 = $("#editor1").mathEditor({ width: 1000, height: 400 }), 
     mathml = null; 

    e1.mathEditor("setSaveCallback", clientSaveMethod); 

    function clientSaveMethod(){ 
     // get info from editor ex: get image 
     console.dir(e1.mathEditor("getMathML", "UNICODE", "true")); 
    } 

    function getMathML(){ 
     return e1.mathEditor("getMathML", "UNICODE", "true"); 
    } 

    function getBlobOrUrl(returnFunc){ 
     return e1.mathEditor("getBlobOrUrl", returnFunc, "UNICODE", "true"); 
    } 

    function setMathML(mathml){ 
     e1.mathEditor("setMathML", mathml); 
    } 

    function getImage(){ 
     return e1.mathEditor("getImage","png"); 
    } 

    function getMathMLToLoad(){ 
     return null; 
    } 

    // autoload used in tinyMCE editor - do not delete 
    if (window.parent !== null && window.parent.getMathMLToLoad !== null) { 
     mathml = window.parent.getMathMLToLoad(); 

     if (mathml !== null) { 
      e1.mathEditor("setMathML", mathml); 
     } 
    } 
</script> 

getMathML()は、生のMathMLをxml形式で返します。 getImage()は、生成されたイメージのBLOBアドレス/データを返します。 setMathML(mathml)を使用して、特定の数式をロードするようにFMathエディタを設定することもできます。

1

私はカスタムプラグインソリューションを開発している、見てみてください。 https://github.com/Axel186/mathsymbols-tinymce-plugin

これは、フォントをレンダリングするためにMathJaxを使用しています。それは無料で、MITライセンスを持っています。

他のプラグインを見てみると、数学関数を使ってグラフやグラフを生成することができます。

関連する問題