summaryrefslogtreecommitdiff
path: root/svgtex.sh
diff options
context:
space:
mode:
Diffstat (limited to 'svgtex.sh')
-rwxr-xr-xsvgtex.sh38
1 files changed, 38 insertions, 0 deletions
diff --git a/svgtex.sh b/svgtex.sh
new file mode 100755
index 0000000..1ce2b03
--- /dev/null
+++ b/svgtex.sh
@@ -0,0 +1,38 @@
+#!/bin/sh
+set -e
+
+# usage: echo "<equation>" | svgtex.sh <output path>
+
+
+tmp=$(mktemp -p /tmp)
+eqn=$(cat /dev/stdin)
+
+echo "---- begin assembly: ----"
+printf "%s\n" "$eqn"
+
+echo "\\\documentclass[10pt,fleqn]{standalone}
+\\\usepackage{standalone,amsmath,amssymb,xcolor}
+\\\begin{document}
+\\\color[HTML]{DDDDDD}" >> $tmp
+
+printf "\\\[ %s \\\]\n" "$eqn" >> $tmp
+
+echo "\\\end{document}" >> $tmp
+
+# now this is where the fun begins
+
+latex -interaction=batchmode $tmp
+
+[ -f tmp.dvi ] || { echo "---- [FATAL] tex output failed ----" ; exit 1 ; } # make sure output exists before continuing
+
+echo "[ok] tex finished typesetting"
+
+dvisvgm tmp.dvi -f ttf -T S2
+
+echo "[ok] conversion to svg"
+
+mv tmp.svg $1 # final move to desired path
+
+rm tmp.aux tmp.log tmp.dvi $tmp # cleanup
+
+echo "---- build complete: $1 ----"