1

SVG、MathML、または (より可能性が高い) いくつかの組み合わせを介して HTML5 対応にしたい次の配列 (LaTeX コードを指定) があります。

\begin{配列}{cccccccc}
0 &&&& \\ \rule[.6cm]{0pt}{0pt}
a_1 & a_2 & a_3 & a_4 & \cdots \\ \rule[.75cm]{0pt}{0pt}
b_1 & b_2 & b_3 & b_4 & \cdots \\ \rule[.75cm]{0pt}{0pt}
\end{配列}

これは (ほとんど) MathML で行うことができますが、次の欲求が問題になります: 無限配列を列挙して可算であることを示す方法を読者に示す (静的な) 蛇行矢印で配列をオーバーレイすることです。

MathML を SVG に埋め込むことができれば、この図を作成できます。しかし、それは不可能のようです。(SVG オブジェクトの HTML タグは失敗します。) canvas 要素の MathML は機能しますか? 任意のポインタをいただければ幸いです。

私の最終的な目標は、ePUB 形式で数学のテキストを作成することです。これらは、現在、私の最大の障害となっている種類の問題です。

4

2 に答える 2

0

コンテナとしてHTMLを使用し、ドキュメントにMathMLとSVGをインラインで使用することをお勧めします。そうすれば、CSSを使用して、グラフィック/方程式/テキストを簡単に再配置およびスタックできます。

私が考えることができる他のオプションは、svgのforeignObject要素であり、これにはHTMLやMathMLなどを含めることができます。

于 2010-07-15T14:43:37.587 に答える
0

MathML と SVG を混在させることは非常に可能です。重要なのは、MathML をforeignObject 要素内に配置することです。

私はラテックスを読んでいないので、あなたの蛇行する矢がどのように見えるべきか分からないので、方程式を四角で囲むことにしました。うまくいけば、それが可能であることを示すのに十分です。現時点で、MathML を適切に表示できるのは Firefox 5 だけであることに注意してください。

<!DOCTYPE html>
<html>
    <body>
        <svg id="svg1" width="300" height="300" xmlns="http://www.w3.org/2000/svg">
            <rect x="40" y="40" height="100" width="100" style="stroke:black; fill:lightblue"/>
            <foreignObject x="50" y="50" width="100" height="100">
                <math xmlns="http://www.w3.org/1998/Math/MathML">
                    <mrow>
                        <mi>A</mi>
                        <mo>=</mo>
                        <mfenced open="[" close="]">
                            <mtable>
                                <mtr>
                                    <mtd><mi>x</mi></mtd>
                                    <mtd><mi>y</mi></mtd>
                                </mtr>
                                <mtr>
                                    <mtd><mi>z</mi></mtd>
                                    <mtd><mi>w</mi></mtd>
                                </mtr>
                            </mtable>
                        </mfenced>
                    </mrow>
                </math>
            </foreignObject>
        </svg>
    </body>
</html>
于 2011-07-27T18:09:10.763 に答える