UNPKG

@bokeh/bokehjs

Version:

Interactive, novel data visualization

44 lines 1.76 kB
import { mathjax } from "mathjax-full/js/mathjax.js"; import { TeX } from "mathjax-full/js/input/tex.js"; import { MathML } from "mathjax-full/js/input/mathml"; // import {AsciiMath} from "mathjax-full/js/input/asciimath" import { SVG } from "mathjax-full/js/output/svg.js"; import { browserAdaptor } from "mathjax-full/js/adaptors/browserAdaptor"; import { RegisterHTMLHandler } from "mathjax-full/js/handlers/html.js"; import { AllPackages } from "mathjax-full/js/input/tex/AllPackages.js"; import { FindTeX } from "mathjax-full/js/input/tex/FindTeX.js"; const adaptor = browserAdaptor(); RegisterHTMLHandler(adaptor); const svg = new SVG({ fontCache: "local" }); const defaults = { display: true, em: 16, ex: 8, containerWidth: 80 * 16, }; export function tex2svg(formula, options, macros = {}) { const tex = new TeX({ packages: AllPackages, macros }); const tex_to_svg = mathjax.document("", { InputJax: tex, OutputJax: svg }); return tex_to_svg.convert(formula, { ...defaults, ...options }); } export function ascii2svg(_formula) { // TODO: // const ascii = new AsciiMath({}) // const ascii_to_svg = mathjax.document("", {InputJax: ascii, OutputJax: svg}) // return ascii_to_svg.convert(formula, options) throw new Error("not implemented"); } export function mathml2svg(formula) { const mathml = new MathML({}); const mathml_to_svg = mathjax.document("", { InputJax: mathml, OutputJax: svg }); return mathml_to_svg.convert(formula, defaults); } export function find_tex(text) { const find_text = new FindTeX({ processEnvironments: false, processEscapes: false, processRefs: false, }); return find_text.findMath([text]); } //# sourceMappingURL=index.js.map