fontdata.js 100 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997
  1. /* -*- Mode: Javascript; indent-tabs-mode:nil; js-indent-level: 2 -*- */
  2. /* vim: set ts=2 et sw=2 tw=80: */
  3. /*************************************************************
  4. *
  5. * MathJax/jax/output/HTML-CSS/fonts/TeX/fontdata.js
  6. *
  7. * Initializes the HTML-CSS OutputJax to use the MathJax TeX fonts
  8. * for displaying mathematics.
  9. *
  10. * ---------------------------------------------------------------------
  11. *
  12. * Copyright (c) 2009-2017 The MathJax Consortium
  13. *
  14. * Licensed under the Apache License, Version 2.0 (the "License");
  15. * you may not use this file except in compliance with the License.
  16. * You may obtain a copy of the License at
  17. *
  18. * http://www.apache.org/licenses/LICENSE-2.0
  19. *
  20. * Unless required by applicable law or agreed to in writing, software
  21. * distributed under the License is distributed on an "AS IS" BASIS,
  22. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  23. * See the License for the specific language governing permissions and
  24. * limitations under the License.
  25. */
  26. (function (HTMLCSS,MML,AJAX) {
  27. var VERSION = "2.7.2";
  28. var MAIN = "MathJax_Main",
  29. BOLD = "MathJax_Main-bold",
  30. ITALIC = "MathJax_Math-italic",
  31. AMS = "MathJax_AMS",
  32. SIZE1 = "MathJax_Size1",
  33. SIZE2 = "MathJax_Size2",
  34. SIZE3 = "MathJax_Size3",
  35. SIZE4 = "MathJax_Size4";
  36. var H = "H", V = "V", EXTRAH = {load:"extra", dir:H}, EXTRAV = {load:"extra", dir:V};
  37. var ARROWREP = [0x2212,MAIN,0,0,0,-.31,-.31]; // remove extra height/depth added below
  38. var DARROWREP = [0x3D,MAIN,0,0,0,0,.1]; // add depth for arrow extender
  39. HTMLCSS.Augment({
  40. FONTDATA: {
  41. version: VERSION,
  42. TeX_factor: 1, // TeX em's to font em's
  43. baselineskip: 1.2,
  44. lineH: .8, lineD: .2,
  45. hasStyleChar: true, // char 0xEFFD encodes font style
  46. FONTS: {
  47. "MathJax_Main": "Main/Regular/Main.js",
  48. "MathJax_Main-bold": "Main/Bold/Main.js",
  49. "MathJax_Main-italic": "Main/Italic/Main.js",
  50. "MathJax_Math-italic": "Math/Italic/Main.js",
  51. "MathJax_Math-bold-italic": "Math/BoldItalic/Main.js",
  52. "MathJax_Caligraphic": "Caligraphic/Regular/Main.js",
  53. "MathJax_Size1": "Size1/Regular/Main.js",
  54. "MathJax_Size2": "Size2/Regular/Main.js",
  55. "MathJax_Size3": "Size3/Regular/Main.js",
  56. "MathJax_Size4": "Size4/Regular/Main.js",
  57. "MathJax_AMS": "AMS/Regular/Main.js",
  58. "MathJax_Fraktur": "Fraktur/Regular/Main.js",
  59. "MathJax_Fraktur-bold": "Fraktur/Bold/Main.js",
  60. "MathJax_SansSerif": "SansSerif/Regular/Main.js",
  61. "MathJax_SansSerif-bold": "SansSerif/Bold/Main.js",
  62. "MathJax_SansSerif-italic": "SansSerif/Italic/Main.js",
  63. "MathJax_Script": "Script/Regular/Main.js",
  64. "MathJax_Typewriter": "Typewriter/Regular/Main.js",
  65. "MathJax_Caligraphic-bold": "Caligraphic/Bold/Main.js"
  66. },
  67. VARIANT: {
  68. "normal": {fonts:[MAIN,SIZE1,AMS],
  69. offsetG: 0x03B1, variantG: "italic",
  70. remap: {0x391:0x41, 0x392:0x42, 0x395:0x45, 0x396:0x5A, 0x397:0x48,
  71. 0x399:0x49, 0x39A:0x4B, 0x39C:0x4D, 0x39D:0x4E, 0x39F:0x4F,
  72. 0x3A1:0x50, 0x3A4:0x54, 0x3A7:0x58,
  73. 0x2016:0x2225,
  74. 0x2216:[0x2216,"-TeX-variant"], // \smallsetminus
  75. 0x210F:[0x210F,"-TeX-variant"], // \hbar
  76. 0x2032:[0x27,"sans-serif-italic"], // HACK: a smaller prime
  77. 0x29F8:[0x002F,MML.VARIANT.ITALIC]}},
  78. "bold": {fonts:[BOLD,SIZE1,AMS], bold:true,
  79. offsetG: 0x03B1, variantG: "bold-italic",
  80. remap: {0x391:0x41, 0x392:0x42, 0x395:0x45, 0x396:0x5A, 0x397:0x48,
  81. 0x399:0x49, 0x39A:0x4B, 0x39C:0x4D, 0x39D:0x4E, 0x39F:0x4F,
  82. 0x3A1:0x50, 0x3A4:0x54, 0x3A7:0x58, 0x29F8:[0x002F,"bold-italic"],
  83. 0x2016:0x2225,
  84. 0x219A:"\u2190\u0338", 0x219B:"\u2192\u0338", 0x21AE:"\u2194\u0338",
  85. 0x21CD:"\u21D0\u0338", 0x21CE:"\u21D4\u0338", 0x21CF:"\u21D2\u0338",
  86. 0x2204:"\u2203\u0338", 0x2224:"\u2223\u0338", 0x2226:"\u2225\u0338",
  87. 0x2241:"\u223C\u0338", 0x2247:"\u2245\u0338",
  88. 0x226E:"<\u0338", 0x226F:">\u0338",
  89. 0x2270:"\u2264\u0338", 0x2271:"\u2265\u0338",
  90. 0x2280:"\u227A\u0338", 0x2281:"\u227B\u0338",
  91. 0x2288:"\u2286\u0338", 0x2289:"\u2287\u0338",
  92. 0x22AC:"\u22A2\u0338", 0x22AD:"\u22A8\u0338",
  93. // 0x22AE:"\u22A9\u0338", 0x22AF:"\u22AB\u0338",
  94. 0x22E0:"\u227C\u0338", 0x22E1:"\u227D\u0338"//,
  95. // 0x22EA:"\u22B2\u0338", 0x22EB:"\u22B3\u0338",
  96. // 0x22EC:"\u22B4\u0338", 0x22ED:"\u22B5\u0338"
  97. }},
  98. "italic": {fonts:[ITALIC,"MathJax_Main-italic",MAIN,SIZE1,AMS], italic:true,
  99. remap: {0x391:0x41, 0x392:0x42, 0x395:0x45, 0x396:0x5A, 0x397:0x48,
  100. 0x399:0x49, 0x39A:0x4B, 0x39C:0x4D, 0x39D:0x4E, 0x39F:0x4F,
  101. 0x3A1:0x50, 0x3A4:0x54, 0x3A7:0x58}},
  102. "bold-italic": {fonts:["MathJax_Math-bold-italic",BOLD,SIZE1,AMS], bold:true, italic:true,
  103. remap: {0x391:0x41, 0x392:0x42, 0x395:0x45, 0x396:0x5A, 0x397:0x48,
  104. 0x399:0x49, 0x39A:0x4B, 0x39C:0x4D, 0x39D:0x4E, 0x39F:0x4F,
  105. 0x3A1:0x50, 0x3A4:0x54, 0x3A7:0x58}},
  106. "double-struck": {fonts:[AMS, MAIN]},
  107. "fraktur": {fonts:["MathJax_Fraktur",MAIN,SIZE1,AMS]},
  108. "bold-fraktur": {fonts:["MathJax_Fraktur-bold",BOLD,SIZE1,AMS], bold:true},
  109. "script": {fonts:["MathJax_Script",MAIN,SIZE1,AMS]},
  110. "bold-script": {fonts:["MathJax_Script",BOLD,SIZE1,AMS], bold:true},
  111. "sans-serif": {fonts:["MathJax_SansSerif",MAIN,SIZE1,AMS]},
  112. "bold-sans-serif": {fonts:["MathJax_SansSerif-bold",BOLD,SIZE1,AMS], bold:true},
  113. "sans-serif-italic": {fonts:["MathJax_SansSerif-italic","MathJax_Main-italic",SIZE1,AMS], italic:true},
  114. "sans-serif-bold-italic": {fonts:["MathJax_SansSerif-italic","MathJax_Main-italic",SIZE1,AMS], bold:true, italic:true},
  115. "monospace": {fonts:["MathJax_Typewriter",MAIN,SIZE1,AMS]},
  116. "-tex-caligraphic": {fonts:["MathJax_Caligraphic",MAIN], offsetA: 0x41, variantA: "italic"},
  117. "-tex-oldstyle": {fonts:["MathJax_Caligraphic",MAIN]},
  118. "-tex-mathit": {fonts:["MathJax_Main-italic",ITALIC,MAIN,SIZE1,AMS], italic:true, noIC: true,
  119. remap: {0x391:0x41, 0x392:0x42, 0x395:0x45, 0x396:0x5A, 0x397:0x48,
  120. 0x399:0x49, 0x39A:0x4B, 0x39C:0x4D, 0x39D:0x4E, 0x39F:0x4F,
  121. 0x3A1:0x50, 0x3A4:0x54, 0x3A7:0x58}},
  122. "-TeX-variant": {fonts:[AMS,MAIN,SIZE1], // HACK: to get larger prime for \prime
  123. remap: {
  124. 0x2268: 0xE00C, 0x2269: 0xE00D, 0x2270: 0xE011, 0x2271: 0xE00E,
  125. 0x2A87: 0xE010, 0x2A88: 0xE00F, 0x2224: 0xE006, 0x2226: 0xE007,
  126. 0x2288: 0xE016, 0x2289: 0xE018, 0x228A: 0xE01A, 0x228B: 0xE01B,
  127. 0x2ACB: 0xE017, 0x2ACC: 0xE019, 0x03DC: 0xE008, 0x03F0: 0xE009,
  128. 0x2216:[0x2216,MML.VARIANT.NORMAL], // \setminus
  129. 0x210F:[0x210F,MML.VARIANT.NORMAL] // \hslash
  130. }},
  131. "-largeOp": {fonts:[SIZE2,SIZE1,MAIN]},
  132. "-smallOp": {fonts:[SIZE1,MAIN]},
  133. "-tex-caligraphic-bold": {fonts:["MathJax_Caligraphic-bold","MathJax_Main-bold","MathJax_Main","MathJax_Math","MathJax_Size1"], bold:true,
  134. offsetA: 0x41, variantA: "bold-italic"},
  135. "-tex-oldstyle-bold": {fonts:["MathJax_Caligraphic-bold","MathJax_Main-bold","MathJax_Main","MathJax_Math","MathJax_Size1"], bold:true}
  136. },
  137. RANGES: [
  138. {name: "alpha", low: 0x61, high: 0x7A, offset: "A", add: 32},
  139. {name: "number", low: 0x30, high: 0x39, offset: "N"},
  140. {name: "greek", low: 0x03B1, high: 0x03F6, offset: "G"}
  141. ],
  142. RULECHAR: 0x2212,
  143. REMAP: {
  144. 0xA: 0x20, // newline
  145. 0x203E: 0x2C9, // overline
  146. 0x20D0: 0x21BC, 0x20D1: 0x21C0, // combining left and right harpoons
  147. 0x20D6: 0x2190, 0x20E1: 0x2194, // combining left arrow and lef-right arrow
  148. 0x20EC: 0x21C1, 0x20ED: 0x21BD, // combining low right and left harpoons
  149. 0x20EE: 0x2190, 0x20EF: 0x2192, // combining low left and right arrows
  150. 0x20F0: 0x2A, // combining asterisk
  151. 0xFE37: 0x23DE, 0xFE38: 0x23DF, // OverBrace, UnderBrace
  152. 0xB7: 0x22C5, // center dot
  153. 0x2B9: 0x2032, // prime,
  154. 0x3D2: 0x3A5, // Upsilon
  155. 0x2206: 0x394, // increment
  156. 0x2015: 0x2014, 0x2017: 0x5F, // horizontal bars
  157. 0x2022: 0x2219, 0x2044: 0x2F, // bullet, fraction slash
  158. 0x2305: 0x22BC, 0x2306: 0x2A5E, // barwedge, doublebarwedge
  159. 0x25AA: 0x25A0, 0x25B4: 0x25B2, // blacksquare, blacktriangle
  160. 0x25B5: 0x25B3, 0x25B8: 0x25B6, // triangle, blacktriangleright
  161. 0x25BE: 0x25BC, 0x25BF: 0x25BD, // blacktriangledown, triangledown
  162. 0x25C2: 0x25C0, // blacktriangleleft
  163. 0x2329: 0x27E8, 0x232A: 0x27E9, // langle, rangle
  164. 0x3008: 0x27E8, 0x3009: 0x27E9, // langle, rangle
  165. 0x2758: 0x2223, // VerticalSeparator
  166. 0x2A2F: 0xD7, // cross product
  167. 0x25FB: 0x25A1, 0x25FC: 0x25A0, // square, blacksquare
  168. //
  169. // Letter-like symbols (that appear elsewhere)
  170. //
  171. 0x2102: [0x0043,MML.VARIANT.DOUBLESTRUCK],
  172. // 0x210A: [0x0067,MML.VARIANT.SCRIPT],
  173. 0x210B: [0x0048,MML.VARIANT.SCRIPT],
  174. 0x210C: [0x0048,MML.VARIANT.FRAKTUR],
  175. 0x210D: [0x0048,MML.VARIANT.DOUBLESTRUCK],
  176. 0x210E: [0x0068,MML.VARIANT.ITALIC],
  177. 0x2110: [0x004A,MML.VARIANT.SCRIPT],
  178. 0x2111: [0x0049,MML.VARIANT.FRAKTUR],
  179. 0x2112: [0x004C,MML.VARIANT.SCRIPT],
  180. 0x2115: [0x004E,MML.VARIANT.DOUBLESTRUCK],
  181. 0x2119: [0x0050,MML.VARIANT.DOUBLESTRUCK],
  182. 0x211A: [0x0051,MML.VARIANT.DOUBLESTRUCK],
  183. 0x211B: [0x0052,MML.VARIANT.SCRIPT],
  184. 0x211C: [0x0052,MML.VARIANT.FRAKTUR],
  185. 0x211D: [0x0052,MML.VARIANT.DOUBLESTRUCK],
  186. 0x2124: [0x005A,MML.VARIANT.DOUBLESTRUCK],
  187. 0x2126: [0x03A9,MML.VARIANT.NORMAL],
  188. 0x2128: [0x005A,MML.VARIANT.FRAKTUR],
  189. 0x212C: [0x0042,MML.VARIANT.SCRIPT],
  190. 0x212D: [0x0043,MML.VARIANT.FRAKTUR],
  191. // 0x212F: [0x0065,MML.VARIANT.SCRIPT],
  192. 0x2130: [0x0045,MML.VARIANT.SCRIPT],
  193. 0x2131: [0x0046,MML.VARIANT.SCRIPT],
  194. 0x2133: [0x004D,MML.VARIANT.SCRIPT],
  195. // 0x2134: [0x006F,MML.VARIANT.SCRIPT],
  196. 0x2247: 0x2246, // wrong placement of this character
  197. 0x231C: 0x250C, 0x231D:0x2510, // wrong placement of \ulcorner, \urcorner
  198. 0x231E: 0x2514, 0x231F:0x2518, // wrong placement of \llcorner, \lrcorner
  199. //
  200. // compound symbols not in these fonts
  201. //
  202. 0x2204: "\u2203\u0338", // \not\exists
  203. 0x220C: "\u220B\u0338", // \not\ni
  204. 0x2244: "\u2243\u0338", // \not\simeq
  205. 0x2249: "\u2248\u0338", // \not\approx
  206. 0x2262: "\u2261\u0338", // \not\equiv
  207. 0x226D: "\u224D\u0338", // \not\asymp
  208. 0x2274: "\u2272\u0338", // \not\lesssim
  209. 0x2275: "\u2273\u0338", // \not\gtrsim
  210. 0x2278: "\u2276\u0338", // \not\lessgtr
  211. 0x2279: "\u2277\u0338", // \not\gtrless
  212. 0x2284: "\u2282\u0338", // \not\subset
  213. 0x2285: "\u2283\u0338", // \not\supset
  214. 0x22E2: "\u2291\u0338", // \not\sqsubseteq
  215. 0x22E3: "\u2292\u0338", // \not\sqsupseteq
  216. 0x2A0C: "\u222C\u222C", // quadruple integral
  217. 0x2033: "\u2032\u2032", // double prime
  218. 0x2034: "\u2032\u2032\u2032", // triple prime
  219. 0x2036: "\u2035\u2035", // double back prime
  220. 0x2037: "\u2035\u2035\u2035", // trile back prime
  221. 0x2057: "\u2032\u2032\u2032\u2032", // quadruple prime
  222. 0x20DB: "...", // combining three dots above (only works with mover/under)
  223. 0x20DC: "...." // combining four dots above (only works with mover/under)
  224. },
  225. REMAPACCENT: {
  226. "\u2192":"\u20D7",
  227. "\u2032":"'",
  228. "\u2035":"`"
  229. },
  230. REMAPACCENTUNDER: {
  231. },
  232. PLANE1MAP: [
  233. [0x1D400,0x1D419, 0x41, MML.VARIANT.BOLD],
  234. [0x1D41A,0x1D433, 0x61, MML.VARIANT.BOLD],
  235. [0x1D434,0x1D44D, 0x41, MML.VARIANT.ITALIC],
  236. [0x1D44E,0x1D467, 0x61, MML.VARIANT.ITALIC],
  237. [0x1D468,0x1D481, 0x41, MML.VARIANT.BOLDITALIC],
  238. [0x1D482,0x1D49B, 0x61, MML.VARIANT.BOLDITALIC],
  239. [0x1D49C,0x1D4B5, 0x41, MML.VARIANT.SCRIPT],
  240. // [0x1D4B6,0x1D4CF, 0x61, MML.VARIANT.SCRIPT],
  241. // [0x1D4D0,0x1D4E9, 0x41, MML.VARIANT.BOLDSCRIPT],
  242. // [0x1D4EA,0x1D503, 0x61, MML.VARIANT.BOLDSCRIPT],
  243. [0x1D504,0x1D51D, 0x41, MML.VARIANT.FRAKTUR],
  244. [0x1D51E,0x1D537, 0x61, MML.VARIANT.FRAKTUR],
  245. [0x1D538,0x1D551, 0x41, MML.VARIANT.DOUBLESTRUCK],
  246. // [0x1D552,0x1D56B, 0x61, MML.VARIANT.DOUBLESTRUCK],
  247. [0x1D56C,0x1D585, 0x41, MML.VARIANT.BOLDFRAKTUR],
  248. [0x1D586,0x1D59F, 0x61, MML.VARIANT.BOLDFRAKTUR],
  249. [0x1D5A0,0x1D5B9, 0x41, MML.VARIANT.SANSSERIF],
  250. [0x1D5BA,0x1D5D3, 0x61, MML.VARIANT.SANSSERIF],
  251. [0x1D5D4,0x1D5ED, 0x41, MML.VARIANT.BOLDSANSSERIF],
  252. [0x1D5EE,0x1D607, 0x61, MML.VARIANT.BOLDSANSSERIF],
  253. [0x1D608,0x1D621, 0x41, MML.VARIANT.SANSSERIFITALIC],
  254. [0x1D622,0x1D63B, 0x61, MML.VARIANT.SANSSERIFITALIC],
  255. // [0x1D63C,0x1D655, 0x41, MML.VARIANT.SANSSERIFBOLDITALIC],
  256. // [0x1D656,0x1D66F, 0x61, MML.VARIANT.SANSSERIFBOLDITALIC],
  257. [0x1D670,0x1D689, 0x41, MML.VARIANT.MONOSPACE],
  258. [0x1D68A,0x1D6A3, 0x61, MML.VARIANT.MONOSPACE],
  259. [0x1D6A8,0x1D6C1, 0x391, MML.VARIANT.BOLD],
  260. // [0x1D6C2,0x1D6E1, 0x3B1, MML.VARIANT.BOLD],
  261. [0x1D6E2,0x1D6FA, 0x391, MML.VARIANT.ITALIC],
  262. [0x1D6FC,0x1D71B, 0x3B1, MML.VARIANT.ITALIC],
  263. [0x1D71C,0x1D734, 0x391, MML.VARIANT.BOLDITALIC],
  264. [0x1D736,0x1D755, 0x3B1, MML.VARIANT.BOLDITALIC],
  265. [0x1D756,0x1D76E, 0x391, MML.VARIANT.BOLDSANSSERIF],
  266. // [0x1D770,0x1D78F, 0x3B1, MML.VARIANT.BOLDSANSSERIF],
  267. [0x1D790,0x1D7A8, 0x391, MML.VARIANT.SANSSERIFBOLDITALIC],
  268. // [0x1D7AA,0x1D7C9, 0x3B1, MML.VARIANT.SANSSERIFBOLDITALIC],
  269. [0x1D7CE,0x1D7D7, 0x30, MML.VARIANT.BOLD],
  270. // [0x1D7D8,0x1D7E1, 0x30, MML.VARIANT.DOUBLESTRUCK],
  271. [0x1D7E2,0x1D7EB, 0x30, MML.VARIANT.SANSSERIF],
  272. [0x1D7EC,0x1D7F5, 0x30, MML.VARIANT.BOLDSANSSERIF],
  273. [0x1D7F6,0x1D7FF, 0x30, MML.VARIANT.MONOSPACE]
  274. ],
  275. REMAPGREEK: {
  276. 0x391: 0x41, 0x392: 0x42, 0x395: 0x45, 0x396: 0x5A,
  277. 0x397: 0x48, 0x399: 0x49, 0x39A: 0x4B, 0x39C: 0x4D,
  278. 0x39D: 0x4E, 0x39F: 0x4F, 0x3A1: 0x50, 0x3A2: 0x398,
  279. 0x3A4: 0x54, 0x3A7: 0x58, 0x3AA: 0x2207,
  280. 0x3CA: 0x2202, 0x3CB: 0x3F5, 0x3CC: 0x3D1, 0x3CD: 0x3F0,
  281. 0x3CE: 0x3D5, 0x3CF: 0x3F1, 0x3D0: 0x3D6
  282. },
  283. RemapPlane1: function (n,variant) {
  284. for (var i = 0, m = this.PLANE1MAP.length; i < m; i++) {
  285. if (n < this.PLANE1MAP[i][0]) break;
  286. if (n <= this.PLANE1MAP[i][1]) {
  287. n = n - this.PLANE1MAP[i][0] + this.PLANE1MAP[i][2];
  288. if (this.REMAPGREEK[n]) {n = this.REMAPGREEK[n]}
  289. variant = this.VARIANT[this.PLANE1MAP[i][3]];
  290. break;
  291. }
  292. }
  293. return {n: n, variant: variant};
  294. },
  295. DELIMITERS: {
  296. 0x0028: // (
  297. {
  298. dir: V, HW: [[1,MAIN],[1.2,SIZE1],[1.8,SIZE2],[2.4,SIZE3],[3.0,SIZE4]],
  299. stretch: {top: [0x239B,SIZE4], ext: [0x239C,SIZE4], bot: [0x239D,SIZE4]}
  300. },
  301. 0x0029: // )
  302. {
  303. dir: V, HW: [[1,MAIN],[1.2,SIZE1],[1.8,SIZE2],[2.4,SIZE3],[3.0,SIZE4]],
  304. stretch: {top:[0x239E,SIZE4], ext:[0x239F,SIZE4], bot:[0x23A0,SIZE4]}
  305. },
  306. 0x002F: // /
  307. {
  308. dir: V, HW: [[1,MAIN],[1.2,SIZE1],[1.8,SIZE2],[2.4,SIZE3],[3.0,SIZE4]]
  309. },
  310. 0x005B: // [
  311. {
  312. dir: V, HW: [[1,MAIN],[1.2,SIZE1],[1.8,SIZE2],[2.4,SIZE3],[3.0,SIZE4]],
  313. stretch: {top:[0x23A1,SIZE4], ext:[0x23A2,SIZE4], bot:[0x23A3,SIZE4]}
  314. },
  315. 0x005C: // \
  316. {
  317. dir: V, HW: [[1,MAIN],[1.2,SIZE1],[1.8,SIZE2],[2.4,SIZE3],[3.0,SIZE4]]
  318. },
  319. 0x005D: // ]
  320. {
  321. dir: V, HW: [[1,MAIN],[1.2,SIZE1],[1.8,SIZE2],[2.4,SIZE3],[3.0,SIZE4]],
  322. stretch: {top:[0x23A4,SIZE4], ext:[0x23A5,SIZE4], bot:[0x23A6,SIZE4]}
  323. },
  324. 0x007B: // {
  325. {
  326. dir: V, HW: [[1,MAIN],[1.2,SIZE1],[1.8,SIZE2],[2.4,SIZE3],[3.0,SIZE4]],
  327. stretch: {top:[0x23A7,SIZE4], mid:[0x23A8,SIZE4], bot:[0x23A9,SIZE4], ext:[0x23AA,SIZE4]}
  328. },
  329. 0x007C: // |
  330. {
  331. dir: V, HW: [[1,MAIN]], stretch: {ext:[0x2223,MAIN]}
  332. },
  333. 0x007D: // }
  334. {
  335. dir: V, HW: [[1,MAIN],[1.2,SIZE1],[1.8,SIZE2],[2.4,SIZE3],[3.0,SIZE4]],
  336. stretch: {top: [0x23AB,SIZE4], mid:[0x23AC,SIZE4], bot: [0x23AD,SIZE4], ext: [0x23AA,SIZE4]}
  337. },
  338. 0x00AF: // macron
  339. {
  340. dir: H, HW: [[.59,MAIN]], stretch: {rep:[0xAF,MAIN]}
  341. },
  342. 0x02C6: // wide hat
  343. {
  344. dir: H, HW: [[.267+.25,MAIN],[.567+.25,SIZE1],[1.005+.33,SIZE2],[1.447+.33,SIZE3],[1.909,SIZE4]]
  345. },
  346. 0x02DC: // wide tilde
  347. {
  348. dir: H, HW: [[.333+.25,MAIN],[.555+.25,SIZE1],[1+.33,SIZE2],[1.443+.33,SIZE3],[1.887,SIZE4]]
  349. },
  350. 0x2013: // en-dash
  351. {
  352. dir: H, HW: [[.5,MAIN]], stretch: {rep:[0x2013,MAIN]}
  353. },
  354. 0x2016: // vertical arrow extension
  355. {
  356. dir: V, HW: [[.602,SIZE1],[1,MAIN,null,0x2225]], stretch: {ext:[0x2225,MAIN]}
  357. },
  358. 0x2190: // left arrow
  359. {
  360. dir: H, HW: [[1,MAIN]], stretch: {left:[0x2190,MAIN], rep:ARROWREP}
  361. },
  362. 0x2191: // \uparrow
  363. {
  364. dir: V, HW: [[.888,MAIN]], stretch: {top:[0x2191,SIZE1], ext:[0x23D0,SIZE1]}
  365. },
  366. 0x2192: // right arrow
  367. {
  368. dir: H, HW: [[1,MAIN]], stretch: {rep:ARROWREP, right:[0x2192,MAIN]}
  369. },
  370. 0x2193: // \downarrow
  371. {
  372. dir: V, HW: [[.888,MAIN]], stretch: {ext:[0x23D0,SIZE1], bot:[0x2193,SIZE1]}
  373. },
  374. 0x2194: // left-right arrow
  375. {
  376. dir: H, HW: [[1,MAIN]],
  377. stretch: {left:[0x2190,MAIN], rep:ARROWREP, right:[0x2192,MAIN]}
  378. },
  379. 0x2195: // \updownarrow
  380. {
  381. dir: V, HW: [[1.044,MAIN]],
  382. stretch: {top:[0x2191,SIZE1], ext:[0x23D0,SIZE1], bot:[0x2193,SIZE1]}
  383. },
  384. 0x21D0: // left double arrow
  385. {
  386. dir: H, HW: [[1,MAIN]], stretch: {left:[0x21D0,MAIN], rep:DARROWREP}
  387. },
  388. 0x21D1: // \Uparrow
  389. {
  390. dir: V, HW: [[.888,MAIN]], stretch: {top:[0x21D1,SIZE1], ext:[0x2016,SIZE1]}
  391. },
  392. 0x21D2: // right double arrow
  393. {
  394. dir: H, HW: [[1,MAIN]], stretch: {rep:DARROWREP, right:[0x21D2,MAIN]}
  395. },
  396. 0x21D3: // \Downarrow
  397. {
  398. dir: V, HW: [[.888,MAIN]], stretch: {ext:[0x2016,SIZE1], bot:[0x21D3,SIZE1]}
  399. },
  400. 0x21D4: // left-right double arrow
  401. {
  402. dir: H, HW: [[1,MAIN]],
  403. stretch: {left:[0x21D0,MAIN], rep:DARROWREP, right:[0x21D2,MAIN]}
  404. },
  405. 0x21D5: // \Updownarrow
  406. {
  407. dir: V, HW: [[1.044,MAIN]],
  408. stretch: {top:[0x21D1,SIZE1], ext:[0x2016,SIZE1], bot:[0x21D3,SIZE1]}
  409. },
  410. 0x2212: // horizontal line
  411. {
  412. dir: H, HW: [[.5,MAIN,0,0x2013]], stretch: {rep:ARROWREP}
  413. },
  414. 0x221A: // \surd
  415. {
  416. dir: V, HW: [[1,MAIN],[1.2,SIZE1],[1.8,SIZE2],[2.4,SIZE3],[3,SIZE4]],
  417. stretch: {top:[0xE001,SIZE4], ext:[0xE000,SIZE4], bot:[0x23B7,SIZE4], fullExtenders:true}
  418. },
  419. 0x2223: // \vert
  420. {
  421. dir: V, HW: [[1,MAIN]], stretch: {ext:[0x2223,MAIN]}
  422. },
  423. 0x2225: // \Vert
  424. {
  425. dir: V, HW: [[1,MAIN]], stretch: {ext:[0x2225,MAIN]}
  426. },
  427. 0x2308: // \lceil
  428. {
  429. dir: V, HW: [[1,MAIN],[1.2,SIZE1],[1.8,SIZE2],[2.4,SIZE3],[3.0,SIZE4]],
  430. stretch: {top:[0x23A1,SIZE4], ext:[0x23A2,SIZE4]}
  431. },
  432. 0x2309: // \rceil
  433. {
  434. dir: V, HW: [[1,MAIN],[1.2,SIZE1],[1.8,SIZE2],[2.4,SIZE3],[3.0,SIZE4]],
  435. stretch: {top:[0x23A4,SIZE4], ext:[0x23A5,SIZE4]}
  436. },
  437. 0x230A: // \lfloor
  438. {
  439. dir: V, HW: [[1,MAIN],[1.2,SIZE1],[1.8,SIZE2],[2.4,SIZE3],[3.0,SIZE4]],
  440. stretch: {ext:[0x23A2,SIZE4], bot:[0x23A3,SIZE4]}
  441. },
  442. 0x230B: // \rfloor
  443. {
  444. dir: V, HW: [[1,MAIN],[1.2,SIZE1],[1.8,SIZE2],[2.4,SIZE3],[3.0,SIZE4]],
  445. stretch: {ext:[0x23A5,SIZE4], bot:[0x23A6,SIZE4]}
  446. },
  447. 0x23AA: // \bracevert
  448. {
  449. dir: V, HW: [[.32,SIZE4]],
  450. stretch: {top:[0x23AA,SIZE4], ext:[0x23AA,SIZE4], bot:[0x23AA,SIZE4]}
  451. },
  452. 0x23B0: // \lmoustache
  453. {
  454. dir: V, HW: [[.989,MAIN]],
  455. stretch: {top:[0x23A7,SIZE4], ext:[0x23AA,SIZE4], bot:[0x23AD,SIZE4]}
  456. },
  457. 0x23B1: // \rmoustache
  458. {
  459. dir: V, HW: [[.989,MAIN]],
  460. stretch: {top:[0x23AB,SIZE4], ext:[0x23AA,SIZE4], bot:[0x23A9,SIZE4]}
  461. },
  462. 0x23D0: // vertical line extension
  463. {
  464. dir: V, HW: [[.602,SIZE1],[1,MAIN,null,0x2223]], stretch: {ext:[0x2223,MAIN]}
  465. },
  466. 0x23DE: // horizontal brace down
  467. {
  468. dir: H, HW: [],
  469. stretch: {min:.9, left:[0xE150,SIZE4], mid:[[0xE153,0xE152],SIZE4], right:[0xE151,SIZE4], rep:[0xE154,SIZE4]}
  470. },
  471. 0x23DF: // horizontal brace up
  472. {
  473. dir: H, HW: [],
  474. stretch: {min:.9, left:[0xE152,SIZE4], mid:[[0xE151,0xE150],SIZE4], right:[0xE153,SIZE4], rep:[0xE154,SIZE4]}
  475. },
  476. 0x27E8: // \langle
  477. {
  478. dir: V, HW: [[1,MAIN],[1.2,SIZE1],[1.8,SIZE2],[2.4,SIZE3],[3.0,SIZE4]]
  479. },
  480. 0x27E9: // \rangle
  481. {
  482. dir: V, HW: [[1,MAIN],[1.2,SIZE1],[1.8,SIZE2],[2.4,SIZE3],[3.0,SIZE4]]
  483. },
  484. 0x27EE: // \lgroup
  485. {
  486. dir: V, HW: [[.989,MAIN]],
  487. stretch: {top:[0x23A7,SIZE4], ext:[0x23AA,SIZE4], bot:[0x23A9,SIZE4]}
  488. },
  489. 0x27EF: // \rgroup
  490. {
  491. dir: V, HW: [[.989,MAIN]],
  492. stretch: {top:[0x23AB,SIZE4], ext:[0x23AA,SIZE4], bot:[0x23AD,SIZE4]}
  493. },
  494. 0x002D: {alias: 0x2212, dir:H}, // minus
  495. 0x005E: {alias: 0x02C6, dir:H}, // wide hat
  496. 0x005F: {alias: 0x2013, dir:H}, // low line
  497. 0x007E: {alias: 0x02DC, dir:H}, // wide tilde
  498. 0x02C9: {alias: 0x00AF, dir:H}, // macron
  499. 0x0302: {alias: 0x02C6, dir:H}, // wide hat
  500. 0x0303: {alias: 0x02DC, dir:H}, // wide tilde
  501. 0x030C: {alias: 0x02C7, dir:H}, // wide caron
  502. 0x0332: {alias: 0x2013, dir:H}, // combining low line
  503. 0x2014: {alias: 0x2013, dir:H}, // em-dash
  504. 0x2015: {alias: 0x2013, dir:H}, // horizontal line
  505. 0x2017: {alias: 0x2013, dir:H}, // horizontal line
  506. 0x203E: {alias: 0x00AF, dir:H}, // overline
  507. 0x20D7: {alias: 0x2192, dir:H}, // combinining over right arrow (vector arrow)
  508. 0x2215: {alias: 0x002F, dir:V}, // division slash
  509. 0x2329: {alias: 0x27E8, dir:V}, // langle
  510. 0x232A: {alias: 0x27E9, dir:V}, // rangle
  511. 0x23AF: {alias: 0x2013, dir:H}, // horizontal line extension
  512. 0x2500: {alias: 0x2013, dir:H}, // horizontal line
  513. 0x2758: {alias: 0x2223, dir:V}, // vertical separator
  514. 0x3008: {alias: 0x27E8, dir:V}, // langle
  515. 0x3009: {alias: 0x27E9, dir:V}, // rangle
  516. 0xFE37: {alias: 0x23DE, dir:H}, // horizontal brace down
  517. 0xFE38: {alias: 0x23DF, dir:H}, // horizontal brace up
  518. 0x003D: EXTRAH, // equal sign
  519. 0x219E: EXTRAH, // left two-headed arrow
  520. 0x21A0: EXTRAH, // right two-headed arrow
  521. 0x21A4: EXTRAH, // left arrow from bar
  522. 0x21A5: EXTRAV, // up arrow from bar
  523. 0x21A6: EXTRAH, // right arrow from bar
  524. 0x21A7: EXTRAV, // down arrow from bar
  525. 0x21B0: EXTRAV, // up arrow with top leftwards
  526. 0x21B1: EXTRAV, // up arrow with top right
  527. 0x21BC: EXTRAH, // left harpoon with barb up
  528. 0x21BD: EXTRAH, // left harpoon with barb down
  529. 0x21BE: EXTRAV, // up harpoon with barb right
  530. 0x21BF: EXTRAV, // up harpoon with barb left
  531. 0x21C0: EXTRAH, // right harpoon with barb up
  532. 0x21C1: EXTRAH, // right harpoon with barb down
  533. 0x21C2: EXTRAV, // down harpoon with barb right
  534. 0x21C3: EXTRAV, // down harpoon with barb left
  535. 0x21DA: EXTRAH, // left triple arrow
  536. 0x21DB: EXTRAH, // right triple arrow
  537. 0x23B4: EXTRAH, // top square bracket
  538. 0x23B5: EXTRAH, // bottom square bracket
  539. 0x23DC: EXTRAH, // top paren
  540. 0x23DD: EXTRAH, // bottom paren
  541. 0x23E0: EXTRAH, // top tortoise shell
  542. 0x23E1: EXTRAH, // bottom tortoise shell
  543. 0x2906: EXTRAH, // leftwards double arrow from bar
  544. 0x2907: EXTRAH, // rightwards double arrow from bar
  545. 0x294E: EXTRAH, // left barb up right barb up harpoon
  546. 0x294F: EXTRAV, // up barb right down barb right harpoon
  547. 0x2950: EXTRAH, // left barb dow right barb down harpoon
  548. 0x2951: EXTRAV, // up barb left down barb left harpoon
  549. 0x295A: EXTRAH, // leftwards harpoon with barb up from bar
  550. 0x295B: EXTRAH, // rightwards harpoon with barb up from bar
  551. 0x295C: EXTRAV, // up harpoon with barb right from bar
  552. 0x295D: EXTRAV, // down harpoon with barb right from bar
  553. 0x295E: EXTRAH, // leftwards harpoon with barb down from bar
  554. 0x295F: EXTRAH, // rightwards harpoon with barb down from bar
  555. 0x2960: EXTRAV, // up harpoon with barb left from bar
  556. 0x2961: EXTRAV, // down harpoon with barb left from bar
  557. 0x2312: {alias: 0x23DC, dir:H}, // arc
  558. 0x2322: {alias: 0x23DC, dir:H}, // frown
  559. 0x2323: {alias: 0x23DD, dir:H}, // smile
  560. 0x27F5: {alias: 0x2190, dir:H}, // long left arrow
  561. 0x27F6: {alias: 0x2192, dir:H}, // long right arrow
  562. 0x27F7: {alias: 0x2194, dir:H}, // long left-right arrow
  563. 0x27F8: {alias: 0x21D0, dir:H}, // long left double arrow
  564. 0x27F9: {alias: 0x21D2, dir:H}, // long right double arrow
  565. 0x27FA: {alias: 0x21D4, dir:H}, // long left-right double arrow
  566. 0x27FB: {alias: 0x21A4, dir:H}, // long left arrow from bar
  567. 0x27FC: {alias: 0x21A6, dir:H}, // long right arrow from bar
  568. 0x27FD: {alias: 0x2906, dir:H}, // long left double arrow from bar
  569. 0x27FE: {alias: 0x2907, dir:H} // long right double arrow from bar
  570. }
  571. }
  572. });
  573. //
  574. // Handle error with reversed glyphs for \bigcap and \bigcup in version 1 of fonts
  575. //
  576. HTMLCSS.Font.oldLoadComplete = HTMLCSS.Font.loadComplete;
  577. HTMLCSS.Font.loadComplete = function (font,n,done,status) {
  578. if (n != null) {this.oldLoadComplete(font,n,done,status)}
  579. if (font.family === SIZE1 || font.family === SIZE2) {
  580. if (font.version === 1) {
  581. HTMLCSS.FONTDATA.VARIANT["-largeOp"].remap = {0x22C2: 0x22C3, 0x22C3: 0x22C2};
  582. HTMLCSS.FONTDATA.VARIANT["-smallOp"].remap = {0x22C2: 0x22C3, 0x22C3: 0x22C2};
  583. }
  584. }
  585. };
  586. HTMLCSS.FONTDATA.FONTS['MathJax_Caligraphic'] = {
  587. directory: 'Caligraphic/Regular',
  588. family: 'MathJax_Caligraphic',
  589. testString: "MATHJAX CALIGRAPHIC",
  590. skew: {
  591. 0x41: 0.194,
  592. 0x42: 0.139,
  593. 0x43: 0.139,
  594. 0x44: 0.0833,
  595. 0x45: 0.111,
  596. 0x46: 0.111,
  597. 0x47: 0.111,
  598. 0x48: 0.111,
  599. 0x49: 0.0278,
  600. 0x4A: 0.167,
  601. 0x4B: 0.0556,
  602. 0x4C: 0.139,
  603. 0x4D: 0.139,
  604. 0x4E: 0.0833,
  605. 0x4F: 0.111,
  606. 0x50: 0.0833,
  607. 0x51: 0.111,
  608. 0x52: 0.0833,
  609. 0x53: 0.139,
  610. 0x54: 0.0278,
  611. 0x55: 0.0833,
  612. 0x56: 0.0278,
  613. 0x57: 0.0833,
  614. 0x58: 0.139,
  615. 0x59: 0.0833,
  616. 0x5A: 0.139
  617. },
  618. 0x20: [0,0,250,0,0], // SPACE
  619. 0x30: [452,22,500,39,460], // DIGIT ZERO
  620. 0x31: [453,0,500,86,426], // DIGIT ONE
  621. 0x32: [453,0,500,44,449], // DIGIT TWO
  622. 0x33: [452,216,500,42,456], // DIGIT THREE
  623. 0x34: [464,194,500,28,471], // DIGIT FOUR
  624. 0x35: [453,216,500,50,448], // DIGIT FIVE
  625. 0x36: [665,22,500,42,456], // DIGIT SIX
  626. 0x37: [463,216,500,55,485], // DIGIT SEVEN
  627. 0x38: [666,21,500,43,456], // DIGIT EIGHT
  628. 0x39: [453,216,500,42,457], // DIGIT NINE
  629. 0x41: [728,50,798,30,819], // LATIN CAPITAL LETTER A
  630. 0x42: [705,22,657,32,664], // LATIN CAPITAL LETTER B
  631. 0x43: [705,25,527,12,533], // LATIN CAPITAL LETTER C
  632. 0x44: [683,0,771,19,766], // LATIN CAPITAL LETTER D
  633. 0x45: [705,22,528,30,564], // LATIN CAPITAL LETTER E
  634. 0x46: [683,32,719,18,829], // LATIN CAPITAL LETTER F
  635. 0x47: [704,119,595,44,599], // LATIN CAPITAL LETTER G
  636. 0x48: [683,48,845,18,803], // LATIN CAPITAL LETTER H
  637. 0x49: [683,0,545,-30,642], // LATIN CAPITAL LETTER I
  638. 0x4A: [683,119,678,47,839], // LATIN CAPITAL LETTER J
  639. 0x4B: [705,22,762,32,732], // LATIN CAPITAL LETTER K
  640. 0x4C: [705,22,690,32,656], // LATIN CAPITAL LETTER L
  641. 0x4D: [705,50,1201,28,1137], // LATIN CAPITAL LETTER M
  642. 0x4E: [789,50,820,-27,979], // LATIN CAPITAL LETTER N
  643. 0x4F: [705,22,796,58,777], // LATIN CAPITAL LETTER O
  644. 0x50: [683,57,696,19,733], // LATIN CAPITAL LETTER P
  645. 0x51: [705,131,817,114,787], // LATIN CAPITAL LETTER Q
  646. 0x52: [682,22,848,19,837], // LATIN CAPITAL LETTER R
  647. 0x53: [705,22,606,18,642], // LATIN CAPITAL LETTER S
  648. 0x54: [717,68,545,34,833], // LATIN CAPITAL LETTER T
  649. 0x55: [683,28,626,-17,687], // LATIN CAPITAL LETTER U
  650. 0x56: [683,52,613,25,658], // LATIN CAPITAL LETTER V
  651. 0x57: [683,53,988,25,1034], // LATIN CAPITAL LETTER W
  652. 0x58: [683,0,713,52,807], // LATIN CAPITAL LETTER X
  653. 0x59: [683,143,668,31,714], // LATIN CAPITAL LETTER Y
  654. 0x5A: [683,0,725,37,767], // LATIN CAPITAL LETTER Z
  655. 0xA0: [0,0,250,0,0] // NO-BREAK SPACE
  656. };
  657. HTMLCSS.FONTDATA.FONTS['MathJax_Main-bold'] = {
  658. directory: 'Main/Bold',
  659. family: 'MathJax_Main',
  660. weight: 'bold',
  661. testString: "MathJax Main ^ \u210F \u2223",
  662. skew: {
  663. 0x131: 0.0319,
  664. 0x237: 0.0958,
  665. 0x210F: -0.0319,
  666. 0x2113: 0.128,
  667. 0x2202: 0.0958
  668. },
  669. Ranges: [
  670. [0xA0,0xFF,"Latin1Supplement"],
  671. [0x100,0x17F,"LatinExtendedA"],
  672. [0x180,0x24F,"LatinExtendedB"],
  673. [0x2B0,0x2FF,"SpacingModLetters"],
  674. [0x300,0x36F,"CombDiacritMarks"],
  675. [0x2000,0x206F,"GeneralPunctuation"],
  676. [0x20D0,0x20FF,"CombDiactForSymbols"],
  677. [0x2100,0x214F,"LetterlikeSymbols"],
  678. [0x2190,0x21FF,"Arrows"],
  679. [0x2200,0x22FF,"MathOperators"],
  680. [0x2300,0x23FF,"MiscTechnical"],
  681. [0x25A0,0x25FF,"GeometricShapes"],
  682. [0x2600,0x26FF,"MiscSymbols"],
  683. [0x27C0,0x27EF,"MiscMathSymbolsA"],
  684. [0x27F0,0x27FF,"SupplementalArrowsA"],
  685. [0x2A00,0x2AFF,"SuppMathOperators"]
  686. ],
  687. 0x20: [0,0,250,0,0], // SPACE
  688. 0x21: [705,-1,350,89,260], // EXCLAMATION MARK
  689. 0x22: [694,-329,603,38,492], // QUOTATION MARK
  690. 0x23: [694,193,958,64,893], // NUMBER SIGN
  691. 0x24: [750,56,575,64,510], // DOLLAR SIGN
  692. 0x25: [750,56,958,65,893], // PERCENT SIGN
  693. 0x26: [705,11,894,48,836], // AMPERSAND
  694. 0x27: [694,-329,319,74,261], // APOSTROPHE
  695. 0x28: [750,249,447,103,382], // LEFT PARENTHESIS
  696. 0x29: [750,249,447,64,343], // RIGHT PARENTHESIS
  697. 0x2A: [750,-306,575,73,501], // ASTERISK
  698. 0x2B: [633,131,894,64,829], // PLUS SIGN
  699. 0x2C: [171,194,319,74,258], // COMMA
  700. 0x2D: [278,-166,383,13,318], // HYPHEN-MINUS
  701. 0x2E: [171,-1,319,74,245], // FULL STOP
  702. 0x2F: [750,250,575,63,511], // SOLIDUS
  703. 0x30: [654,10,575,45,529], // DIGIT ZERO
  704. 0x31: [655,0,575,80,494], // DIGIT ONE
  705. 0x32: [654,0,575,57,517], // DIGIT TWO
  706. 0x33: [655,11,575,47,526], // DIGIT THREE
  707. 0x34: [656,0,575,32,542], // DIGIT FOUR
  708. 0x35: [655,11,575,57,517], // DIGIT FIVE
  709. 0x36: [655,11,575,48,526], // DIGIT SIX
  710. 0x37: [676,11,575,64,558], // DIGIT SEVEN
  711. 0x38: [654,11,575,48,526], // DIGIT EIGHT
  712. 0x39: [654,11,575,48,526], // DIGIT NINE
  713. 0x3A: [444,-1,319,74,245], // COLON
  714. 0x3B: [444,194,319,74,248], // SEMICOLON
  715. 0x3C: [587,85,894,96,797], // LESS-THAN SIGN
  716. 0x3D: [393,-109,894,64,829], // EQUALS SIGN
  717. 0x3E: [587,85,894,96,797], // GREATER-THAN SIGN
  718. 0x3F: [700,-1,543,65,478], // QUESTION MARK
  719. 0x40: [699,6,894,64,829], // COMMERCIAL AT
  720. 0x41: [698,0,869,40,828], // LATIN CAPITAL LETTER A
  721. 0x42: [686,0,818,39,752], // LATIN CAPITAL LETTER B
  722. 0x43: [697,11,831,64,766], // LATIN CAPITAL LETTER C
  723. 0x44: [686,0,882,39,817], // LATIN CAPITAL LETTER D
  724. 0x45: [680,0,756,39,723], // LATIN CAPITAL LETTER E
  725. 0x46: [680,0,724,39,675], // LATIN CAPITAL LETTER F
  726. 0x47: [697,10,904,64,845], // LATIN CAPITAL LETTER G
  727. 0x48: [686,0,900,39,860], // LATIN CAPITAL LETTER H
  728. 0x49: [686,0,436,25,410], // LATIN CAPITAL LETTER I
  729. 0x4A: [686,11,594,8,527], // LATIN CAPITAL LETTER J
  730. 0x4B: [686,0,901,39,852], // LATIN CAPITAL LETTER K
  731. 0x4C: [686,0,692,39,643], // LATIN CAPITAL LETTER L
  732. 0x4D: [686,0,1092,39,1052], // LATIN CAPITAL LETTER M
  733. 0x4E: [686,0,900,39,860], // LATIN CAPITAL LETTER N
  734. 0x4F: [696,10,864,64,798], // LATIN CAPITAL LETTER O
  735. 0x50: [686,0,786,39,721], // LATIN CAPITAL LETTER P
  736. 0x51: [696,193,864,64,805], // LATIN CAPITAL LETTER Q
  737. 0x52: [686,11,862,39,858], // LATIN CAPITAL LETTER R
  738. 0x53: [697,11,639,64,574], // LATIN CAPITAL LETTER S
  739. 0x54: [675,0,800,41,758], // LATIN CAPITAL LETTER T
  740. 0x55: [686,11,885,39,845], // LATIN CAPITAL LETTER U
  741. 0x56: [686,7,869,25,843], // LATIN CAPITAL LETTER V
  742. 0x57: [686,7,1189,24,1164], // LATIN CAPITAL LETTER W
  743. 0x58: [686,0,869,33,835], // LATIN CAPITAL LETTER X
  744. 0x59: [686,0,869,19,849], // LATIN CAPITAL LETTER Y
  745. 0x5A: [686,0,703,64,645], // LATIN CAPITAL LETTER Z
  746. 0x5B: [750,250,319,128,293], // LEFT SQUARE BRACKET
  747. 0x5C: [750,250,575,63,511], // REVERSE SOLIDUS
  748. 0x5D: [750,250,319,25,190], // RIGHT SQUARE BRACKET
  749. 0x5E: [694,-520,575,126,448], // CIRCUMFLEX ACCENT
  750. 0x5F: [-10,61,575,0,574], // LOW LINE
  751. 0x60: [706,-503,575,114,338], // GRAVE ACCENT
  752. 0x61: [453,6,559,32,558], // LATIN SMALL LETTER A
  753. 0x62: [694,6,639,29,600], // LATIN SMALL LETTER B
  754. 0x63: [453,6,511,39,478], // LATIN SMALL LETTER C
  755. 0x64: [694,6,639,38,609], // LATIN SMALL LETTER D
  756. 0x65: [452,6,527,32,494], // LATIN SMALL LETTER E
  757. 0x66: [700,0,351,40,452], // LATIN SMALL LETTER F
  758. 0x67: [455,201,575,30,558], // LATIN SMALL LETTER G
  759. 0x68: [694,0,639,37,623], // LATIN SMALL LETTER H
  760. 0x69: [695,0,319,40,294], // LATIN SMALL LETTER I
  761. 0x6A: [695,200,351,-71,274], // LATIN SMALL LETTER J
  762. 0x6B: [694,0,607,29,587], // LATIN SMALL LETTER K
  763. 0x6C: [694,0,319,40,301], // LATIN SMALL LETTER L
  764. 0x6D: [450,0,958,37,942], // LATIN SMALL LETTER M
  765. 0x6E: [450,0,639,37,623], // LATIN SMALL LETTER N
  766. 0x6F: [452,5,575,32,542], // LATIN SMALL LETTER O
  767. 0x70: [450,194,639,29,600], // LATIN SMALL LETTER P
  768. 0x71: [450,194,607,38,609], // LATIN SMALL LETTER Q
  769. 0x72: [450,0,474,29,442], // LATIN SMALL LETTER R
  770. 0x73: [453,6,454,38,414], // LATIN SMALL LETTER S
  771. 0x74: [635,5,447,21,382], // LATIN SMALL LETTER T
  772. 0x75: [450,6,639,37,623], // LATIN SMALL LETTER U
  773. 0x76: [444,3,607,26,580], // LATIN SMALL LETTER V
  774. 0x77: [444,4,831,25,805], // LATIN SMALL LETTER W
  775. 0x78: [444,0,607,21,586], // LATIN SMALL LETTER X
  776. 0x79: [444,200,607,23,580], // LATIN SMALL LETTER Y
  777. 0x7A: [444,0,511,32,462], // LATIN SMALL LETTER Z
  778. 0x7B: [750,250,575,70,504], // LEFT CURLY BRACKET
  779. 0x7C: [750,249,319,129,190], // VERTICAL LINE
  780. 0x7D: [750,250,575,70,504], // RIGHT CURLY BRACKET
  781. 0x7E: [344,-202,575,96,478], // TILDE
  782. 0x393: [680,0,692,39,643], // GREEK CAPITAL LETTER GAMMA
  783. 0x394: [698,0,958,56,901], // GREEK CAPITAL LETTER DELTA
  784. 0x398: [696,10,894,64,829], // GREEK CAPITAL LETTER THETA
  785. 0x39B: [698,0,806,40,765], // GREEK CAPITAL LETTER LAMDA
  786. 0x39E: [675,0,767,48,718], // GREEK CAPITAL LETTER XI
  787. 0x3A0: [680,0,900,39,860], // GREEK CAPITAL LETTER PI
  788. 0x3A3: [686,0,831,63,766], // GREEK CAPITAL LETTER SIGMA
  789. 0x3A5: [697,0,894,64,829], // GREEK CAPITAL LETTER UPSILON
  790. 0x3A6: [686,0,831,64,766], // GREEK CAPITAL LETTER PHI
  791. 0x3A8: [686,0,894,64,829], // GREEK CAPITAL LETTER PSI
  792. 0x3A9: [696,0,831,51,779] // GREEK CAPITAL LETTER OMEGA
  793. };
  794. HTMLCSS.FONTDATA.FONTS['MathJax_Main-italic'] = {
  795. directory: 'Main/Italic',
  796. family: 'MathJax_Main',
  797. style: 'italic',
  798. testString: "MathJax Main ^ \u210F \u2223",
  799. Ranges: [
  800. [0xA0,0xFF,"Latin1Supplement"],
  801. [0x300,0x36F,"CombDiacritMarks"],
  802. [0x2000,0x206F,"GeneralPunctuation"],
  803. [0x2100,0x214F,"LetterlikeSymbols"]
  804. ],
  805. 0x20: [0,0,250,0,0], // SPACE
  806. 0x21: [716,0,307,107,380], // EXCLAMATION MARK
  807. 0x22: [694,-379,514,176,538], // QUOTATION MARK
  808. 0x23: [694,194,818,115,828], // NUMBER SIGN
  809. 0x25: [750,56,818,145,847], // PERCENT SIGN
  810. 0x26: [716,22,767,127,802], // AMPERSAND
  811. 0x27: [694,-379,307,213,377], // APOSTROPHE
  812. 0x28: [750,250,409,144,517], // LEFT PARENTHESIS
  813. 0x29: [750,250,409,17,390], // RIGHT PARENTHESIS
  814. 0x2A: [750,-320,511,195,584], // ASTERISK
  815. 0x2B: [557,57,767,139,753], // PLUS SIGN
  816. 0x2C: [121,194,307,69,232], // COMMA
  817. 0x2D: [251,-180,358,84,341], // HYPHEN-MINUS
  818. 0x2E: [121,0,307,107,231], // FULL STOP
  819. 0x2F: [750,250,511,19,617], // SOLIDUS
  820. 0x30: [665,21,511,110,562], // DIGIT ZERO
  821. 0x31: [666,0,511,110,468], // DIGIT ONE
  822. 0x32: [666,22,511,76,551], // DIGIT TWO
  823. 0x33: [666,22,511,96,562], // DIGIT THREE
  824. 0x34: [666,194,511,46,478], // DIGIT FOUR
  825. 0x35: [666,22,511,106,567], // DIGIT FIVE
  826. 0x36: [665,22,511,120,565], // DIGIT SIX
  827. 0x37: [666,22,511,136,634], // DIGIT SEVEN
  828. 0x38: [666,21,511,99,553], // DIGIT EIGHT
  829. 0x39: [666,22,511,107,553], // DIGIT NINE
  830. 0x3A: [431,0,307,107,308], // COLON
  831. 0x3B: [431,194,307,70,308], // SEMICOLON
  832. 0x3D: [367,-133,767,116,776], // EQUALS SIGN
  833. 0x3F: [716,0,511,195,551], // QUESTION MARK
  834. 0x40: [705,11,767,152,789], // COMMERCIAL AT
  835. 0x41: [716,0,743,58,696], // LATIN CAPITAL LETTER A
  836. 0x42: [683,0,704,57,732], // LATIN CAPITAL LETTER B
  837. 0x43: [705,21,716,150,812], // LATIN CAPITAL LETTER C
  838. 0x44: [683,0,755,56,775], // LATIN CAPITAL LETTER D
  839. 0x45: [680,0,678,54,743], // LATIN CAPITAL LETTER E
  840. 0x46: [680,-1,653,54,731], // LATIN CAPITAL LETTER F
  841. 0x47: [705,22,774,150,812], // LATIN CAPITAL LETTER G
  842. 0x48: [683,0,743,54,860], // LATIN CAPITAL LETTER H
  843. 0x49: [683,0,386,49,508], // LATIN CAPITAL LETTER I
  844. 0x4A: [683,21,525,78,622], // LATIN CAPITAL LETTER J
  845. 0x4B: [683,0,769,54,859], // LATIN CAPITAL LETTER K
  846. 0x4C: [683,0,627,54,628], // LATIN CAPITAL LETTER L
  847. 0x4D: [683,0,897,58,1010], // LATIN CAPITAL LETTER M
  848. 0x4E: [683,0,743,54,860], // LATIN CAPITAL LETTER N
  849. 0x4F: [704,22,767,149,788], // LATIN CAPITAL LETTER O
  850. 0x50: [683,0,678,55,729], // LATIN CAPITAL LETTER P
  851. 0x51: [704,194,767,149,788], // LATIN CAPITAL LETTER Q
  852. 0x52: [683,22,729,55,723], // LATIN CAPITAL LETTER R
  853. 0x53: [705,22,562,74,633], // LATIN CAPITAL LETTER S
  854. 0x54: [677,0,716,171,806], // LATIN CAPITAL LETTER T
  855. 0x55: [683,22,743,194,860], // LATIN CAPITAL LETTER U
  856. 0x56: [683,22,743,205,868], // LATIN CAPITAL LETTER V
  857. 0x57: [683,22,999,205,1124], // LATIN CAPITAL LETTER W
  858. 0x58: [683,0,743,50,825], // LATIN CAPITAL LETTER X
  859. 0x59: [683,0,743,198,875], // LATIN CAPITAL LETTER Y
  860. 0x5A: [683,0,613,80,704], // LATIN CAPITAL LETTER Z
  861. 0x5B: [750,250,307,73,446], // LEFT SQUARE BRACKET
  862. 0x5D: [750,250,307,-14,359], // RIGHT SQUARE BRACKET
  863. 0x5E: [694,-527,511,260,528], // CIRCUMFLEX ACCENT
  864. 0x5F: [-25,62,511,91,554], // LOW LINE
  865. 0x61: [442,11,511,101,543], // LATIN SMALL LETTER A
  866. 0x62: [694,11,460,108,467], // LATIN SMALL LETTER B
  867. 0x63: [441,10,460,103,469], // LATIN SMALL LETTER C
  868. 0x64: [694,11,511,101,567], // LATIN SMALL LETTER D
  869. 0x65: [442,10,460,107,470], // LATIN SMALL LETTER E
  870. 0x66: [705,204,307,-23,450], // LATIN SMALL LETTER F
  871. 0x67: [442,205,460,46,494], // LATIN SMALL LETTER G
  872. 0x68: [694,11,511,69,544], // LATIN SMALL LETTER H
  873. 0x69: [656,10,307,75,340], // LATIN SMALL LETTER I
  874. 0x6A: [656,204,307,-32,364], // LATIN SMALL LETTER J
  875. 0x6B: [694,11,460,69,498], // LATIN SMALL LETTER K
  876. 0x6C: [694,11,256,87,312], // LATIN SMALL LETTER L
  877. 0x6D: [442,11,818,75,851], // LATIN SMALL LETTER M
  878. 0x6E: [442,11,562,75,595], // LATIN SMALL LETTER N
  879. 0x6F: [442,11,511,103,517], // LATIN SMALL LETTER O
  880. 0x70: [442,194,511,6,518], // LATIN SMALL LETTER P
  881. 0x71: [442,194,460,101,504], // LATIN SMALL LETTER Q
  882. 0x72: [442,11,422,75,484], // LATIN SMALL LETTER R
  883. 0x73: [442,11,409,76,418], // LATIN SMALL LETTER S
  884. 0x74: [626,11,332,87,373], // LATIN SMALL LETTER T
  885. 0x75: [441,11,537,75,570], // LATIN SMALL LETTER U
  886. 0x76: [443,10,460,75,492], // LATIN SMALL LETTER V
  887. 0x77: [443,11,664,75,696], // LATIN SMALL LETTER W
  888. 0x78: [442,11,464,58,513], // LATIN SMALL LETTER X
  889. 0x79: [441,205,486,75,522], // LATIN SMALL LETTER Y
  890. 0x7A: [442,11,409,54,466], // LATIN SMALL LETTER Z
  891. 0x7E: [318,-208,511,246,571], // TILDE
  892. 0xA3: [714,11,769,88,699], // POUND SIGN
  893. 0x131: [441,10,307,75,340], // LATIN SMALL LETTER DOTLESS I
  894. 0x237: [442,204,332,-32,327], // LATIN SMALL LETTER DOTLESS J
  895. 0x393: [680,0,627,54,705], // GREEK CAPITAL LETTER GAMMA
  896. 0x394: [716,0,818,70,751], // GREEK CAPITAL LETTER DELTA
  897. 0x398: [704,22,767,149,788], // GREEK CAPITAL LETTER THETA
  898. 0x39B: [716,0,692,58,646], // GREEK CAPITAL LETTER LAMDA
  899. 0x39E: [677,0,664,74,754], // GREEK CAPITAL LETTER XI
  900. 0x3A0: [680,0,743,54,859], // GREEK CAPITAL LETTER PI
  901. 0x3A3: [683,0,716,80,782], // GREEK CAPITAL LETTER SIGMA
  902. 0x3A5: [705,0,767,213,832], // GREEK CAPITAL LETTER UPSILON
  903. 0x3A6: [683,0,716,159,728], // GREEK CAPITAL LETTER PHI
  904. 0x3A8: [683,0,767,207,824], // GREEK CAPITAL LETTER PSI
  905. 0x3A9: [705,0,716,100,759] // GREEK CAPITAL LETTER OMEGA
  906. };
  907. HTMLCSS.FONTDATA.FONTS['MathJax_Main'] = {
  908. directory: 'Main/Regular',
  909. family: 'MathJax_Main',
  910. testString: "MathJax Main ^ \u210F \u2223",
  911. skew: {
  912. 0x131: 0.0278,
  913. 0x237: 0.0833,
  914. 0x2113: 0.111,
  915. 0x2118: 0.111,
  916. 0x2202: 0.0833
  917. },
  918. Ranges: [
  919. [0x2B0,0x2FF,"SpacingModLetters"],
  920. [0x300,0x36F,"CombDiacritMarks"],
  921. [0x25A0,0x25FF,"GeometricShapes"],
  922. [0x2600,0x26FF,"MiscSymbols"]
  923. ],
  924. 0x20: [0,0,250,0,0], // SPACE
  925. 0x21: [716,-1,278,78,199], // EXCLAMATION MARK
  926. 0x22: [694,-379,500,34,372], // QUOTATION MARK
  927. 0x23: [694,194,833,56,777], // NUMBER SIGN
  928. 0x24: [750,56,500,55,444], // DOLLAR SIGN
  929. 0x25: [750,56,833,56,776], // PERCENT SIGN
  930. 0x26: [716,22,778,42,727], // AMPERSAND
  931. 0x27: [694,-379,278,78,212], // APOSTROPHE
  932. 0x28: [750,250,389,94,333], // LEFT PARENTHESIS
  933. 0x29: [750,250,389,55,294], // RIGHT PARENTHESIS
  934. 0x2A: [750,-320,500,64,435], // ASTERISK
  935. 0x2B: [583,82,778,56,722], // PLUS SIGN
  936. 0x2C: [121,194,278,78,210], // COMMA
  937. 0x2D: [252,-179,333,11,277], // HYPHEN-MINUS
  938. 0x2E: [120,0,278,78,199], // FULL STOP
  939. 0x2F: [750,250,500,56,445], // SOLIDUS
  940. 0x30: [666,22,500,39,460], // DIGIT ZERO
  941. 0x31: [666,0,500,83,427], // DIGIT ONE
  942. 0x32: [666,0,500,50,449], // DIGIT TWO
  943. 0x33: [665,22,500,42,457], // DIGIT THREE
  944. 0x34: [677,0,500,28,471], // DIGIT FOUR
  945. 0x35: [666,22,500,50,449], // DIGIT FIVE
  946. 0x36: [666,22,500,42,456], // DIGIT SIX
  947. 0x37: [676,22,500,55,485], // DIGIT SEVEN
  948. 0x38: [666,22,500,43,457], // DIGIT EIGHT
  949. 0x39: [666,22,500,42,456], // DIGIT NINE
  950. 0x3A: [430,0,278,78,199], // COLON
  951. 0x3B: [430,194,278,78,202], // SEMICOLON
  952. 0x3C: [540,40,778,83,694], // LESS-THAN SIGN
  953. 0x3D: [367,-133,778,56,722], // EQUALS SIGN
  954. 0x3E: [540,40,778,83,694], // GREATER-THAN SIGN
  955. 0x3F: [705,-1,472,55,416], // QUESTION MARK
  956. 0x40: [705,11,778,56,722], // COMMERCIAL AT
  957. 0x41: [716,0,750,32,717], // LATIN CAPITAL LETTER A
  958. 0x42: [683,0,708,28,651], // LATIN CAPITAL LETTER B
  959. 0x43: [705,21,722,56,666], // LATIN CAPITAL LETTER C
  960. 0x44: [683,0,764,27,708], // LATIN CAPITAL LETTER D
  961. 0x45: [680,0,681,25,652], // LATIN CAPITAL LETTER E
  962. 0x46: [680,0,653,25,610], // LATIN CAPITAL LETTER F
  963. 0x47: [705,22,785,56,735], // LATIN CAPITAL LETTER G
  964. 0x48: [683,0,750,25,724], // LATIN CAPITAL LETTER H
  965. 0x49: [683,0,361,21,339], // LATIN CAPITAL LETTER I
  966. 0x4A: [683,22,514,25,465], // LATIN CAPITAL LETTER J
  967. 0x4B: [683,0,778,25,736], // LATIN CAPITAL LETTER K
  968. 0x4C: [683,0,625,25,582], // LATIN CAPITAL LETTER L
  969. 0x4D: [683,0,917,29,887], // LATIN CAPITAL LETTER M
  970. 0x4E: [683,0,750,25,724], // LATIN CAPITAL LETTER N
  971. 0x4F: [705,22,778,56,722], // LATIN CAPITAL LETTER O
  972. 0x50: [683,0,681,27,624], // LATIN CAPITAL LETTER P
  973. 0x51: [705,193,778,56,728], // LATIN CAPITAL LETTER Q
  974. 0x52: [683,22,736,27,732], // LATIN CAPITAL LETTER R
  975. 0x53: [705,22,556,55,500], // LATIN CAPITAL LETTER S
  976. 0x54: [677,0,722,36,685], // LATIN CAPITAL LETTER T
  977. 0x55: [683,22,750,25,724], // LATIN CAPITAL LETTER U
  978. 0x56: [683,22,750,19,730], // LATIN CAPITAL LETTER V
  979. 0x57: [683,22,1028,18,1009], // LATIN CAPITAL LETTER W
  980. 0x58: [683,0,750,23,726], // LATIN CAPITAL LETTER X
  981. 0x59: [683,0,750,11,738], // LATIN CAPITAL LETTER Y
  982. 0x5A: [683,0,611,55,560], // LATIN CAPITAL LETTER Z
  983. 0x5B: [750,250,278,118,255], // LEFT SQUARE BRACKET
  984. 0x5C: [750,250,500,56,444], // REVERSE SOLIDUS
  985. 0x5D: [750,250,278,22,159], // RIGHT SQUARE BRACKET
  986. 0x5E: [694,-531,500,112,387], // CIRCUMFLEX ACCENT
  987. 0x5F: [-25,62,500,0,499], // LOW LINE
  988. 0x60: [699,-505,500,106,295], // GRAVE ACCENT
  989. 0x61: [448,11,500,34,493], // LATIN SMALL LETTER A
  990. 0x62: [694,11,556,20,522], // LATIN SMALL LETTER B
  991. 0x63: [448,11,444,34,415], // LATIN SMALL LETTER C
  992. 0x64: [694,11,556,34,535], // LATIN SMALL LETTER D
  993. 0x65: [448,11,444,28,415], // LATIN SMALL LETTER E
  994. 0x66: [705,0,306,26,372], // LATIN SMALL LETTER F
  995. 0x67: [453,206,500,29,485], // LATIN SMALL LETTER G
  996. 0x68: [694,0,556,25,542], // LATIN SMALL LETTER H
  997. 0x69: [669,0,278,26,255], // LATIN SMALL LETTER I
  998. 0x6A: [669,205,306,-55,218], // LATIN SMALL LETTER J
  999. 0x6B: [694,0,528,20,511], // LATIN SMALL LETTER K
  1000. 0x6C: [694,0,278,26,263], // LATIN SMALL LETTER L
  1001. 0x6D: [442,0,833,25,819], // LATIN SMALL LETTER M
  1002. 0x6E: [442,0,556,25,542], // LATIN SMALL LETTER N
  1003. 0x6F: [448,10,500,28,471], // LATIN SMALL LETTER O
  1004. 0x70: [442,194,556,20,522], // LATIN SMALL LETTER P
  1005. 0x71: [442,194,528,33,535], // LATIN SMALL LETTER Q
  1006. 0x72: [442,0,392,20,364], // LATIN SMALL LETTER R
  1007. 0x73: [448,11,394,33,359], // LATIN SMALL LETTER S
  1008. 0x74: [615,10,389,18,333], // LATIN SMALL LETTER T
  1009. 0x75: [442,11,556,25,542], // LATIN SMALL LETTER U
  1010. 0x76: [431,11,528,19,508], // LATIN SMALL LETTER V
  1011. 0x77: [431,11,722,18,703], // LATIN SMALL LETTER W
  1012. 0x78: [431,0,528,11,516], // LATIN SMALL LETTER X
  1013. 0x79: [431,204,528,19,508], // LATIN SMALL LETTER Y
  1014. 0x7A: [431,0,444,28,401], // LATIN SMALL LETTER Z
  1015. 0x7B: [750,250,500,65,434], // LEFT CURLY BRACKET
  1016. 0x7C: [750,249,278,119,159], // VERTICAL LINE
  1017. 0x7D: [750,250,500,65,434], // RIGHT CURLY BRACKET
  1018. 0x7E: [318,-215,500,83,416], // TILDE
  1019. 0xA0: [0,0,250,0,0], // NO-BREAK SPACE
  1020. 0xA8: [669,-554,500,95,404], // DIAERESIS
  1021. 0xAC: [356,-89,667,56,611], // NOT SIGN
  1022. 0xAF: [590,-544,500,69,430], // MACRON
  1023. 0xB0: [715,-542,500,147,352], // DEGREE SIGN
  1024. 0xB1: [666,0,778,56,722], // PLUS-MINUS SIGN
  1025. 0xB4: [699,-505,500,203,393], // ACUTE ACCENT
  1026. 0xD7: [491,-9,778,147,630], // MULTIPLICATION SIGN
  1027. 0xF7: [537,36,778,56,721], // DIVISION SIGN
  1028. 0x131: [442,0,278,26,255], // LATIN SMALL LETTER DOTLESS I
  1029. 0x237: [442,205,306,-55,218], // LATIN SMALL LETTER DOTLESS J
  1030. 0x2C6: [694,-531,500,112,387], // MODIFIER LETTER CIRCUMFLEX ACCENT
  1031. 0x2C7: [644,-513,500,114,385], // CARON
  1032. 0x2C9: [590,-544,500,69,430], // MODIFIER LETTER MACRON
  1033. 0x2CA: [699,-505,500,203,393], // MODIFIER LETTER ACUTE ACCENT
  1034. 0x2CB: [699,-505,500,106,295], // MODIFIER LETTER GRAVE ACCENT
  1035. 0x2D8: [694,-515,500,92,407], // BREVE
  1036. 0x2D9: [669,-549,500,190,309], // DOT ABOVE
  1037. 0x2DC: [668,-565,500,83,416], // SMALL TILDE
  1038. 0x393: [680,0,625,25,582], // GREEK CAPITAL LETTER GAMMA
  1039. 0x394: [716,0,833,46,786], // GREEK CAPITAL LETTER DELTA
  1040. 0x398: [705,22,778,56,722], // GREEK CAPITAL LETTER THETA
  1041. 0x39B: [716,0,694,32,661], // GREEK CAPITAL LETTER LAMDA
  1042. 0x39E: [677,0,667,42,624], // GREEK CAPITAL LETTER XI
  1043. 0x3A0: [680,0,750,25,724], // GREEK CAPITAL LETTER PI
  1044. 0x3A3: [683,0,722,55,666], // GREEK CAPITAL LETTER SIGMA
  1045. 0x3A5: [705,0,778,55,722], // GREEK CAPITAL LETTER UPSILON
  1046. 0x3A6: [683,0,722,56,665], // GREEK CAPITAL LETTER PHI
  1047. 0x3A8: [683,0,778,55,722], // GREEK CAPITAL LETTER PSI
  1048. 0x3A9: [704,0,722,44,677], // GREEK CAPITAL LETTER OMEGA
  1049. 0x2002: [0,0,500,0,0], // ??
  1050. 0x2003: [0,0,999,0,0], // ??
  1051. 0x2004: [0,0,333,0,0], // ??
  1052. 0x2005: [0,0,250,0,0], // ??
  1053. 0x2006: [0,0,167,0,0], // ??
  1054. 0x2009: [0,0,167,0,0], // ??
  1055. 0x200A: [0,0,83,0,0], // ??
  1056. 0x2013: [285,-248,500,0,499], // EN DASH
  1057. 0x2014: [285,-248,1000,0,999], // EM DASH
  1058. 0x2018: [694,-379,278,64,198], // LEFT SINGLE QUOTATION MARK
  1059. 0x2019: [694,-379,278,78,212], // RIGHT SINGLE QUOTATION MARK
  1060. 0x201C: [694,-379,500,128,466], // LEFT DOUBLE QUOTATION MARK
  1061. 0x201D: [694,-379,500,34,372], // RIGHT DOUBLE QUOTATION MARK
  1062. 0x2020: [705,216,444,55,389], // DAGGER
  1063. 0x2021: [705,205,444,55,389], // DOUBLE DAGGER
  1064. 0x2026: [120,0,1172,78,1093], // HORIZONTAL ELLIPSIS
  1065. 0x2032: [560,-43,275,30,262], // PRIME
  1066. 0x20D7: [714,-516,0,-471,-29], // COMBINING RIGHT ARROW ABOVE
  1067. 0x210F: [695,13,540,42,562], // stix-/hbar - Planck's over 2pi
  1068. 0x2111: [705,10,722,55,693], // BLACK-LETTER CAPITAL I
  1069. 0x2113: [705,20,417,6,397], // SCRIPT SMALL L
  1070. 0x2118: [453,216,636,67,625], // SCRIPT CAPITAL P
  1071. 0x211C: [716,22,722,40,715], // BLACK-LETTER CAPITAL R
  1072. 0x2135: [694,0,611,55,555], // ALEF SYMBOL
  1073. 0x2190: [511,11,1000,55,944], // LEFTWARDS ARROW
  1074. 0x2191: [694,193,500,17,483], // UPWARDS ARROW
  1075. 0x2192: [511,11,1000,56,944], // RIGHTWARDS ARROW
  1076. 0x2193: [694,194,500,17,483], // DOWNWARDS ARROW
  1077. 0x2194: [511,11,1000,55,944], // LEFT RIGHT ARROW
  1078. 0x2195: [772,272,500,17,483], // UP DOWN ARROW
  1079. 0x2196: [720,195,1000,29,944], // NORTH WEST ARROW
  1080. 0x2197: [720,195,1000,55,970], // NORTH EAST ARROW
  1081. 0x2198: [695,220,1000,55,970], // SOUTH EAST ARROW
  1082. 0x2199: [695,220,1000,29,944], // SOUTH WEST ARROW
  1083. 0x21A6: [511,11,1000,55,944], // RIGHTWARDS ARROW FROM BAR
  1084. 0x21A9: [511,11,1126,55,1070], // LEFTWARDS ARROW WITH HOOK
  1085. 0x21AA: [511,11,1126,55,1070], // RIGHTWARDS ARROW WITH HOOK
  1086. 0x21BC: [511,-230,1000,55,944], // LEFTWARDS HARPOON WITH BARB UPWARDS
  1087. 0x21BD: [270,11,1000,55,944], // LEFTWARDS HARPOON WITH BARB DOWNWARDS
  1088. 0x21C0: [511,-230,1000,56,944], // RIGHTWARDS HARPOON WITH BARB UPWARDS
  1089. 0x21C1: [270,11,1000,56,944], // RIGHTWARDS HARPOON WITH BARB DOWNWARDS
  1090. 0x21CC: [671,11,1000,55,944], // RIGHTWARDS HARPOON OVER LEFTWARDS HARPOON
  1091. 0x21D0: [525,24,1000,56,944], // LEFTWARDS DOUBLE ARROW
  1092. 0x21D1: [694,194,611,31,579], // UPWARDS DOUBLE ARROW
  1093. 0x21D2: [525,24,1000,56,944], // RIGHTWARDS DOUBLE ARROW
  1094. 0x21D3: [694,194,611,31,579], // DOWNWARDS DOUBLE ARROW
  1095. 0x21D4: [526,25,1000,34,966], // LEFT RIGHT DOUBLE ARROW
  1096. 0x21D5: [772,272,611,31,579], // UP DOWN DOUBLE ARROW
  1097. 0x2200: [694,22,556,0,556], // FOR ALL
  1098. 0x2202: [715,22,531,42,566], // PARTIAL DIFFERENTIAL
  1099. 0x2203: [694,0,556,56,500], // THERE EXISTS
  1100. 0x2205: [772,78,500,39,460], // EMPTY SET
  1101. 0x2207: [683,33,833,46,786], // NABLA
  1102. 0x2208: [540,40,667,84,583], // ELEMENT OF
  1103. 0x2209: [716,215,667,84,583], // stix-negated (vert) set membership, variant
  1104. 0x220B: [540,40,667,83,582], // CONTAINS AS MEMBER
  1105. 0x2212: [270,-230,778,84,694], // MINUS SIGN
  1106. 0x2213: [500,166,778,56,722], // MINUS-OR-PLUS SIGN
  1107. 0x2215: [750,250,500,56,445], // DIVISION SLASH
  1108. 0x2216: [750,250,500,56,444], // SET MINUS
  1109. 0x2217: [465,-35,500,64,435], // ASTERISK OPERATOR
  1110. 0x2218: [444,-55,500,55,444], // RING OPERATOR
  1111. 0x2219: [444,-55,500,55,444], // BULLET OPERATOR
  1112. 0x221A: [800,200,833,72,853], // SQUARE ROOT
  1113. 0x221D: [442,11,778,56,722], // PROPORTIONAL TO
  1114. 0x221E: [442,11,1000,55,944], // INFINITY
  1115. 0x2220: [694,0,722,55,666], // ANGLE
  1116. 0x2223: [750,249,278,119,159], // DIVIDES
  1117. 0x2225: [750,250,500,132,367], // PARALLEL TO
  1118. 0x2227: [598,22,667,55,611], // LOGICAL AND
  1119. 0x2228: [598,22,667,55,611], // LOGICAL OR
  1120. 0x2229: [598,22,667,55,611], // stix-intersection, serifs
  1121. 0x222A: [598,22,667,55,611], // stix-union, serifs
  1122. 0x222B: [716,216,417,55,472], // INTEGRAL
  1123. 0x223C: [367,-133,778,55,722], // TILDE OPERATOR
  1124. 0x2240: [583,83,278,55,222], // WREATH PRODUCT
  1125. 0x2243: [464,-36,778,55,722], // ASYMPTOTICALLY EQUAL TO
  1126. 0x2245: [589,-22,1000,55,722], // APPROXIMATELY EQUAL TO
  1127. 0x2248: [483,-55,778,55,722], // ALMOST EQUAL TO
  1128. 0x224D: [484,-16,778,55,722], // EQUIVALENT TO
  1129. 0x2250: [670,-133,778,56,722], // APPROACHES THE LIMIT
  1130. 0x2260: [716,215,778,56,722], // stix-not (vert) equals
  1131. 0x2261: [464,-36,778,56,722], // IDENTICAL TO
  1132. 0x2264: [636,138,778,83,694], // LESS-THAN OR EQUAL TO
  1133. 0x2265: [636,138,778,83,694], // GREATER-THAN OR EQUAL TO
  1134. 0x226A: [568,67,1000,56,944], // MUCH LESS-THAN
  1135. 0x226B: [567,67,1000,55,944], // MUCH GREATER-THAN
  1136. 0x227A: [539,41,778,84,694], // PRECEDES
  1137. 0x227B: [539,41,778,83,694], // SUCCEEDS
  1138. 0x2282: [540,40,778,84,694], // SUBSET OF
  1139. 0x2283: [540,40,778,83,693], // SUPERSET OF
  1140. 0x2286: [636,138,778,84,694], // SUBSET OF OR EQUAL TO
  1141. 0x2287: [636,138,778,83,693], // SUPERSET OF OR EQUAL TO
  1142. 0x228E: [598,22,667,55,611], // MULTISET UNION
  1143. 0x2291: [636,138,778,84,714], // SQUARE IMAGE OF OR EQUAL TO
  1144. 0x2292: [636,138,778,64,694], // SQUARE ORIGINAL OF OR EQUAL TO
  1145. 0x2293: [598,0,667,61,605], // stix-square intersection, serifs
  1146. 0x2294: [598,0,667,61,605], // stix-square union, serifs
  1147. 0x2295: [583,83,778,56,722], // stix-circled plus (with rim)
  1148. 0x2296: [583,83,778,56,722], // CIRCLED MINUS
  1149. 0x2297: [583,83,778,56,722], // stix-circled times (with rim)
  1150. 0x2298: [583,83,778,56,722], // CIRCLED DIVISION SLASH
  1151. 0x2299: [583,83,778,56,722], // CIRCLED DOT OPERATOR
  1152. 0x22A2: [694,0,611,55,555], // RIGHT TACK
  1153. 0x22A3: [694,0,611,55,555], // LEFT TACK
  1154. 0x22A4: [668,0,778,55,723], // DOWN TACK
  1155. 0x22A5: [668,0,778,55,723], // UP TACK
  1156. 0x22A8: [750,249,867,119,811], // TRUE
  1157. 0x22C4: [488,-12,500,12,488], // DIAMOND OPERATOR
  1158. 0x22C5: [310,-190,278,78,199], // DOT OPERATOR
  1159. 0x22C6: [486,-16,500,3,497], // STAR OPERATOR
  1160. 0x22C8: [505,5,900,26,873], // BOWTIE
  1161. 0x22EE: [900,30,278,78,199], // VERTICAL ELLIPSIS
  1162. 0x22EF: [310,-190,1172,78,1093], // MIDLINE HORIZONTAL ELLIPSIS
  1163. 0x22F1: [820,-100,1282,133,1148], // DOWN RIGHT DIAGONAL ELLIPSIS
  1164. 0x2308: [750,250,444,174,422], // LEFT CEILING
  1165. 0x2309: [750,250,444,21,269], // RIGHT CEILING
  1166. 0x230A: [750,250,444,174,422], // LEFT FLOOR
  1167. 0x230B: [750,250,444,21,269], // RIGHT FLOOR
  1168. 0x2322: [388,-122,1000,55,944], // stix-small down curve
  1169. 0x2323: [378,-134,1000,55,944], // stix-small up curve
  1170. 0x23B0: [744,244,412,55,357], // UPPER LEFT OR LOWER RIGHT CURLY BRACKET SECTION
  1171. 0x23B1: [744,244,412,56,357], // UPPER RIGHT OR LOWER LEFT CURLY BRACKET SECTION
  1172. 0x27E8: [750,250,389,110,333], // MATHEMATICAL LEFT ANGLE BRACKET
  1173. 0x27E9: [750,250,389,55,278], // MATHEMATICAL RIGHT ANGLE BRACKET
  1174. 0x27EE: [744,244,412,173,357], // MATHEMATICAL LEFT FLATTENED PARENTHESIS
  1175. 0x27EF: [744,244,412,56,240], // MATHEMATICAL RIGHT FLATTENED PARENTHESIS
  1176. 0x27F5: [511,11,1609,55,1525], // LONG LEFTWARDS ARROW
  1177. 0x27F6: [511,11,1638,84,1553], // LONG RIGHTWARDS ARROW
  1178. 0x27F7: [511,11,1859,55,1803], // LONG LEFT RIGHT ARROW
  1179. 0x27F8: [525,24,1609,56,1553], // LONG LEFTWARDS DOUBLE ARROW
  1180. 0x27F9: [525,24,1638,56,1582], // LONG RIGHTWARDS DOUBLE ARROW
  1181. 0x27FA: [525,24,1858,56,1802], // LONG LEFT RIGHT DOUBLE ARROW
  1182. 0x27FC: [511,11,1638,55,1553], // LONG RIGHTWARDS ARROW FROM BAR
  1183. 0x2A3F: [683,0,750,28,721], // AMALGAMATION OR COPRODUCT
  1184. 0x2AAF: [636,138,778,84,694], // PRECEDES ABOVE SINGLE-LINE EQUALS SIGN
  1185. 0x2AB0: [636,138,778,83,694] // SUCCEEDS ABOVE SINGLE-LINE EQUALS SIGN
  1186. };
  1187. HTMLCSS.FONTDATA.FONTS['MathJax_Math-italic'] = {
  1188. directory: 'Math/Italic',
  1189. family: 'MathJax_Math',
  1190. style: 'italic',
  1191. testString: "MathJax Math \u03A5",
  1192. skew: {
  1193. 0x41: 0.139,
  1194. 0x42: 0.0833,
  1195. 0x43: 0.0833,
  1196. 0x44: 0.0556,
  1197. 0x45: 0.0833,
  1198. 0x46: 0.0833,
  1199. 0x47: 0.0833,
  1200. 0x48: 0.0556,
  1201. 0x49: 0.111,
  1202. 0x4A: 0.167,
  1203. 0x4B: 0.0556,
  1204. 0x4C: 0.0278,
  1205. 0x4D: 0.0833,
  1206. 0x4E: 0.0833,
  1207. 0x4F: 0.0833,
  1208. 0x50: 0.0833,
  1209. 0x51: 0.0833,
  1210. 0x52: 0.0833,
  1211. 0x53: 0.0833,
  1212. 0x54: 0.0833,
  1213. 0x55: 0.0278,
  1214. 0x58: 0.0833,
  1215. 0x5A: 0.0833,
  1216. 0x63: 0.0556,
  1217. 0x64: 0.167,
  1218. 0x65: 0.0556,
  1219. 0x66: 0.167,
  1220. 0x67: 0.0278,
  1221. 0x68: -0.0278,
  1222. 0x6C: 0.0833,
  1223. 0x6F: 0.0556,
  1224. 0x70: 0.0833,
  1225. 0x71: 0.0833,
  1226. 0x72: 0.0556,
  1227. 0x73: 0.0556,
  1228. 0x74: 0.0833,
  1229. 0x75: 0.0278,
  1230. 0x76: 0.0278,
  1231. 0x77: 0.0833,
  1232. 0x78: 0.0278,
  1233. 0x79: 0.0556,
  1234. 0x7A: 0.0556,
  1235. 0x393: 0.0833,
  1236. 0x394: 0.167,
  1237. 0x398: 0.0833,
  1238. 0x39B: 0.167,
  1239. 0x39E: 0.0833,
  1240. 0x3A0: 0.0556,
  1241. 0x3A3: 0.0833,
  1242. 0x3A5: 0.0556,
  1243. 0x3A6: 0.0833,
  1244. 0x3A8: 0.0556,
  1245. 0x3A9: 0.0833,
  1246. 0x3B1: 0.0278,
  1247. 0x3B2: 0.0833,
  1248. 0x3B4: 0.0556,
  1249. 0x3B5: 0.0833,
  1250. 0x3B6: 0.0833,
  1251. 0x3B7: 0.0556,
  1252. 0x3B8: 0.0833,
  1253. 0x3B9: 0.0556,
  1254. 0x3BC: 0.0278,
  1255. 0x3BD: 0.0278,
  1256. 0x3BE: 0.111,
  1257. 0x3BF: 0.0556,
  1258. 0x3C1: 0.0833,
  1259. 0x3C2: 0.0833,
  1260. 0x3C4: 0.0278,
  1261. 0x3C5: 0.0278,
  1262. 0x3C6: 0.0833,
  1263. 0x3C7: 0.0556,
  1264. 0x3C8: 0.111,
  1265. 0x3D1: 0.0833,
  1266. 0x3D5: 0.0833,
  1267. 0x3F1: 0.0833,
  1268. 0x3F5: 0.0556
  1269. },
  1270. 0x20: [0,0,250,0,0], // SPACE
  1271. 0x2F: [716,215,778,139,638], // SOLIDUS
  1272. 0x41: [716,0,750,35,726], // LATIN CAPITAL LETTER A
  1273. 0x42: [683,0,759,35,756], // LATIN CAPITAL LETTER B
  1274. 0x43: [705,22,715,50,760], // LATIN CAPITAL LETTER C
  1275. 0x44: [683,0,828,33,803], // LATIN CAPITAL LETTER D
  1276. 0x45: [680,0,738,31,764], // LATIN CAPITAL LETTER E
  1277. 0x46: [680,0,643,31,749], // LATIN CAPITAL LETTER F
  1278. 0x47: [705,22,786,50,760], // LATIN CAPITAL LETTER G
  1279. 0x48: [683,0,831,31,888], // LATIN CAPITAL LETTER H
  1280. 0x49: [683,0,440,26,504], // LATIN CAPITAL LETTER I
  1281. 0x4A: [683,22,555,57,633], // LATIN CAPITAL LETTER J
  1282. 0x4B: [683,0,849,31,889], // LATIN CAPITAL LETTER K
  1283. 0x4C: [683,0,681,32,647], // LATIN CAPITAL LETTER L
  1284. 0x4D: [683,0,970,35,1051], // LATIN CAPITAL LETTER M
  1285. 0x4E: [683,0,803,31,888], // LATIN CAPITAL LETTER N
  1286. 0x4F: [704,22,763,50,740], // LATIN CAPITAL LETTER O
  1287. 0x50: [683,0,642,33,751], // LATIN CAPITAL LETTER P
  1288. 0x51: [704,194,791,50,740], // LATIN CAPITAL LETTER Q
  1289. 0x52: [683,21,759,33,755], // LATIN CAPITAL LETTER R
  1290. 0x53: [705,22,613,52,645], // LATIN CAPITAL LETTER S
  1291. 0x54: [677,0,584,21,704], // LATIN CAPITAL LETTER T
  1292. 0x55: [683,22,683,60,767], // LATIN CAPITAL LETTER U
  1293. 0x56: [683,22,583,52,769], // LATIN CAPITAL LETTER V
  1294. 0x57: [683,22,944,51,1048], // LATIN CAPITAL LETTER W
  1295. 0x58: [683,0,828,26,852], // LATIN CAPITAL LETTER X
  1296. 0x59: [683,-1,581,30,763], // LATIN CAPITAL LETTER Y
  1297. 0x5A: [683,0,683,58,723], // LATIN CAPITAL LETTER Z
  1298. 0x61: [441,10,529,33,506], // LATIN SMALL LETTER A
  1299. 0x62: [694,11,429,40,422], // LATIN SMALL LETTER B
  1300. 0x63: [442,11,433,34,429], // LATIN SMALL LETTER C
  1301. 0x64: [694,10,520,33,523], // LATIN SMALL LETTER D
  1302. 0x65: [442,11,466,39,429], // LATIN SMALL LETTER E
  1303. 0x66: [705,205,490,55,550], // LATIN SMALL LETTER F
  1304. 0x67: [442,205,477,10,480], // LATIN SMALL LETTER G
  1305. 0x68: [694,11,576,48,555], // LATIN SMALL LETTER H
  1306. 0x69: [661,11,345,21,302], // LATIN SMALL LETTER I
  1307. 0x6A: [661,204,412,-12,403], // LATIN SMALL LETTER J
  1308. 0x6B: [694,11,521,48,503], // LATIN SMALL LETTER K
  1309. 0x6C: [694,11,298,38,266], // LATIN SMALL LETTER L
  1310. 0x6D: [442,11,878,21,857], // LATIN SMALL LETTER M
  1311. 0x6E: [442,11,600,21,580], // LATIN SMALL LETTER N
  1312. 0x6F: [441,11,485,34,476], // LATIN SMALL LETTER O
  1313. 0x70: [442,194,503,-39,497], // LATIN SMALL LETTER P
  1314. 0x71: [442,194,446,33,460], // LATIN SMALL LETTER Q
  1315. 0x72: [442,11,451,21,430], // LATIN SMALL LETTER R
  1316. 0x73: [442,10,469,53,419], // LATIN SMALL LETTER S
  1317. 0x74: [626,11,361,19,330], // LATIN SMALL LETTER T
  1318. 0x75: [442,11,572,21,551], // LATIN SMALL LETTER U
  1319. 0x76: [443,11,485,21,467], // LATIN SMALL LETTER V
  1320. 0x77: [443,11,716,21,690], // LATIN SMALL LETTER W
  1321. 0x78: [442,11,572,35,522], // LATIN SMALL LETTER X
  1322. 0x79: [442,205,490,21,496], // LATIN SMALL LETTER Y
  1323. 0x7A: [442,11,465,35,468], // LATIN SMALL LETTER Z
  1324. 0xA0: [0,0,250,0,0], // NO-BREAK SPACE
  1325. 0x393: [680,-1,615,31,721], // GREEK CAPITAL LETTER GAMMA
  1326. 0x394: [716,0,833,48,788], // GREEK CAPITAL LETTER DELTA
  1327. 0x398: [704,22,763,50,740], // GREEK CAPITAL LETTER THETA
  1328. 0x39B: [716,0,694,35,670], // GREEK CAPITAL LETTER LAMDA
  1329. 0x39E: [677,0,742,53,777], // GREEK CAPITAL LETTER XI
  1330. 0x3A0: [680,0,831,31,887], // GREEK CAPITAL LETTER PI
  1331. 0x3A3: [683,0,780,58,806], // GREEK CAPITAL LETTER SIGMA
  1332. 0x3A5: [705,0,583,28,700], // GREEK CAPITAL LETTER UPSILON
  1333. 0x3A6: [683,0,667,24,642], // GREEK CAPITAL LETTER PHI
  1334. 0x3A8: [683,0,612,21,692], // GREEK CAPITAL LETTER PSI
  1335. 0x3A9: [704,0,772,80,786], // GREEK CAPITAL LETTER OMEGA
  1336. 0x3B1: [442,11,640,34,603], // GREEK SMALL LETTER ALPHA
  1337. 0x3B2: [705,194,566,23,573], // GREEK SMALL LETTER BETA
  1338. 0x3B3: [441,216,518,11,543], // GREEK SMALL LETTER GAMMA
  1339. 0x3B4: [717,10,444,36,451], // GREEK SMALL LETTER DELTA
  1340. 0x3B5: [452,22,466,27,428], // GREEK SMALL LETTER EPSILON
  1341. 0x3B6: [704,204,438,44,471], // GREEK SMALL LETTER ZETA
  1342. 0x3B7: [442,216,497,21,503], // GREEK SMALL LETTER ETA
  1343. 0x3B8: [705,10,469,35,462], // GREEK SMALL LETTER THETA
  1344. 0x3B9: [442,10,354,48,332], // GREEK SMALL LETTER IOTA
  1345. 0x3BA: [442,11,576,49,554], // GREEK SMALL LETTER KAPPA
  1346. 0x3BB: [694,12,583,47,556], // GREEK SMALL LETTER LAMDA
  1347. 0x3BC: [442,216,603,23,580], // GREEK SMALL LETTER MU
  1348. 0x3BD: [442,2,494,45,530], // GREEK SMALL LETTER NU
  1349. 0x3BE: [704,205,438,21,443], // GREEK SMALL LETTER XI
  1350. 0x3BF: [441,11,485,34,476], // GREEK SMALL LETTER OMICRON
  1351. 0x3C0: [431,11,570,19,573], // GREEK SMALL LETTER PI
  1352. 0x3C1: [442,216,517,23,510], // GREEK SMALL LETTER RHO
  1353. 0x3C2: [442,107,363,31,405], // GREEK SMALL LETTER FINAL SIGMA
  1354. 0x3C3: [431,11,571,31,572], // GREEK SMALL LETTER SIGMA
  1355. 0x3C4: [431,13,437,18,517], // GREEK SMALL LETTER TAU
  1356. 0x3C5: [443,10,540,21,523], // GREEK SMALL LETTER UPSILON
  1357. 0x3C6: [442,218,654,50,618], // GREEK SMALL LETTER PHI
  1358. 0x3C7: [442,204,626,25,600], // GREEK SMALL LETTER CHI
  1359. 0x3C8: [694,205,651,21,634], // GREEK SMALL LETTER PSI
  1360. 0x3C9: [443,11,622,15,604], // GREEK SMALL LETTER OMEGA
  1361. 0x3D1: [705,11,591,21,563], // GREEK THETA SYMBOL
  1362. 0x3D5: [694,205,596,43,579], // GREEK PHI SYMBOL
  1363. 0x3D6: [431,10,828,19,823], // GREEK PI SYMBOL
  1364. 0x3F1: [442,194,517,67,510], // GREEK RHO SYMBOL
  1365. 0x3F5: [431,11,406,40,382] // GREEK LUNATE EPSILON SYMBOL
  1366. };
  1367. HTMLCSS.FONTDATA.FONTS['MathJax_Size1'] = {
  1368. directory: 'Size1/Regular',
  1369. family: 'MathJax_Size1',
  1370. testString: "() [] {}",
  1371. 0x20: [0,0,250,0,0], // SPACE
  1372. 0x28: [850,349,458,152,422], // LEFT PARENTHESIS
  1373. 0x29: [850,349,458,35,305], // RIGHT PARENTHESIS
  1374. 0x2F: [850,349,578,55,522], // SOLIDUS
  1375. 0x5B: [850,349,417,202,394], // LEFT SQUARE BRACKET
  1376. 0x5C: [850,349,578,54,522], // REVERSE SOLIDUS
  1377. 0x5D: [850,349,417,22,214], // RIGHT SQUARE BRACKET
  1378. 0x7B: [850,349,583,105,477], // LEFT CURLY BRACKET
  1379. 0x7D: [850,349,583,105,477], // RIGHT CURLY BRACKET
  1380. 0xA0: [0,0,250,0,0], // NO-BREAK SPACE
  1381. 0x2C6: [744,-551,556,-8,564], // MODIFIER LETTER CIRCUMFLEX ACCENT
  1382. 0x2DC: [722,-597,556,1,554], // SMALL TILDE
  1383. 0x302: [744,-551,0,-564,8], // COMBINING CIRCUMFLEX ACCENT
  1384. 0x303: [722,-597,0,-555,-2], // COMBINING TILDE
  1385. 0x2016: [602,0,778,257,521], // DOUBLE VERTICAL LINE
  1386. 0x2191: [600,0,667,112,555], // UPWARDS ARROW
  1387. 0x2193: [600,0,667,112,555], // DOWNWARDS ARROW
  1388. 0x21D1: [599,0,778,57,721], // UPWARDS DOUBLE ARROW
  1389. 0x21D3: [600,-1,778,57,721], // DOWNWARDS DOUBLE ARROW
  1390. 0x220F: [750,250,944,55,888], // N-ARY PRODUCT
  1391. 0x2210: [750,250,944,55,888], // N-ARY COPRODUCT
  1392. 0x2211: [750,250,1056,56,999], // N-ARY SUMMATION
  1393. 0x221A: [850,350,1000,111,1020], // SQUARE ROOT
  1394. 0x2223: [627,15,333,145,188], // DIVIDES
  1395. 0x2225: [627,15,556,145,410], // PARALLEL TO
  1396. 0x222B: [805,306,472,55,610], // INTEGRAL
  1397. 0x222C: [805,306,819,55,957], // DOUBLE INTEGRAL
  1398. 0x222D: [805,306,1166,55,1304], // TRIPLE INTEGRAL
  1399. 0x222E: [805,306,472,55,610], // CONTOUR INTEGRAL
  1400. 0x22C0: [750,249,833,55,777], // N-ARY LOGICAL AND
  1401. 0x22C1: [750,249,833,55,777], // N-ARY LOGICAL OR
  1402. 0x22C2: [750,249,833,55,777], // N-ARY INTERSECTION
  1403. 0x22C3: [750,249,833,55,777], // N-ARY UNION
  1404. 0x2308: [850,349,472,202,449], // LEFT CEILING
  1405. 0x2309: [850,349,472,22,269], // RIGHT CEILING
  1406. 0x230A: [850,349,472,202,449], // LEFT FLOOR
  1407. 0x230B: [850,349,472,22,269], // RIGHT FLOOR
  1408. 0x23D0: [602,0,667,312,355], // VERTICAL LINE EXTENSION (used to extend arrows)
  1409. 0x27E8: [850,350,472,97,394], // MATHEMATICAL LEFT ANGLE BRACKET
  1410. 0x27E9: [850,350,472,77,374], // MATHEMATICAL RIGHT ANGLE BRACKET
  1411. 0x2A00: [750,250,1111,56,1054], // N-ARY CIRCLED DOT OPERATOR
  1412. 0x2A01: [750,250,1111,56,1054], // N-ARY CIRCLED PLUS OPERATOR
  1413. 0x2A02: [750,250,1111,56,1054], // N-ARY CIRCLED TIMES OPERATOR
  1414. 0x2A04: [750,249,833,55,777], // N-ARY UNION OPERATOR WITH PLUS
  1415. 0x2A06: [750,249,833,55,777] // N-ARY SQUARE UNION OPERATOR
  1416. };
  1417. HTMLCSS.FONTDATA.FONTS['MathJax_Size2'] = {
  1418. directory: 'Size2/Regular',
  1419. family: 'MathJax_Size2',
  1420. testString: "() [] {}",
  1421. 0x20: [0,0,250,0,0], // SPACE
  1422. 0x28: [1150,649,597,180,561], // LEFT PARENTHESIS
  1423. 0x29: [1150,649,597,35,416], // RIGHT PARENTHESIS
  1424. 0x2F: [1150,649,811,56,754], // SOLIDUS
  1425. 0x5B: [1150,649,472,224,455], // LEFT SQUARE BRACKET
  1426. 0x5C: [1150,649,811,54,754], // REVERSE SOLIDUS
  1427. 0x5D: [1150,649,472,16,247], // RIGHT SQUARE BRACKET
  1428. 0x7B: [1150,649,667,119,547], // LEFT CURLY BRACKET
  1429. 0x7D: [1150,649,667,119,547], // RIGHT CURLY BRACKET
  1430. 0xA0: [0,0,250,0,0], // NO-BREAK SPACE
  1431. 0x2C6: [772,-565,1000,-5,1004], // MODIFIER LETTER CIRCUMFLEX ACCENT
  1432. 0x2DC: [750,-611,1000,0,999], // SMALL TILDE
  1433. 0x302: [772,-565,0,-1005,4], // COMBINING CIRCUMFLEX ACCENT
  1434. 0x303: [750,-611,0,-1000,-1], // COMBINING TILDE
  1435. 0x220F: [950,450,1278,56,1221], // N-ARY PRODUCT
  1436. 0x2210: [950,450,1278,56,1221], // N-ARY COPRODUCT
  1437. 0x2211: [950,450,1444,55,1388], // N-ARY SUMMATION
  1438. 0x221A: [1150,650,1000,111,1020], // SQUARE ROOT
  1439. 0x222B: [1360,862,556,55,944], // INTEGRAL
  1440. 0x222C: [1360,862,1084,55,1472], // DOUBLE INTEGRAL
  1441. 0x222D: [1360,862,1592,55,1980], // TRIPLE INTEGRAL
  1442. 0x222E: [1360,862,556,55,944], // CONTOUR INTEGRAL
  1443. 0x22C0: [950,450,1111,55,1055], // N-ARY LOGICAL AND
  1444. 0x22C1: [950,450,1111,55,1055], // N-ARY LOGICAL OR
  1445. 0x22C2: [949,450,1111,55,1055], // N-ARY INTERSECTION
  1446. 0x22C3: [950,449,1111,55,1055], // N-ARY UNION
  1447. 0x2308: [1150,649,528,224,511], // LEFT CEILING
  1448. 0x2309: [1150,649,528,16,303], // RIGHT CEILING
  1449. 0x230A: [1150,649,528,224,511], // LEFT FLOOR
  1450. 0x230B: [1150,649,528,16,303], // RIGHT FLOOR
  1451. 0x27E8: [1150,649,611,112,524], // MATHEMATICAL LEFT ANGLE BRACKET
  1452. 0x27E9: [1150,649,611,85,498], // MATHEMATICAL RIGHT ANGLE BRACKET
  1453. 0x2A00: [949,449,1511,56,1454], // N-ARY CIRCLED DOT OPERATOR
  1454. 0x2A01: [949,449,1511,56,1454], // N-ARY CIRCLED PLUS OPERATOR
  1455. 0x2A02: [949,449,1511,56,1454], // N-ARY CIRCLED TIMES OPERATOR
  1456. 0x2A04: [950,449,1111,55,1055], // N-ARY UNION OPERATOR WITH PLUS
  1457. 0x2A06: [950,450,1111,55,1055] // N-ARY SQUARE UNION OPERATOR
  1458. };
  1459. HTMLCSS.FONTDATA.FONTS['MathJax_Size3'] = {
  1460. directory: 'Size3/Regular',
  1461. family: 'MathJax_Size3',
  1462. testString: "() [] {}",
  1463. 0x20: [0,0,250,0,0], // SPACE
  1464. 0x28: [1450,949,736,209,701], // LEFT PARENTHESIS
  1465. 0x29: [1450,949,736,34,526], // RIGHT PARENTHESIS
  1466. 0x2F: [1450,949,1044,55,989], // SOLIDUS
  1467. 0x5B: [1450,949,528,247,516], // LEFT SQUARE BRACKET
  1468. 0x5C: [1450,949,1044,56,988], // REVERSE SOLIDUS
  1469. 0x5D: [1450,949,528,11,280], // RIGHT SQUARE BRACKET
  1470. 0x7B: [1450,949,750,130,618], // LEFT CURLY BRACKET
  1471. 0x7D: [1450,949,750,131,618], // RIGHT CURLY BRACKET
  1472. 0xA0: [0,0,250,0,0], // NO-BREAK SPACE
  1473. 0x2C6: [772,-564,1444,-4,1447], // MODIFIER LETTER CIRCUMFLEX ACCENT
  1474. 0x2DC: [749,-610,1444,1,1442], // SMALL TILDE
  1475. 0x302: [772,-564,0,-1448,3], // COMBINING CIRCUMFLEX ACCENT
  1476. 0x303: [749,-610,0,-1443,-2], // COMBINING TILDE
  1477. 0x221A: [1450,950,1000,111,1020], // SQUARE ROOT
  1478. 0x2308: [1450,949,583,246,571], // LEFT CEILING
  1479. 0x2309: [1450,949,583,11,336], // RIGHT CEILING
  1480. 0x230A: [1450,949,583,246,571], // LEFT FLOOR
  1481. 0x230B: [1450,949,583,11,336], // RIGHT FLOOR
  1482. 0x27E8: [1450,950,750,126,654], // MATHEMATICAL LEFT ANGLE BRACKET
  1483. 0x27E9: [1450,949,750,94,623] // MATHEMATICAL RIGHT ANGLE BRACKET
  1484. };
  1485. HTMLCSS.FONTDATA.FONTS['MathJax_Size4'] = {
  1486. directory: 'Size4/Regular',
  1487. family: 'MathJax_Size4',
  1488. testString: "() [] {}",
  1489. 0x20: [0,0,250,0,0], // SPACE
  1490. 0x28: [1750,1249,792,237,758], // LEFT PARENTHESIS
  1491. 0x29: [1750,1249,792,33,554], // RIGHT PARENTHESIS
  1492. 0x2F: [1750,1249,1278,56,1221], // SOLIDUS
  1493. 0x5B: [1750,1249,583,269,577], // LEFT SQUARE BRACKET
  1494. 0x5C: [1750,1249,1278,56,1221], // REVERSE SOLIDUS
  1495. 0x5D: [1750,1249,583,5,313], // RIGHT SQUARE BRACKET
  1496. 0x7B: [1750,1249,806,144,661], // LEFT CURLY BRACKET
  1497. 0x7D: [1750,1249,806,144,661], // RIGHT CURLY BRACKET
  1498. 0xA0: [0,0,250,0,0], // NO-BREAK SPACE
  1499. 0x2C6: [845,-561,1889,-14,1902], // MODIFIER LETTER CIRCUMFLEX ACCENT
  1500. 0x2DC: [823,-583,1889,1,1885], // SMALL TILDE
  1501. 0x302: [845,-561,0,-1903,13], // COMBINING CIRCUMFLEX ACCENT
  1502. 0x303: [823,-583,0,-1888,-4], // COMBINING TILDE
  1503. 0x221A: [1750,1250,1000,111,1020], // SQUARE ROOT
  1504. 0x2308: [1750,1249,639,269,633], // LEFT CEILING
  1505. 0x2309: [1750,1249,639,5,369], // RIGHT CEILING
  1506. 0x230A: [1750,1249,639,269,633], // LEFT FLOOR
  1507. 0x230B: [1750,1249,639,5,369], // RIGHT FLOOR
  1508. 0x239B: [1154,655,875,291,843], // LEFT PARENTHESIS UPPER HOOK
  1509. 0x239C: [610,10,875,291,417], // LEFT PARENTHESIS EXTENSION
  1510. 0x239D: [1165,644,875,291,843], // LEFT PARENTHESIS LOWER HOOK
  1511. 0x239E: [1154,655,875,31,583], // RIGHT PARENTHESIS UPPER HOOK
  1512. 0x239F: [610,10,875,457,583], // RIGHT PARENTHESIS EXTENSION
  1513. 0x23A0: [1165,644,875,31,583], // RIGHT PARENTHESIS LOWER HOOK
  1514. 0x23A1: [1154,645,667,319,666], // LEFT SQUARE BRACKET UPPER CORNER
  1515. 0x23A2: [602,0,667,319,403], // LEFT SQUARE BRACKET EXTENSION
  1516. 0x23A3: [1155,644,667,319,666], // LEFT SQUARE BRACKET LOWER CORNER
  1517. 0x23A4: [1154,645,667,0,347], // RIGHT SQUARE BRACKET UPPER CORNER
  1518. 0x23A5: [602,0,667,263,347], // RIGHT SQUARE BRACKET EXTENSION
  1519. 0x23A6: [1155,644,667,0,347], // RIGHT SQUARE BRACKET LOWER CORNER
  1520. 0x23A7: [899,10,889,384,718], // LEFT CURLY BRACKET UPPER HOOK
  1521. 0x23A8: [1160,660,889,170,504], // LEFT CURLY BRACKET MIDDLE PIECE
  1522. 0x23A9: [10,899,889,384,718], // LEFT CURLY BRACKET LOWER HOOK
  1523. 0x23AA: [310,10,889,384,504], // CURLY BRACKET EXTENSION
  1524. 0x23AB: [899,10,889,170,504], // RIGHT CURLY BRACKET UPPER HOOK
  1525. 0x23AC: [1160,660,889,384,718], // RIGHT CURLY BRACKET MIDDLE PIECE
  1526. 0x23AD: [10,899,889,170,504], // RIGHT CURLY BRACKET LOWER HOOK
  1527. 0x23B7: [935,885,1056,111,742], // RADICAL SYMBOL BOTTOM
  1528. 0x27E8: [1750,1248,806,140,703], // MATHEMATICAL LEFT ANGLE BRACKET
  1529. 0x27E9: [1750,1248,806,103,665], // MATHEMATICAL RIGHT ANGLE BRACKET
  1530. 0xE000: [625,14,1056,702,742], // stix-radical symbol vertical extender
  1531. 0xE001: [605,14,1056,702,1076], // stix-radical symbol top corner piece
  1532. 0xE150: [120,213,450,-24,460], // stix-horizontal brace, down left piece
  1533. 0xE151: [120,213,450,-10,474], // stix-horizontal brace, down right piece
  1534. 0xE152: [333,0,450,-24,460], // stix-horizontal brace, upper left piece
  1535. 0xE153: [333,0,450,-10,474], // stix-horizontal brace, upper right piece
  1536. 0xE154: [120,0,400,-10,410] // stix-oblique open face capital letter A
  1537. };
  1538. HTMLCSS.FONTDATA.FONTS[MAIN][0x2212][0] = HTMLCSS.FONTDATA.FONTS[MAIN][0x002B][0]; // minus is sized as plus
  1539. HTMLCSS.FONTDATA.FONTS[MAIN][0x2212][1] = HTMLCSS.FONTDATA.FONTS[MAIN][0x002B][1]; // minus is sized as plus
  1540. HTMLCSS.FONTDATA.FONTS[MAIN][0x22EE][0] += 400; // adjust height for \vdots
  1541. HTMLCSS.FONTDATA.FONTS[MAIN][0x22F1][0] += 700; // adjust height for \ddots
  1542. HTMLCSS.FONTDATA.FONTS[SIZE4][0xE154][0] += 200; // adjust height for brace extender
  1543. HTMLCSS.FONTDATA.FONTS[SIZE4][0xE154][1] += 200; // adjust depth for brace extender
  1544. HTMLCSS.FONTDATA.FONTS[MAIN][0x2245][2] -= 222; // fix error in character's right bearing
  1545. HTMLCSS.FONTDATA.FONTS[MAIN][0x2245][5] = {rfix:-222}; // fix error in character's right bearing
  1546. MathJax.Hub.Register.LoadHook(HTMLCSS.fontDir+"/Main/Bold/MathOperators.js",function () {
  1547. HTMLCSS.FONTDATA.FONTS[BOLD][0x2245][2] -= 106; // fix error in character's right bearing
  1548. HTMLCSS.FONTDATA.FONTS[BOLD][0x2245][5] = {rfix:-106}; // fix error in character's right bearing
  1549. });
  1550. MathJax.Hub.Register.LoadHook(HTMLCSS.fontDir+"/Typewriter/Regular/BasicLatin.js",function () {
  1551. HTMLCSS.FONTDATA.FONTS['MathJax_Typewriter'][0x20][2] += 275; // fix error in character width
  1552. HTMLCSS.FONTDATA.FONTS['MathJax_Typewriter'][0x20][5] = {rfix:275}; // fix error in character width
  1553. });
  1554. //
  1555. // Add some spacing characters (more will come later)
  1556. //
  1557. MathJax.Hub.Insert(HTMLCSS.FONTDATA.FONTS[MAIN],{
  1558. 0xEEE0: [0,0,-575,0,0,{space:1}],
  1559. 0xEEE1: [0,0,-300,0,0,{space:1}],
  1560. 0xEEE8: [0,0,25,0,0,{space:1}]
  1561. });
  1562. if (!HTMLCSS.imgFonts) {
  1563. MathJax.Hub.Browser.Select({
  1564. MSIE: function (browser) {
  1565. if (HTMLCSS.config.availableFonts && HTMLCSS.config.availableFonts.length) {
  1566. HTMLCSS.FONTDATA.REMAP[0x2C9] = 0xAF; // macron
  1567. HTMLCSS.FONTDATA.REMAP[0x2CA] = 0xB4; // acute
  1568. HTMLCSS.FONTDATA.REMAP[0x2CB] = 0x60; // grave
  1569. HTMLCSS.FONTDATA.REMAP[0x2DA] = 0xB0; // ring above
  1570. var testString =
  1571. String.fromCharCode(0x393)+" "+String.fromCharCode(0x3A5)+" "+String.fromCharCode(0x39B);
  1572. HTMLCSS.FONTDATA.RANGES.push({name: "IEgreek", low: 0x03B1, high: 0x03C9, offset: "IEG", add: 32});
  1573. HTMLCSS.FONTDATA.RANGES.push({name: "IEGreek", low: 0x0391, high: 0x03F6, offset: "IEG"});
  1574. if (HTMLCSS.Font.testFont({family:"MathJax_Greek", testString: testString})) {
  1575. HTMLCSS.Augment({
  1576. FONTDATA: {
  1577. VARIANT: {
  1578. normal: {offsetIEG: 0x391, variantIEG: "-Greek"},
  1579. "fraktur": {offsetIEG: 0x391, variantIEG: "-Greek"},
  1580. "script": {offsetIEG: 0x391, variantIEG: "-Greek"},
  1581. "-tex-caligraphic": {offsetIEG: 0x391, variantIEG: "-Greek"},
  1582. "-tex-oldstyle": {offsetIEG: 0x391, variantIEG: "-Greek"},
  1583. "-Greek": {fonts:["MathJax_Greek"]}
  1584. }
  1585. }
  1586. });
  1587. HTMLCSS.FONTDATA.FONTS['MathJax_Greek'] = {
  1588. directory: 'Greek/Regular',
  1589. family: 'MathJax_Greek',
  1590. testString: "\u0393 \u03A5 \u039B",
  1591. 0x20: [0,0,250,0,0], // SPACE
  1592. 0xA0: [0,0,250,0,0], // NO-BREAK SPACE
  1593. 0x393: [680,0,625,25,582], // GREEK CAPITAL LETTER GAMMA
  1594. 0x394: [716,0,833,46,786], // GREEK CAPITAL LETTER DELTA
  1595. 0x398: [705,22,778,56,722], // GREEK CAPITAL LETTER THETA
  1596. 0x39B: [716,0,694,32,661], // GREEK CAPITAL LETTER LAMDA
  1597. 0x39E: [677,0,667,42,624], // GREEK CAPITAL LETTER XI
  1598. 0x3A0: [680,0,750,25,724], // GREEK CAPITAL LETTER PI
  1599. 0x3A3: [683,0,722,55,666], // GREEK CAPITAL LETTER SIGMA
  1600. 0x3A5: [705,0,778,55,722], // GREEK CAPITAL LETTER UPSILON
  1601. 0x3A6: [683,0,722,56,665], // GREEK CAPITAL LETTER PHI
  1602. 0x3A8: [683,0,778,55,722], // GREEK CAPITAL LETTER PSI
  1603. 0x3A9: [704,0,722,44,677] // GREEK CAPITAL LETTER OMEGA
  1604. };
  1605. }
  1606. if (HTMLCSS.Font.testFont({family:"MathJax_Greek", weight:"bold", testString: testString})) {
  1607. HTMLCSS.Augment({
  1608. FONTDATA: {
  1609. VARIANT: {
  1610. bold: {offsetIEG: 0x391, variantIEG: "-Greek-Bold"},
  1611. "bold-fraktur": {offsetIEG: 0x391, variantIEG: "-Greek-Bold"},
  1612. "bold-script": {offsetIEG: 0x391, variantIEG: "-Greek-Bold"},
  1613. "-Greek-Bold": {fonts:["MathJax_Greek-bold"]}
  1614. }
  1615. }
  1616. });
  1617. HTMLCSS.FONTDATA.FONTS['MathJax_Greek-bold'] = {
  1618. directory: 'Greek/Bold',
  1619. family: 'MathJax_Greek',
  1620. weight: 'bold',
  1621. testString: "\u0393 \u03A5 \u039B",
  1622. 0x20: [0,0,250,0,0], // SPACE
  1623. 0xA0: [0,0,250,0,0], // NO-BREAK SPACE
  1624. 0x393: [680,0,692,39,643], // GREEK CAPITAL LETTER GAMMA
  1625. 0x394: [698,0,958,56,901], // GREEK CAPITAL LETTER DELTA
  1626. 0x398: [696,10,894,64,829], // GREEK CAPITAL LETTER THETA
  1627. 0x39B: [698,0,806,40,765], // GREEK CAPITAL LETTER LAMDA
  1628. 0x39E: [675,0,767,48,718], // GREEK CAPITAL LETTER XI
  1629. 0x3A0: [680,0,900,39,860], // GREEK CAPITAL LETTER PI
  1630. 0x3A3: [686,0,831,64,766], // GREEK CAPITAL LETTER SIGMA
  1631. 0x3A5: [697,0,894,64,829], // GREEK CAPITAL LETTER UPSILON
  1632. 0x3A6: [686,0,831,64,766], // GREEK CAPITAL LETTER PHI
  1633. 0x3A8: [686,0,894,64,829], // GREEK CAPITAL LETTER PSI
  1634. 0x3A9: [696,1,831,51,779] // GREEK CAPITAL LETTER OMEGA
  1635. };
  1636. }
  1637. if (HTMLCSS.Font.testFont({family:"MathJax_Greek", style:"italic", testString: testString})) {
  1638. HTMLCSS.Augment({
  1639. FONTDATA: {
  1640. VARIANT: {
  1641. italic: {offsetIEG: 0x391, variantIEG: "-Greek-Italic"},
  1642. "-Greek-Italic": {fonts:["MathJax_Greek-italic"]}
  1643. }
  1644. }
  1645. });
  1646. HTMLCSS.FONTDATA.FONTS['MathJax_Greek-italic'] = {
  1647. directory: 'Greek/Italic',
  1648. family: 'MathJax_Greek',
  1649. style: 'italic',
  1650. testString: "\u0393 \u03A5 \u039B",
  1651. skew: {
  1652. 0x393: 0.0833,
  1653. 0x394: 0.167,
  1654. 0x398: 0.0833,
  1655. 0x39B: 0.167,
  1656. 0x39E: 0.0833,
  1657. 0x3A0: 0.0556,
  1658. 0x3A3: 0.0833,
  1659. 0x3A5: 0.0556,
  1660. 0x3A6: 0.0833,
  1661. 0x3A8: 0.0556,
  1662. 0x3A9: 0.0833,
  1663. 0x3B1: 0.0278,
  1664. 0x3B2: 0.0833,
  1665. 0x3B4: 0.0556,
  1666. 0x3B5: 0.0833,
  1667. 0x3B6: 0.0833,
  1668. 0x3B7: 0.0556,
  1669. 0x3B8: 0.0833,
  1670. 0x3B9: 0.0556,
  1671. 0x3BC: 0.0278,
  1672. 0x3BD: 0.0278,
  1673. 0x3BE: 0.111,
  1674. 0x3BF: 0.0556,
  1675. 0x3C1: 0.0833,
  1676. 0x3C2: 0.0833,
  1677. 0x3C4: 0.0278,
  1678. 0x3C5: 0.0278,
  1679. 0x3C6: 0.0833,
  1680. 0x3C7: 0.0556,
  1681. 0x3C8: 0.111,
  1682. 0x3D1: 0.0833,
  1683. 0x3D5: 0.0833,
  1684. 0x3F1: 0.0833,
  1685. 0x3F5: 0.0556
  1686. },
  1687. 0x20: [0,0,250,0,0], // SPACE
  1688. 0xA0: [0,0,250,0,0], // NO-BREAK SPACE
  1689. 0x393: [680,-1,615,31,721], // GREEK CAPITAL LETTER GAMMA
  1690. 0x394: [716,0,833,48,788], // GREEK CAPITAL LETTER DELTA
  1691. 0x398: [704,22,763,50,740], // GREEK CAPITAL LETTER THETA
  1692. 0x39B: [716,0,694,35,670], // GREEK CAPITAL LETTER LAMDA
  1693. 0x39E: [678,0,742,53,777], // GREEK CAPITAL LETTER XI
  1694. 0x3A0: [681,0,831,31,887], // GREEK CAPITAL LETTER PI
  1695. 0x3A3: [683,0,780,58,806], // GREEK CAPITAL LETTER SIGMA
  1696. 0x3A5: [705,0,583,28,700], // GREEK CAPITAL LETTER UPSILON
  1697. 0x3A6: [683,0,667,24,642], // GREEK CAPITAL LETTER PHI
  1698. 0x3A8: [683,0,612,21,692], // GREEK CAPITAL LETTER PSI
  1699. 0x3A9: [704,0,772,80,786], // GREEK CAPITAL LETTER OMEGA
  1700. 0x3B1: [442,11,640,34,603], // GREEK SMALL LETTER ALPHA
  1701. 0x3B2: [705,194,566,23,573], // GREEK SMALL LETTER BETA
  1702. 0x3B3: [441,216,518,11,543], // GREEK SMALL LETTER GAMMA
  1703. 0x3B4: [717,10,444,36,451], // GREEK SMALL LETTER DELTA
  1704. 0x3B5: [452,22,466,27,428], // GREEK SMALL LETTER EPSILON
  1705. 0x3B6: [704,204,438,44,471], // GREEK SMALL LETTER ZETA
  1706. 0x3B7: [442,216,497,21,503], // GREEK SMALL LETTER ETA
  1707. 0x3B8: [705,10,469,35,462], // GREEK SMALL LETTER THETA
  1708. 0x3B9: [442,10,354,48,332], // GREEK SMALL LETTER IOTA
  1709. 0x3BA: [442,11,576,49,554], // GREEK SMALL LETTER KAPPA
  1710. 0x3BB: [694,12,583,47,556], // GREEK SMALL LETTER LAMDA
  1711. 0x3BC: [442,216,603,23,580], // GREEK SMALL LETTER MU
  1712. 0x3BD: [442,2,494,45,530], // GREEK SMALL LETTER NU
  1713. 0x3BE: [704,205,438,21,443], // GREEK SMALL LETTER XI
  1714. 0x3BF: [441,11,485,34,476], // GREEK SMALL LETTER OMICRON
  1715. 0x3C0: [431,11,570,19,573], // GREEK SMALL LETTER PI
  1716. 0x3C1: [442,216,517,23,510], // GREEK SMALL LETTER RHO
  1717. 0x3C2: [442,107,363,31,405], // GREEK SMALL LETTER FINAL SIGMA
  1718. 0x3C3: [431,11,571,31,572], // GREEK SMALL LETTER SIGMA
  1719. 0x3C4: [431,13,437,18,517], // GREEK SMALL LETTER TAU
  1720. 0x3C5: [443,10,540,21,523], // GREEK SMALL LETTER UPSILON
  1721. 0x3C6: [442,218,654,50,618], // GREEK SMALL LETTER PHI
  1722. 0x3C7: [442,204,626,25,600], // GREEK SMALL LETTER CHI
  1723. 0x3C8: [694,205,651,21,634], // GREEK SMALL LETTER PSI
  1724. 0x3C9: [443,11,622,15,604], // GREEK SMALL LETTER OMEGA
  1725. 0x3D1: [705,11,591,21,563], // GREEK THETA SYMBOL
  1726. 0x3D5: [694,205,596,43,579], // GREEK PHI SYMBOL
  1727. 0x3D6: [431,10,828,19,823], // GREEK PI SYMBOL
  1728. 0x3F1: [442,194,517,67,510], // GREEK RHO SYMBOL
  1729. 0x3F5: [431,11,406,40,382] // GREEK LUNATE EPSILON SYMBOL
  1730. };
  1731. }
  1732. if (HTMLCSS.Font.testFont({family:"MathJax_Greek", weight:"bold", style:"italic", testString: testString})) {
  1733. HTMLCSS.Augment({
  1734. FONTDATA: {
  1735. VARIANT: {
  1736. "bold-italic": {offsetG: 0x391,
  1737. variantG: "-Greek-Bold-Italic"},
  1738. "-Greek-Bold-Italic": {fonts:["MathJax_Greek-bold-italic"]}
  1739. },
  1740. FONTS: {"MathJax_Greek-bold-italic": "Greek/BoldItalic/Main.js"}
  1741. }
  1742. });
  1743. }
  1744. }
  1745. if (HTMLCSS.msieIE6) {
  1746. var WinIE6 = "MathJax_WinIE6";
  1747. HTMLCSS.FONTDATA.FONTS[WinIE6] = "WinIE6/Regular/Main.js";
  1748. HTMLCSS.FONTDATA.RANGES.push({name: "arrows", low: 0x2190, high: 0x2199, offset: "AR"});
  1749. var REMAP = {variant:"-WinIE6",
  1750. 0x21D2:0xE20A, 0x21D4:0xE20B, // \Rightarrow, \Leftrightarrow
  1751. 0x2200:0xE20C, 0x2202:0xE20D, 0x2203:0xE20E, 0x2207:0xE20F, // \forall, \partial, \exists, \nabla
  1752. 0x2208:0xE210, 0x220B:0xE211, 0x2215:0xE212, 0x221A:0xE213, // \in, \ni, /, \surd
  1753. 0x221D:0xE214, 0x221E:0xE215, 0x2220:0xE216, 0x2223:0xE217, // \propto, \infty, \angle, \vert
  1754. 0x2225:0xE218, 0x2227:0xE219, 0x2228:0xE21A, 0x2229:0xE21B, // \Vert, \wedge, \vee, \cap
  1755. 0x222A:0xE21C, 0x222B:0xE21D, 0x223C:0xE21E, 0x2248:0xE21F, // \cup, \int, \sim, \approx
  1756. 0x2260:0xE220, 0x2261:0xE221, 0x2264:0xE222, 0x2265:0xE223, // \ne, \equiv, \le, \ge
  1757. 0x226A:0xE224, 0x226B:0xE225, 0x2282:0xE226, 0x2283:0xE227, // \ll, \gg, \subset, \supset
  1758. 0x2286:0xE228, 0x2287:0xE229, 0x2295:0xE22A, 0x2299:0xE22B, // \subseteq, \supseteq, \oplus, \odot
  1759. 0x22A5:0xE22C, 0x25B3:0xE22D, 0x25BD:0xE22E, 0x25EF:0xE22F, // \bot, \bigtriangleup, \bigtriangledown, \bigcirc
  1760. 0x2660:0xE230, 0x2661:0xE231, 0x2662:0xE232, 0x2663:0xE233, // \spadesuit, \heartsuit, \diamondsuit, \clubsuit
  1761. 0x266D:0xE234, 0x266E:0xE235, 0x266F:0xE236, // \flat, \naturl, \sharp
  1762. 0x2266:0xE2C5, 0x2267:0xE2C6, 0x226E:0xE2C7, 0x226F:0xE2C8, // \leqq, \geqq, \nless, \ngtr
  1763. 0x231C:0xE2CA, 0x231D:0xE2CB, 0x231E:0xE2CC, 0x231F:0xE2CD, // corners
  1764. 0x250C:0xE2CA, 0x2510:0xE2CB, 0x2514:0xE2CC, 0x2518:0xE2CD, // corners (wrong positions)
  1765. 0x2571:0xE2CE, 0x2572:0xE2CF, 0x25A0:0xE2D0, 0x25A1:0xE2D1, // \diagup, \diagdown, \blacksquare, \square
  1766. 0x25B2:0xE2D2, 0x25B6:0xE2D4, 0x25BC:0xE2D5, // \blacktriangle, \blacktriangleright, \blacktriangledown
  1767. 0x25BD:0xE2D6, 0x25C0:0xE2D7, 0x25CA:0xE2D8, // \vartriangledown, \blacktriangleleft, \lozenge
  1768. 0x2234:0xE2D9, 0x2235:0xE2DA, 0x2252:0xE2DB, 0x2605:0xE2DC, // \therefor, \because, \fallingdotseq, \bigstar
  1769. 0x223D:0xE2DD // \backsim
  1770. };
  1771. var REMAPBOLD = {variant:"-WinIE6",
  1772. 0x21D2:0xE24A, 0x21D4:0xE24B, // \Rightarrow, \Leftrightarrow
  1773. 0x2200:0xE24C, 0x2202:0xE24D, 0x2203:0xE24E, 0x2207:0xE24F, // \forall, \partial, \exists, \nabla
  1774. 0x2208:0xE250, 0x220B:0xE251, 0x2215:0xE252, 0x221A:0xE253, // \in, \ni, /, \surd
  1775. 0x221D:0xE254, 0x221E:0xE255, 0x2220:0xE256, 0x2223:0xE257, // \propto, \infty, \angle, \vert
  1776. 0x2225:0xE258, 0x2227:0xE259, 0x2228:0xE25A, 0x2229:0xE25B, // \Vert, \wedge, \vee, \cap
  1777. 0x222A:0xE25C, 0x222B:0xE25D, 0x223C:0xE25E, 0x2248:0xE25F, // \cup, \int, \sim, \approx
  1778. 0x2260:0xE260, 0x2261:0xE261, 0x2264:0xE262, 0x2265:0xE263, // \ne, \equiv, \le, \ge
  1779. 0x226A:0xE264, 0x226B:0xE265, 0x2282:0xE266, 0x2283:0xE267, // \ll, \gg, \subset, \supset
  1780. 0x2286:0xE268, 0x2287:0xE269, 0x2295:0xE26A, 0x2299:0xE26B, // \subseteq, \supseteq, \oplus, \odot
  1781. 0x22A5:0xE26C, 0x25B3:0xE26D, 0x25BD:0xE26E, 0x25EF:0xE26F, // \bot, \bigtriangleup, \bigtriangledown, \bigcirc
  1782. 0x2660:0xE270, 0x2661:0xE271, 0x2662:0xE272, 0x2663:0xE273, // \spadesuit, \heartsuit, \diamondsuit, \clubsuit
  1783. 0x266D:0xE274, 0x266E:0xE275, 0x266F:0xE276, // \flat, \naturl, \sharp
  1784. 0x2266:0xE2C5, 0x2267:0xE2C6, 0x226E:0xE2C7, 0x226F:0xE2C8, // \leqq, \geqq, \nless, \ngtr
  1785. 0x231C:0xE2CA, 0x231D:0xE2CB, 0x231E:0xE2CC, 0x231F:0xE2CD, // corners
  1786. 0x250C:0xE2CA, 0x2510:0xE2CB, 0x2514:0xE2CC, 0x2518:0xE2CD, // corners (wrong positions)
  1787. 0x2571:0xE2CE, 0x2572:0xE2CF, 0x25A0:0xE2D0, 0x25A1:0xE2D1, // \diagup, \diagdown, \blacksquare, \square
  1788. 0x25B2:0xE2D2, 0x25B6:0xE2D4, 0x25BC:0xE2D5, // \blacktriangle, \blacktriangleright, \blacktriangledown
  1789. 0x25BD:0xE2D6, 0x25C0:0xE2D7, 0x25CA:0xE2D8, // \vartriangledown, \blacktriangleleft, \lozenge
  1790. 0x2234:0xE2D9, 0x2235:0xE2DA, 0x2252:0xE2DB, 0x2605:0xE2DC, // \therefor, \because, \fallingdotseq, \bigstar
  1791. 0x223D:0xE2DD // \backsim
  1792. };
  1793. var VARNORMAL = {offsetAR:0xE200, variantAR:"-WinIE6", remap: REMAP};
  1794. var VARBOLD = {offsetAR:0xE240, variantAR:"-WinIE6", remap: REMAPBOLD};
  1795. HTMLCSS.Augment({
  1796. FONTDATA: {
  1797. VARIANT: {
  1798. "normal": VARNORMAL,
  1799. "bold": VARBOLD,
  1800. "italic": VARNORMAL,
  1801. "bold-italic": VARBOLD,
  1802. "-TeX-variant": {remap:{
  1803. 0x2190:[0xE2C1,"-WinIE6"], 0x2192:[0xE2C0,"-WinIE6"],
  1804. 0x2223:[0xE2C2,"-WinIE6"], 0x2225:[0xE2C3,"-WinIE6"],
  1805. 0x223C:[0xE2C4,"-WinIE6"], 0x25B3:[0xE2D3,"-WinIE6"]
  1806. }},
  1807. "-largeOp": {fonts:[WinIE6,SIZE2,SIZE1,MAIN],
  1808. remap: {0x220F:0xE290, 0x2211:0xE291, 0x222B:0xE295, 0x222E:0xE296}},
  1809. "-smallOp": {fonts:[WinIE6,SIZE1,MAIN],
  1810. remap: {0x220F:0xE280, 0x2211:0xE281, 0x222B:0xE285, 0x222E:0xE286}},
  1811. "-WinIE6": {fonts:[WinIE6]}
  1812. },
  1813. DELIMITERS: {
  1814. 0x221A: {
  1815. HW:{
  1816. 0:[1,WinIE6,null,0xE213], 1:[1.2,WinIE6,null,0xE282], 2:[1.8,WinIE6,null,0xE292],
  1817. 3:[2.4,WinIE6,null,0xE2A2], 4:[3,WinIE6,null,0xE2B2]
  1818. }
  1819. },
  1820. 0x007C: {stretch:{ext:[0xE217,WinIE6]}},
  1821. 0x2223: {HW:{0:[1,WinIE6,null,0xE217]}, stretch:{ext:[0xE217,WinIE6]}},
  1822. 0x23D0: {HW:{1:[1,WinIE6,null,0xE217]}, stretch:{ext:[0xE217,WinIE6]}},
  1823. 0x2225: {HW:{0:[1,WinIE6,null,0xE218]}, stretch:{ext:[0xE218,WinIE6]}},
  1824. 0x2190: {HW:{0:[.889,WinIE6,null,0xE200]}, stretch:{left:[0xE200,WinIE6]}},
  1825. 0x2191: {HW:{0:[.888,WinIE6,null,0xE201]}, stretch:{top:[0xE287,WinIE6],ext:[0xE289,WinIE6]}},
  1826. 0x2192: {HW:{0:[.889,WinIE6,null,0xE202]}, stretch:{right:[0xE202,WinIE6]}},
  1827. 0x2193: {HW:{0:[.888,WinIE6,null,0xE203]}, stretch:{bot:[0xE288,WinIE6],ext:[0xE289,WinIE6]}},
  1828. 0x2194: {HW:{0:[1,WinIE6,null,0xE204]}, stretch:{left:[0xE200,WinIE6],right:[0xE202,WinIE6]}},
  1829. 0x2195: {HW:{0:[1.044,WinIE6,null,0xE203]}, stretch:{top:[0xE287,WinIE6],bot:[0xE288,WinIE6], ext:[0xE289,WinIE6]}}
  1830. }
  1831. }
  1832. });
  1833. }
  1834. },
  1835. Chrome: function (browser) {
  1836. if (browser.isPC && navigator.userAgent.match(/Windows NT (5|6.0)/)) {
  1837. //
  1838. // Chrome on XP and Vista don't seem to handle four combining characters,
  1839. // so work around them as best we can.
  1840. //
  1841. HTMLCSS.Augment({
  1842. FONTDATA: {
  1843. REMAP: {0x338: "\uEEE0/\uEEE8"}, // combining long solidas
  1844. REMAPACCENT: {
  1845. "\u0307":".", // combining dot above
  1846. "\u030B":"\u00B4\uEEE1\u00B4", // combining double acute accent
  1847. "\u20D7":"\u2192" // combining arrow above
  1848. }
  1849. }
  1850. });
  1851. delete HTMLCSS.FONTDATA.REMAPACCENT["\u2192"];
  1852. }
  1853. if (browser.isPC && !MathJax.Hub.Browser.versionAtLeast("5.0")) {
  1854. var WinChrome = "-WinChrome";
  1855. HTMLCSS.Augment({
  1856. FONTDATA: {
  1857. VARIANT: {
  1858. normal: {remap: {0x3E: [0x3E,WinChrome]}},
  1859. bold: {remap: {0xE2F1: [0x3E,WinChrome]}},
  1860. italic: {remap: {0x64: [0x64,WinChrome]}},
  1861. "-tex-caligraphic": {remap: {0x54: [0x54,WinChrome]}},
  1862. "-tex-caligraphic-bold": {remap: {0x54: [0xE2F0,WinChrome]}},
  1863. "-largeOp": {remap: {0x2A00: [0x2A00,WinChrome]}},
  1864. "-smallOp": {remap: {0x22C3: [0x22C3,WinChrome]}},
  1865. "-WinChrome": {fonts:["MathJax_WinChrome"]}
  1866. },
  1867. DELIMITERS: {
  1868. 0x005D: {stretch:{bot:[0x23A6,"MathJax_WinChrome"]}},
  1869. 0x230B: {stretch:{bot:[0x23A6,"MathJax_WinChrome"]}}
  1870. }
  1871. }
  1872. });
  1873. HTMLCSS.FONTDATA.FONTS['MathJax_WinChrome'] = {
  1874. directory: 'WinChrome/Regular',
  1875. family: 'MathJax_WinChrome',
  1876. testString: "> T d \u23A6 \u2A00",
  1877. skew: {
  1878. 0x54: 0.0278,
  1879. 0xE2F0: 0.0319
  1880. },
  1881. 0x20: [0,0,250,0,0], // SPACE
  1882. 0x3E: [540,40,778,83,694], // GREATER-THAN SIGN
  1883. 0x54: [717,68,545,34,833], // LATIN CAPITAL LETTER T
  1884. 0x64: [694,11,511,101,567], // LATIN SMALL LETTER D
  1885. 0xA0: [0,0,250,0,0], // NO-BREAK SPACE
  1886. 0x22C3: [750,249,833,55,777], // N-ARY UNION
  1887. 0x23A6: [1155,644,667,0,347], // RIGHT SQUARE BRACKET LOWER CORNER
  1888. 0x2A00: [949,449,1511,56,1454], // N-ARY CIRCLED DOT OPERATOR
  1889. 0xE2F0: [720,69,644,38,947], // stix-lowercase u italic slashed
  1890. 0xE2F1: [587,85,894,96,797] // stix-lowercase u bold italic slashed
  1891. };
  1892. }
  1893. }
  1894. });
  1895. }
  1896. //
  1897. // Create @font-face stylesheet for the declared fonts
  1898. //
  1899. (function () {
  1900. var FONTS = HTMLCSS.FONTDATA.FONTS, AVAIL = HTMLCSS.config.availableFonts;
  1901. var name, faces = [];
  1902. if (HTMLCSS.allowWebFonts) {
  1903. for (name in FONTS) {
  1904. if (FONTS[name].family) {
  1905. if (AVAIL && AVAIL.length && HTMLCSS.Font.testFont(FONTS[name])) {
  1906. FONTS[name].available = true;
  1907. HTMLCSS.Font.loadComplete(FONTS[name]);
  1908. } else {
  1909. FONTS[name].isWebFont = true;
  1910. if (HTMLCSS.FontFaceBug) {FONTS[name].family = name}
  1911. faces.push(HTMLCSS.Font.fontFace(name));
  1912. }
  1913. }
  1914. }
  1915. if (!HTMLCSS.config.preloadWebFonts) {HTMLCSS.config.preloadWebFonts = []}
  1916. HTMLCSS.config.preloadWebFonts.push(MAIN,ITALIC,SIZE1);
  1917. if (faces.length) {HTMLCSS.config.styles["@font-face"] = faces}
  1918. } else if (AVAIL && AVAIL.length) {
  1919. for (name in FONTS) {
  1920. if (FONTS[name].family && HTMLCSS.Font.testFont(FONTS[name])) {
  1921. FONTS[name].available = true;
  1922. HTMLCSS.Font.loadComplete(FONTS[name]);
  1923. }
  1924. }
  1925. }
  1926. })();
  1927. AJAX.loadComplete(HTMLCSS.fontDir + "/fontdata.js");
  1928. })(MathJax.OutputJax["HTML-CSS"],MathJax.ElementJax.mml,MathJax.Ajax);