2

Mathjax によってレンダリングされた多くの方程式を含む HTML ページがいくつかあります。特に同じページにないいくつかの方程式を参照したいと思います。

問題は、方程式が同じページにある場合にのみ「\eqref」が機能することです。

1 つの解決策は、すべての方程式に「\tag{}」を使用し、単純な html リンクを使用することです。

例えば、

\label{myequation} \tag{4.1}  

リンクは

"<a href="http://www.mysite.com/mypage#myequation"> 4.1 </a>"

その解決策の問題は、すべての方程式に個人用のタグを付ける必要があることです。

タグを自動的に生成して、別のページで方程式を参照するための解決策を誰かが持っていますか?

4

1 に答える 1

1

自動数式番号付けのドキュメントを参照してください。これにより、 を必要とするのではなく、方程式に自動的に番号を付けることができます\tag。番号付きまたはタグ付きの数式は、リンクで使用できる ID を自動的に取得するため、使用する必要はありません\label(ただし、編集中に数式を追加および削除する場合に役立ちます)。方程式の番号が 5 の場合、ID はmjx-eqn-5です。数式番号の形式を変更するためにオーバーライドできる関数があります。TeX 構成パラメーターのドキュメントのequationNumbersセクションを参照してください。

編集:あなたの要求を理解したので、あなたが要求したことを行うには、サイト内の他のページ(現在表示されているページだけでなく)のラベルからタグへのマッピングをMathJaxが知る必要があると言えます。MathJax にはそのデータがありません。それを行う唯一の方法は、そのデータを含む他のページのデータ ファイルを作成して、MathJax がそれを読み込んで利用できるようにすることです。技術的には可能ですが、特に JavaScript は (通常) ファイルを書き込むことができないため、これを行うのは少し面倒です。

一方、ラベルからタグへのマッピングが必要な唯一の場所は、リンク自体として機能するテキストです (つまり、eq:sum式 4.1 を参照する場合、「4.1」をリンクするテキストにする必要があります)。その方程式に. リンク自体は tomyotherpage#eq:sumになることに注意してください. したがって, 数字を必要とするのはリンクテキスト自体だけです. "[sum]" のようなものをリンクテキストとして使用したい場合eq:sum(例えば "In式 [合計] 参照...") の場合、ラベルからタグへのマッピングは必要なく、それ\eqrefを処理するように変更できます。しかし、リンクとして式番号が本当に必要な場合は、多くのそれを実現するためのより多くのインフラストラクチャ。

于 2013-05-04T12:45:21.070 に答える