commit d2fed27a29997a654cf1a8106cfe747dfb4bcd02
parent 830502a0a344d3714dddca0320426bbd1d97fd83
Author: Frédéric Wang <fred.wang@free.fr>
Date: Fri, 18 Oct 2013 14:13:58 +0200
Move FONTDATA from boldsymbol.js to jax/output for STIX and TeX fonts. #612
Diffstat:
4 files changed, 50 insertions(+), 61 deletions(-)
diff --git a/unpacked/extensions/TeX/boldsymbol.js b/unpacked/extensions/TeX/boldsymbol.js
@@ -72,58 +72,4 @@ MathJax.Hub.Register.StartupHook("TeX Jax Ready",function () {
});
-MathJax.Hub.Register.StartupHook("HTML-CSS Jax Ready",function () {
- var HTMLCSS = MathJax.OutputJax["HTML-CSS"];
- var FONTS = HTMLCSS.FONTDATA.FONTS;
- var VARIANT = HTMLCSS.FONTDATA.VARIANT;
-
- if (HTMLCSS.fontInUse === "TeX") {
- FONTS["MathJax_Caligraphic-bold"] = "Caligraphic/Bold/Main.js";
-
- VARIANT["-tex-caligraphic-bold"] =
- {fonts:["MathJax_Caligraphic-bold","MathJax_Main-bold","MathJax_Main","MathJax_Math","MathJax_Size1"],
- offsetA: 0x41, variantA: "bold-italic"};
- VARIANT["-tex-oldstyle-bold"] =
- {fonts:["MathJax_Caligraphic-bold","MathJax_Main-bold","MathJax_Main","MathJax_Math","MathJax_Size1"]};
-
- if (HTMLCSS.msieCheckGreek && HTMLCSS.Font.testFont({
- family:"MathJax_Greek", weight:"bold", style:"italic", testString: HTMLCSS.msieCheckGreek
- })) {
- VARIANT["bold-italic"].offsetG = 0x391; VARIANT["bold-italic"].variantG = "-Greek-Bold-Italic";
- VARIANT["-Greek-Bold-Italic"] = {fonts:["MathJax_Greek-bold-italic"]};
- FONTS["MathJax_Greek-bold-italic"] = "Greek/BoldItalic/Main.js";
- }
-
- if (MathJax.Hub.Browser.isChrome && !MathJax.Hub.Browser.versionAtLeast("5.0")) {
- VARIANT["-tex-caligraphic-bold"].remap = {0x54: [0xE2F0,"-WinChrome"]};
- }
-
- } else if (HTMLCSS.fontInUse === "STIX") {
- VARIANT["-tex-caligraphic-bold"] = {
- fonts:["STIXGeneral-bold-italic","STIXNonUnicode-bold-italic","STIXNonUnicode","STIXGeneral","STIXSizeOneSym"],
- offsetA: 0xE247, noLowerCase: 1
- };
- VARIANT["-tex-oldstyle-bold"] = {
- fonts:["STIXGeneral-bold","STIXNonUnicode-bold","STIXGeneral","STIXSizeOneSym"], offsetN: 0xE263,
- remap: {0xE264: 0xE267, 0xE265: 0xE26B, 0xE266: 0xE26F, 0xE267: 0xE273,
- 0xE268: 0xE277, 0xE269: 0xE27B, 0xE26A: 0xE27F, 0xE26B: 0xE283,
- 0xE26C: 0xE287}
- };
- }
-});
-
-MathJax.Hub.Register.StartupHook("SVG Jax Ready",function () {
- var SVG = MathJax.OutputJax.SVG;
- var FONTS = SVG.FONTDATA.FONTS;
- var VARIANT = SVG.FONTDATA.VARIANT;
-
- FONTS["MathJax_Caligraphic-bold"] = "Caligraphic/Bold/Main.js";
-
- VARIANT["-tex-caligraphic-bold"] =
- {fonts:["MathJax_Caligraphic-bold","MathJax_Main-bold","MathJax_Main","MathJax_Math","MathJax_Size1"],
- offsetA: 0x41, variantA: "bold-italic"};
- VARIANT["-tex-oldstyle-bold"] =
- {fonts:["MathJax_Caligraphic-bold","MathJax_Main-bold","MathJax_Main","MathJax_Math","MathJax_Size1"]};
-});
-
MathJax.Ajax.loadComplete("[MathJax]/extensions/TeX/boldsymbol.js");
diff --git a/unpacked/jax/output/HTML-CSS/fonts/STIX/fontdata.js b/unpacked/jax/output/HTML-CSS/fonts/STIX/fontdata.js
@@ -105,7 +105,17 @@
0xE26A: 0xE285}},
"-tex-mathit": {fonts: [ITALIC,NONUNII,GENERAL,NONUNI,SIZE1], italic:true, noIC:true},
"-largeOp": {fonts:[SIZE1,"STIXIntegralsD",NONUNI,GENERAL]},
- "-smallOp": {}
+ "-smallOp": {},
+ "-tex-caligraphic-bold": {
+ fonts:["STIXGeneral-bold-italic","STIXNonUnicode-bold-italic","STIXNonUnicode","STIXGeneral","STIXSizeOneSym"],
+ offsetA: 0xE247, noLowerCase: 1
+ },
+ "-tex-oldstyle-bold": {
+ fonts:["STIXGeneral-bold","STIXNonUnicode-bold","STIXGeneral","STIXSizeOneSym"], offsetN: 0xE263,
+ remap: {0xE264: 0xE267, 0xE265: 0xE26B, 0xE266: 0xE26F,
+ 0xE267: 0xE273, 0xE268: 0xE277, 0xE269: 0xE27B,
+ 0xE26A: 0xE27F, 0xE26B: 0xE283, 0xE26C: 0xE287}
+ }
},
RANGES: [
diff --git a/unpacked/jax/output/HTML-CSS/fonts/TeX/fontdata.js b/unpacked/jax/output/HTML-CSS/fonts/TeX/fontdata.js
@@ -66,7 +66,8 @@
"MathJax_SansSerif-bold": "SansSerif/Bold/Main.js",
"MathJax_SansSerif-italic": "SansSerif/Italic/Main.js",
"MathJax_Script": "Script/Regular/Main.js",
- "MathJax_Typewriter": "Typewriter/Regular/Main.js"
+ "MathJax_Typewriter": "Typewriter/Regular/Main.js",
+ "MathJax_Caligraphic-bold": "Caligraphic/Bold/Main.js"
},
VARIANT: {
@@ -132,7 +133,10 @@
0x210F:[0x210F,MML.VARIANT.NORMAL] // \hslash
}},
"-largeOp": {fonts:[SIZE2,SIZE1,MAIN]},
- "-smallOp": {fonts:[SIZE1,MAIN]}
+ "-smallOp": {fonts:[SIZE1,MAIN]},
+ "-tex-caligraphic-bold": {fonts:["MathJax_Caligraphic-bold","MathJax_Main-bold","MathJax_Main","MathJax_Math","MathJax_Size1"],
+ offsetA: 0x41, variantA: "bold-italic"},
+ "-tex-oldstyle-bold": {fonts:["MathJax_Caligraphic-bold","MathJax_Main-bold","MathJax_Main","MathJax_Math","MathJax_Size1"]}
},
RANGES: [
@@ -1590,7 +1594,7 @@
HTMLCSS.FONTDATA.REMAP[0x2CB] = 0x60; // grave
HTMLCSS.FONTDATA.REMAP[0x2DA] = 0xB0; // ring above
- var testString = HTMLCSS.msieCheckGreek =
+ var testString =
String.fromCharCode(0x393)+" "+String.fromCharCode(0x3A5)+" "+String.fromCharCode(0x39B);
HTMLCSS.FONTDATA.RANGES.push({name: "IEgreek", low: 0x03B1, high: 0x03C9, offset: "IEG", add: 32});
@@ -1762,6 +1766,20 @@
};
}
+
+ if (HTMLCSS.Font.testFont({family:"MathJax_Greek", weight:"bold", style:"italic", testString: testString})) {
+ HTMLCSS.Augment({
+ FONTDATA: {
+ VARIANT: {
+ "bold-italic": {offsetG: 0x391,
+ variantG: "-Greek-Bold-Italic"},
+ "-Greek-Bold-Italic": {fonts:["MathJax_Greek-bold-italic"]}
+ },
+ FONTS: {"MathJax_Greek-bold-italic": "Greek/BoldItalic/Main.js"}
+ }
+ });
+ }
+
}
if (HTMLCSS.msieIE6) {
@@ -1918,8 +1936,19 @@
0xE2F0: [720,69,644,38,947], // stix-lowercase u italic slashed
0xE2F1: [587,85,894,96,797] // stix-lowercase u bold italic slashed
};
-
+
}
+
+ if (!browser.versionAtLeast("5.0")) {
+ HTMLCSS.Augment({
+ FONTDATA: {
+ VARIANT: {
+ "-tex-caligraphic-bold": {remap: {0x54: [0xE2F0,"-WinChrome"]}}
+ }
+ }
+ });
+ }
+
}
});
diff --git a/unpacked/jax/output/SVG/fonts/TeX/fontdata.js b/unpacked/jax/output/SVG/fonts/TeX/fontdata.js
@@ -64,7 +64,8 @@
"MathJax_SansSerif-bold": "SansSerif/Bold/Main.js",
"MathJax_SansSerif-italic": "SansSerif/Italic/Main.js",
"MathJax_Script": "Script/Regular/Main.js",
- "MathJax_Typewriter": "Typewriter/Regular/Main.js"
+ "MathJax_Typewriter": "Typewriter/Regular/Main.js",
+ "MathJax_Caligraphic-bold": "Caligraphic/Bold/Main.js"
},
VARIANT: {
@@ -130,7 +131,10 @@
0x210F:[0x210F,MML.VARIANT.NORMAL] // \hslash
}},
"-largeOp": {fonts:[SIZE2,SIZE1,MAIN]},
- "-smallOp": {fonts:[SIZE1,MAIN]}
+ "-smallOp": {fonts:[SIZE1,MAIN]},
+ "-tex-caligraphic-bold": {fonts:["MathJax_Caligraphic-bold","MathJax_Main-bold","MathJax_Main","MathJax_Math","MathJax_Size1"],
+ offsetA: 0x41, variantA: "bold-italic"},
+ "-tex-oldstyle-bold": {fonts:["MathJax_Caligraphic-bold","MathJax_Main-bold","MathJax_Main","MathJax_Math","MathJax_Size1"]}
},
RANGES: [