MathJaxの出力をSVGとして保存できるツールを作った

https://github.com/quartorz/sdjax https://gh-pages.quart.red/sdjax/

MathJaxのSVGをそのまま保存すると文字が表示されないけど、文字のアウトラインが別のSVGの中にあるのが原因なので、そのSVGから文字のデータをコピーしてやればうまく保存できる。

XyJaxを入れてあるので頑張れば図も描ける。

f:id:quartorz:20201119113018p:plain

例えば、↓を入力すると上みたいな図ができる。

\begin{xy}
(-15,0)="A",(15,0)="A2",
(0,33)*{A},
(0,15)="0"*{0},+/d1cm/+/l0.5cm/="1"*{1},+/d1.2cm/+/r0.8cm/="2"*{2},
"A";"A2" **\crv{<-1.5cm,-2.1cm>&<0cm,-3cm>&<1.5cm,-2.1cm>},
"A";"A2" **\crv{<-1.5cm,2.1cm>&<0cm,3cm>&<1.5cm,2.1cm>},

(40,0)="X",(70,0)="X2",
(55,33)*{B},
(55,20)="a"*{a},+/d0.8cm/+/l0.5cm/="b"*{b},+/d1cm/+/r0.8cm/="c"*{c},+/d1cm/+/l0.5cm/="d"*{d},+/d1cm/+/r0.8cm/="e"*{e},
"X";"X2" **\crv{<4cm,-2.1cm>&<5.5cm,-3cm>&<7cm,-2.1cm>},
"X";"X2" **\crv{<4cm,2.1cm>&<5.5cm,3cm>&<7cm,2.1cm>},

\ar @[red] "0"+/r0.3cm/+/u0.1cm/;"a"+/l0.3cm/+/u0.1cm/,
\ar @[red] "1"+/r0.3cm/+/u0.1cm/;"c"+/l0.3cm/+/u0.1cm/,
\ar @[red] "2"+/r0.3cm/+/u0.1cm/;"d"+/l0.3cm/+/u0.1cm/,

\ar @[blue] "a"+/l0.3cm/+/d0.1cm/;"0"+/r0.3cm/+/d0.1cm/,
\ar @[blue] "b"+/l0.3cm/;"0"+/r0.3cm/+/d0.2cm/,
\ar @[blue] "c"+/l0.3cm/+/d0.1cm/;"1"+/r0.3cm/+/d0.1cm/,
\ar @[blue] "d"+/l0.3cm/+/d0.1cm/;"2"+/r0.3cm/+/d0.1cm/,
\ar @[blue] "e"+/l0.3cm/;"2"+/r0.3cm/+/d0.2cm/,
\end{xy}