features.require("tipa");
if (fontname == "ce" || fontname == "cf")
features.require("mhchem");
+ if (fontname == "mathds")
+ features.require("dsfont");
} else if (features.runparams().math_flavor == OutputParams::MathAsHTML) {
features.addCSSSnippet(
"span.normal{font: normal normal normal inherit serif;}\n"
variant = "normal";
else if (tag == "frak" || tag == "mathfrak")
variant = "fraktur";
- else if (tag == "mathbb" || tag == "mathbf"
- || tag == "textbf")
+ else if (tag == "mathbf" || tag == "textbf")
variant = "bold";
+ else if (tag == "mathbb" || tag == "mathbbm"
+ || tag == "mathds")
+ variant = "double-struck";
else if (tag == "mathcal")
variant = "script";
else if (tag == "mathit" || tag == "textsl"
// The fonts we want to support are listed in lib/symbols
-void InsetMathFont::mathmlize(MathStream & os) const
+void InsetMathFont::mathmlize(MathStream & ms) const
{
// FIXME These are not quite right, because they do not nest
// correctly. A proper fix would presumably involve tracking
variant = "monospace";
// no support at present for textipa, textsc, noun
- if (!variant.empty()) {
- if (tag == "mathbb") {
- os << MTag("mstyle", "class='mathbb' mathvariant='" + variant + "'")
- << cell(0)
- << ETag("mstyle");
- } else {
- os << MTag("mstyle", "mathvariant='" + variant + "'")
- << cell(0)
- << ETag("mstyle");
- }
- } else
- os << cell(0);
+ if (!variant.empty())
+ ms << MTag("mstyle", "mathvariant='" + variant + "'")
+ << cell(0)
+ << ETag("mstyle");
+ else
+ ms << cell(0);
}