fontdata.js 29 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795
  1. /*************************************************************
  2. *
  3. * MathJax/jax/output/HTML-CSS/fonts/STIX-Web/fontdata.js
  4. *
  5. * Initializes the HTML-CSS OutputJax to use the STIX-Web fonts
  6. * Copyright (c) 2013-2019 The MathJax Consortium
  7. *
  8. * Licensed under the Apache License, Version 2.0 (the "License");
  9. * you may not use this file except in compliance with the License.
  10. * You may obtain a copy of the License at
  11. *
  12. * http://www.apache.org/licenses/LICENSE-2.0
  13. *
  14. * Unless required by applicable law or agreed to in writing, software
  15. * distributed under the License is distributed on an "AS IS" BASIS,
  16. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  17. * See the License for the specific language governing permissions and
  18. * limitations under the License.
  19. */
  20. (function (HTMLCSS,MML,AJAX) {
  21. var VERSION = "2.7.7";
  22. var ALPHABETSBOLDITALIC = "STIXMathJax_Alphabets-bold-italic",
  23. ALPHABETSBOLD = "STIXMathJax_Alphabets-bold",
  24. ALPHABETSITALIC = "STIXMathJax_Alphabets-italic",
  25. ALPHABETS = "STIXMathJax_Alphabets",
  26. ARROWSBOLD = "STIXMathJax_Arrows-bold",
  27. ARROWS = "STIXMathJax_Arrows",
  28. DOUBLESTRUCKBOLDITALIC = "STIXMathJax_DoubleStruck-bold-italic",
  29. DOUBLESTRUCKBOLD = "STIXMathJax_DoubleStruck-bold",
  30. DOUBLESTRUCKITALIC = "STIXMathJax_DoubleStruck-italic",
  31. DOUBLESTRUCK = "STIXMathJax_DoubleStruck",
  32. FRAKTURBOLD = "STIXMathJax_Fraktur-bold",
  33. FRAKTUR = "STIXMathJax_Fraktur",
  34. LATINBOLDITALIC = "STIXMathJax_Latin-bold-italic",
  35. LATINBOLD = "STIXMathJax_Latin-bold",
  36. LATINITALIC = "STIXMathJax_Latin-italic",
  37. LATIN = "STIXMathJax_Latin",
  38. MAINBOLDITALIC = "STIXMathJax_Main-bold-italic",
  39. MAINBOLD = "STIXMathJax_Main-bold",
  40. MAINITALIC = "STIXMathJax_Main-italic",
  41. MAIN = "STIXMathJax_Main",
  42. MARKSBOLDITALIC = "STIXMathJax_Marks-bold-italic",
  43. MARKSBOLD = "STIXMathJax_Marks-bold",
  44. MARKSITALIC = "STIXMathJax_Marks-italic",
  45. MARKS = "STIXMathJax_Marks",
  46. MISCBOLDITALIC = "STIXMathJax_Misc-bold-italic",
  47. MISCBOLD = "STIXMathJax_Misc-bold",
  48. MISCITALIC = "STIXMathJax_Misc-italic",
  49. MISC = "STIXMathJax_Misc",
  50. MONOSPACE = "STIXMathJax_Monospace",
  51. NORMALBOLDITALIC = "STIXMathJax_Normal-bold-italic",
  52. NORMALBOLD = "STIXMathJax_Normal-bold",
  53. NORMALITALIC = "STIXMathJax_Normal-italic",
  54. OPERATORSBOLD = "STIXMathJax_Operators-bold",
  55. OPERATORS = "STIXMathJax_Operators",
  56. SANSSERIFBOLDITALIC = "STIXMathJax_SansSerif-bold-italic",
  57. SANSSERIFBOLD = "STIXMathJax_SansSerif-bold",
  58. SANSSERIFITALIC = "STIXMathJax_SansSerif-italic",
  59. SANSSERIF = "STIXMathJax_SansSerif",
  60. SCRIPTBOLDITALIC = "STIXMathJax_Script-bold-italic",
  61. SCRIPTITALIC = "STIXMathJax_Script-italic",
  62. SCRIPT = "STIXMathJax_Script",
  63. SHAPESBOLDITALIC = "STIXMathJax_Shapes-bold-italic",
  64. SHAPESBOLD = "STIXMathJax_Shapes-bold",
  65. SHAPES = "STIXMathJax_Shapes",
  66. SIZE1 = "STIXMathJax_Size1",
  67. SIZE2 = "STIXMathJax_Size2",
  68. SIZE3 = "STIXMathJax_Size3",
  69. SIZE4 = "STIXMathJax_Size4",
  70. SIZE5 = "STIXMathJax_Size5",
  71. SYMBOLSBOLD = "STIXMathJax_Symbols-bold",
  72. SYMBOLS = "STIXMathJax_Symbols",
  73. VARIANTSBOLDITALIC = "STIXMathJax_Variants-bold-italic",
  74. VARIANTSBOLD = "STIXMathJax_Variants-bold",
  75. VARIANTSITALIC = "STIXMathJax_Variants-italic",
  76. VARIANTS = "STIXMathJax_Variants";
  77. var H = "H", V = "V", EXTRAH = {load:"extra", dir:H}, EXTRAV = {load:"extra", dir:V};
  78. var ARROWREP = [0x2212,MAIN,0,0,0,-.26,-.26];
  79. HTMLCSS.Augment({
  80. FONTDATA: {
  81. version: VERSION,
  82. TeX_factor: 1.125,
  83. baselineskip: 1.200,
  84. lineH: 0.800, lineD: 0.200,
  85. hasStyleChar: true, // char 0xEFFD encodes font style
  86. FONTS: {
  87. "STIXMathJax_Alphabets-bold-italic": "Alphabets/BoldItalic/Main.js",
  88. "STIXMathJax_Alphabets-bold": "Alphabets/Bold/Main.js",
  89. "STIXMathJax_Alphabets-italic": "Alphabets/Italic/Main.js",
  90. "STIXMathJax_Alphabets": "Alphabets/Regular/Main.js",
  91. "STIXMathJax_Arrows-bold": "Arrows/Bold/Main.js",
  92. "STIXMathJax_Arrows": "Arrows/Regular/Main.js",
  93. "STIXMathJax_DoubleStruck-bold-italic": "DoubleStruck/BoldItalic/Main.js",
  94. "STIXMathJax_DoubleStruck-bold": "DoubleStruck/Bold/Main.js",
  95. "STIXMathJax_DoubleStruck-italic": "DoubleStruck/Italic/Main.js",
  96. "STIXMathJax_DoubleStruck": "DoubleStruck/Regular/Main.js",
  97. "STIXMathJax_Fraktur-bold": "Fraktur/Bold/Main.js",
  98. "STIXMathJax_Fraktur": "Fraktur/Regular/Main.js",
  99. "STIXMathJax_Latin-bold-italic": "Latin/BoldItalic/Main.js",
  100. "STIXMathJax_Latin-bold": "Latin/Bold/Main.js",
  101. "STIXMathJax_Latin-italic": "Latin/Italic/Main.js",
  102. "STIXMathJax_Latin": "Latin/Regular/Main.js",
  103. "STIXMathJax_Main-bold-italic": "Main/BoldItalic/Main.js",
  104. "STIXMathJax_Main-bold": "Main/Bold/Main.js",
  105. "STIXMathJax_Main-italic": "Main/Italic/Main.js",
  106. "STIXMathJax_Main": "Main/Regular/Main.js",
  107. "STIXMathJax_Marks-bold-italic": "Marks/BoldItalic/Main.js",
  108. "STIXMathJax_Marks-bold": "Marks/Bold/Main.js",
  109. "STIXMathJax_Marks-italic": "Marks/Italic/Main.js",
  110. "STIXMathJax_Marks": "Marks/Regular/Main.js",
  111. "STIXMathJax_Misc-bold-italic": "Misc/BoldItalic/Main.js",
  112. "STIXMathJax_Misc-bold": "Misc/Bold/Main.js",
  113. "STIXMathJax_Misc-italic": "Misc/Italic/Main.js",
  114. "STIXMathJax_Misc": "Misc/Regular/Main.js",
  115. "STIXMathJax_Monospace": "Monospace/Regular/Main.js",
  116. "STIXMathJax_Normal-bold-italic": "Normal/BoldItalic/Main.js",
  117. "STIXMathJax_Normal-bold": "Normal/Bold/Main.js",
  118. "STIXMathJax_Normal-italic": "Normal/Italic/Main.js",
  119. "STIXMathJax_Operators-bold": "Operators/Bold/Main.js",
  120. "STIXMathJax_Operators": "Operators/Regular/Main.js",
  121. "STIXMathJax_SansSerif-bold-italic": "SansSerif/BoldItalic/Main.js",
  122. "STIXMathJax_SansSerif-bold": "SansSerif/Bold/Main.js",
  123. "STIXMathJax_SansSerif-italic": "SansSerif/Italic/Main.js",
  124. "STIXMathJax_SansSerif": "SansSerif/Regular/Main.js",
  125. "STIXMathJax_Script-bold-italic": "Script/BoldItalic/Main.js",
  126. "STIXMathJax_Script-italic": "Script/Italic/Main.js",
  127. "STIXMathJax_Script": "Script/Regular/Main.js",
  128. "STIXMathJax_Shapes-bold-italic": "Shapes/BoldItalic/Main.js",
  129. "STIXMathJax_Shapes-bold": "Shapes/Bold/Main.js",
  130. "STIXMathJax_Shapes": "Shapes/Regular/Main.js",
  131. "STIXMathJax_Size1": "Size1/Regular/Main.js",
  132. "STIXMathJax_Size2": "Size2/Regular/Main.js",
  133. "STIXMathJax_Size3": "Size3/Regular/Main.js",
  134. "STIXMathJax_Size4": "Size4/Regular/Main.js",
  135. "STIXMathJax_Size5": "Size5/Regular/Main.js",
  136. "STIXMathJax_Symbols-bold": "Symbols/Bold/Main.js",
  137. "STIXMathJax_Symbols": "Symbols/Regular/Main.js",
  138. "STIXMathJax_Variants-bold-italic": "Variants/BoldItalic/Main.js",
  139. "STIXMathJax_Variants-bold": "Variants/Bold/Main.js",
  140. "STIXMathJax_Variants-italic": "Variants/Italic/Main.js",
  141. "STIXMathJax_Variants": "Variants/Regular/Main.js"
  142. },
  143. VARIANT: {
  144. "normal": {
  145. fonts: [MAIN,MONOSPACE,LATIN,ALPHABETS,MARKS,ARROWS,OPERATORS,SYMBOLS,SHAPES,MISC,VARIANTS,SIZE1],
  146. remap: {0x007C: [0x007C, "-STIX-Web-variant"]}
  147. },
  148. "bold": {
  149. fonts: [MAINBOLD,NORMALBOLD,FRAKTURBOLD,DOUBLESTRUCKBOLD,SANSSERIFBOLD,LATINBOLD,ALPHABETSBOLD,MARKSBOLD,ARROWSBOLD,OPERATORSBOLD,SYMBOLSBOLD,SHAPESBOLD,MISCBOLD,VARIANTSBOLD,SIZE1],
  150. offsetA: 0x1D400,
  151. offsetG: 0x1D6A8,
  152. bold: true,
  153. remap: {0x2202: 0x1D6DB, 0x2207: 0x1D6C1}
  154. },
  155. "italic": {
  156. fonts: [MAINITALIC,NORMALITALIC,SCRIPTITALIC,DOUBLESTRUCKITALIC,SANSSERIFITALIC,LATINITALIC,ALPHABETSITALIC,MARKSITALIC,MISCITALIC,VARIANTSITALIC,SIZE1],
  157. offsetA: 0x1D434, offsetG: 0x1D6E2,
  158. remap: {0x1D455: 0x210E, 0x2202: 0x1D715, 0x2207: 0x1D6FB},
  159. italic: true
  160. },
  161. "bold-italic": {
  162. fonts: [MAINBOLDITALIC,NORMALBOLDITALIC,SCRIPTBOLDITALIC,DOUBLESTRUCKBOLDITALIC,SANSSERIFBOLDITALIC,LATINBOLDITALIC,ALPHABETSBOLDITALIC,MARKSBOLDITALIC,SHAPESBOLDITALIC,MISCBOLDITALIC,VARIANTSBOLDITALIC,SIZE1],
  163. offsetA: 0x1D434, offsetG: 0x1D71C,
  164. remap: {0x1D455: 0x210E, 0x2202: 0x1D74F, 0x2207: 0x1D735},
  165. bold: true, italic: true
  166. },
  167. "double-struck": {
  168. fonts: [DOUBLESTRUCK],
  169. offsetA: 0x1D538,
  170. offsetN: 0x1D7D8,
  171. remap: {0x1D53A: 0x2102, 0x1D53F: 0x210D, 0x1D545: 0x2115, 0x1D547: 0x2119, 0x1D548: 0x211A, 0x1D549: 0x211D, 0x1D551: 0x2124}
  172. },
  173. "fraktur": {
  174. fonts: [FRAKTUR],
  175. offsetA: 0x1D504,
  176. remap: {0x1D506: 0x212D, 0x1D50B: 0x210C, 0x1D50C: 0x2111, 0x1D515: 0x211C, 0x1D51D: 0x2128}
  177. },
  178. "bold-fraktur": {
  179. fonts: [FRAKTURBOLD],
  180. offsetA: 0x1D56C,
  181. bold: true
  182. },
  183. "script": {
  184. fonts: [SCRIPTITALIC],
  185. offsetA: 0x1D49C,
  186. italic: true,
  187. remap: {0x1D49D: 0x212C, 0x1D4A0: 0x2130, 0x1D4A1: 0x2131, 0x1D4A3: 0x210B, 0x1D4A4: 0x2110, 0x1D4A7: 0x2112, 0x1D4A8: 0x2133, 0x1D4AD: 0x211B, 0x1D4BA: 0x212F, 0x1D4BC: 0x210A, 0x1D4C4: 0x2134}
  188. },
  189. "bold-script": {
  190. fonts: [SCRIPTBOLDITALIC],
  191. offsetA: 0x1D4D0,
  192. bold:true, italic: true
  193. },
  194. "sans-serif": {
  195. fonts: [SANSSERIF],
  196. offsetA: 0x1D5A0,
  197. offsetN: 0x1D7E2,
  198. offsetP: 0xE17D,
  199. remap: {0x2202: 0xE17C}
  200. },
  201. "bold-sans-serif": {
  202. fonts: [SANSSERIFBOLD],
  203. offsetA: 0x1D5D4,
  204. offsetN: 0x1D7EC,
  205. offsetG: 0x1D756,
  206. remap: {0x2202: 0x1D789, 0x2207: 0x1D76F}
  207. },
  208. "sans-serif-italic": {
  209. fonts: [SANSSERIFITALIC], italic: true,
  210. offsetA: 0x1D608,
  211. offsetN: 0xE1B4,
  212. offsetP: 0xE1BF,
  213. remap: {0x2202: 0xE1BE},
  214. bold: true
  215. },
  216. "sans-serif-bold-italic": {
  217. fonts: [SANSSERIFBOLDITALIC],
  218. offsetA: 0x1D63C,
  219. offsetN: 0xE1F6,
  220. offsetG: 0x1D790,
  221. remap: {0x2202: 0x1D7C3, 0x2207: 0x1D7A9},
  222. bold: true, italic: true
  223. },
  224. "monospace": {
  225. fonts: [MONOSPACE],
  226. offsetA: 0x1D670,
  227. offsetN: 0x1D7F6
  228. },
  229. "-STIX-Web-variant": {remap: {0x2A87: 0xE010, 0x2A88: 0xE00F, 0x25B3: 0x25B5, 0x25BD: 0x25BF, 0x007C: [0x007C, MML.VARIANT.NORMAL]}, fonts: [VARIANTS,SHAPES,OPERATORS,MAIN,MONOSPACE,LATIN,ALPHABETS,MARKS,ARROWS,SYMBOLS,MISC,SIZE1]},
  230. "-tex-caligraphic": {offsetA: 0xE22D, noLowerCase: 1, fonts: [VARIANTSITALIC,MAINITALIC,NORMALITALIC,SCRIPTITALIC,DOUBLESTRUCKITALIC,SANSSERIFITALIC,LATINITALIC,ALPHABETSITALIC,MARKSITALIC,MISCITALIC,SIZE1], italic: true},
  231. "-tex-oldstyle": {offsetN: 0xE261, remap: {0xE262: 0xE265, 0xE263: 0xE269, 0xE264: 0xE26D, 0xE265: 0xE271, 0xE266: 0xE275, 0xE267: 0xE279, 0xE268: 0xE27D, 0xE269: 0xE281, 0xE26A: 0xE285}, fonts: [VARIANTS,MAIN,MONOSPACE,LATIN,ALPHABETS,MARKS,ARROWS,OPERATORS,SYMBOLS,SHAPES,MISC,SIZE1]},
  232. "-tex-caligraphic-bold": {offsetA: 0xE247, noLowerCase: 1, fonts: [VARIANTSBOLDITALIC,MAINBOLDITALIC,NORMALBOLDITALIC,SCRIPTBOLDITALIC,DOUBLESTRUCKBOLDITALIC,SANSSERIFBOLDITALIC,LATINBOLDITALIC,ALPHABETSBOLDITALIC,MARKSBOLDITALIC,SHAPESBOLDITALIC,MISCBOLDITALIC,SIZE1], italic: true, bold: true},
  233. "-tex-oldstyle-bold": {offsetN: 0xE261, remap: {0xE264: 0xE267, 0xE265: 0xE26B, 0xE266: 0xE26F, 0xE267: 0xE273, 0xE268: 0xE277, 0xE269: 0xE27B, 0xE26A: 0xE27F, 0xE26B: 0xE283, 0xE26C: 0xE287}, fonts: [VARIANTSBOLD,MAINBOLD,NORMALBOLD,FRAKTURBOLD,DOUBLESTRUCKBOLD,SANSSERIFBOLD,LATINBOLD,ALPHABETSBOLD,MARKSBOLD,ARROWSBOLD,OPERATORSBOLD,SYMBOLSBOLD,SHAPESBOLD,MISCBOLD,SIZE1], bold: true},
  234. "-tex-mathit": {fonts: [MAINITALIC,NORMALITALIC,SCRIPTITALIC,DOUBLESTRUCKITALIC,SANSSERIFITALIC,LATINITALIC,ALPHABETSITALIC,MARKSITALIC,MISCITALIC,VARIANTSITALIC,SIZE1], italic:true, noIC:true},
  235. "-largeOp": {fonts:[SIZE1,MAIN]},
  236. "-smallOp": {}
  237. },
  238. RANGES: [
  239. {name: "alpha", low: 0x61, high: 0x7A, offset: "A", add: 26},
  240. {name: "Alpha", low: 0x41, high: 0x5A, offset: "A"},
  241. {name: "number", low: 0x30, high: 0x39, offset: "N"},
  242. {name: "greek", low: 0x03B1, high: 0x03C9, offset: "G", add: 26},
  243. {name: "Greek", low: 0x0391, high: 0x03A9, offset: "G"},
  244. {name: "vargreek", low: 0x03D1, high: 0x03F6, offset: "G", remapOnly: true,
  245. remap: {0x03F5: 52, 0x03D1: 53, 0x03F0: 54, 0x03D5: 55, 0x03F1: 56, 0x03D6: 57, 0x03F4: 17}},
  246. {name: "PUAgreek", low: 0x03B1, high: 0x03C9, offset: "P", add: 25},
  247. {name: "PUAGreek", low: 0x0391, high: 0x03A9, offset: "P"},
  248. {name: "varPUAgreek", low: 0x03D1, high: 0x03F6, offset: "P", remapOnly: true,
  249. remap: {0x03F5: 50, 0x03D1: 51, 0x03D5: 52, 0x03F1: 53, 0x03D6: 54, 0x03F4: 17}}
  250. ],
  251. RULECHAR: 0x23AF,
  252. REMAP: {
  253. 0xA: 0x20,
  254. 0x3008: 0x27E8,
  255. 0x3009: 0x27E9,
  256. 0x2758: 0x2223,
  257. 0x02F3: 0x02DA,
  258. 0x02F4: 0x02CA,
  259. 0xFE37: 0x23DE,
  260. 0xFE38: 0x23DF
  261. },
  262. REMAPACCENT: {
  263. "\u007E": "\u0303",
  264. "\u2192": "\u20D7",
  265. "\u2190": "\u20D6",
  266. "\u0060": "\u0300",
  267. "\u005E": "\u0302",
  268. "\u00B4": "\u0301",
  269. "\u2032": "\u0301",
  270. "\u2035": "\u0300"
  271. },
  272. REMAPACCENTUNDER: {
  273. },
  274. DELIMITERS: {
  275. 0x28:
  276. {
  277. dir: V,
  278. HW: [[0.853,MAIN], [1.230,SIZE1], [1.350,SIZE1,1.098], [1.845,SIZE2], [2.460,SIZE3], [3.075,SIZE4]],
  279. stretch: {bot:[0xE000,SIZE5], ext:[0xE001,SIZE5], top:[0xE002,SIZE5]}
  280. },
  281. 0x29:
  282. {
  283. dir: V,
  284. HW: [[0.853,MAIN], [1.230,SIZE1], [1.350,SIZE1,1.098], [1.845,SIZE2], [2.460,SIZE3], [3.075,SIZE4]],
  285. stretch: {bot:[0xE003,SIZE5], ext:[0xE004,SIZE5], top:[0xE005,SIZE5]}
  286. },
  287. 0x2D: {alias: 0x23AF, dir: H},
  288. 0x2F:
  289. {
  290. dir: V,
  291. HW: [[0.690,MAIN], [1.230,SIZE1], [1.350,SIZE1,1.098], [1.845,SIZE2], [2.460,SIZE3], [3.075,SIZE4]]
  292. },
  293. 0x3D: EXTRAH,
  294. 0x5B:
  295. {
  296. dir: V,
  297. HW: [[0.818,MAIN], [1.230,SIZE1], [1.350,SIZE1,1.098], [1.845,SIZE2], [2.460,SIZE3], [3.075,SIZE4]],
  298. stretch: {bot:[0xE006,SIZE5], ext:[0xE007,SIZE5], top:[0xE008,SIZE5]}
  299. },
  300. 0x5C:
  301. {
  302. dir: V,
  303. HW: [[0.690,MAIN], [1.230,SIZE1], [1.350,SIZE1,1.098], [1.845,SIZE2], [2.460,SIZE3], [3.075,SIZE4]]
  304. },
  305. 0x5D:
  306. {
  307. dir: V,
  308. HW: [[0.818,MAIN], [1.230,SIZE1], [1.350,SIZE1,1.098], [1.845,SIZE2], [2.460,SIZE3], [3.075,SIZE4]],
  309. stretch: {bot:[0xE009,SIZE5], ext:[0xE00A,SIZE5], top:[0xE00B,SIZE5]}
  310. },
  311. 0x5E: {alias: 0x2C6, dir: H},
  312. 0x5F: {alias: 0x23AF, dir: H},
  313. 0x7B:
  314. {
  315. dir: V,
  316. HW: [[0.861,MAIN], [1.230,SIZE1], [1.350,SIZE1,1.098], [1.845,SIZE2], [2.460,SIZE3], [3.075,SIZE4]],
  317. stretch: {bot:[0xE00C,SIZE5], ext:[0xE00D,SIZE5], mid:[0xE00E,SIZE5], top:[0xE00F,SIZE5]}
  318. },
  319. 0x7C:
  320. {
  321. dir: V,
  322. HW: [[0.690,MAIN]],
  323. stretch: {bot:[0x7C,MAIN], ext:[0x7C,MAIN]}
  324. },
  325. 0x7D:
  326. {
  327. dir: V,
  328. HW: [[0.861,MAIN], [1.230,SIZE1], [1.350,SIZE1,1.098], [1.845,SIZE2], [2.460,SIZE3], [3.075,SIZE4]],
  329. stretch: {bot:[0xE010,SIZE5], ext:[0xE00D,SIZE5], mid:[0xE011,SIZE5], top:[0xE012,SIZE5]}
  330. },
  331. 0x7E: {alias: 0x2DC, dir: H},
  332. 0xAF: {alias: 0x23AF, dir: H},
  333. 0x2C6:
  334. {
  335. dir: H,
  336. HW: [[0.311,MAIN], [0.560,SIZE1], [0.979,SIZE2], [1.460,SIZE3], [1.886,SIZE4], [2.328,SIZE5]]
  337. },
  338. 0x2C7: EXTRAH,
  339. 0x2C9: {alias: 0x23AF, dir: H},
  340. 0x2CD: EXTRAH,
  341. 0x2DC:
  342. {
  343. dir: H,
  344. HW: [[0.330,MAIN], [0.560,SIZE1], [0.979,SIZE2], [1.460,SIZE3], [1.886,SIZE4], [2.328,SIZE5]]
  345. },
  346. 0x2F7: EXTRAH,
  347. 0x302:
  348. {
  349. dir: H,
  350. HW: [[0.311,MAIN], [0.560,SIZE1], [0.979,SIZE2], [1.460,SIZE3], [1.886,SIZE4], [2.328,SIZE5]]
  351. },
  352. 0x303:
  353. {
  354. dir: H,
  355. HW: [[0.330,MAIN], [0.560,SIZE1], [0.979,SIZE2], [1.460,SIZE3], [1.886,SIZE4], [2.328,SIZE5]]
  356. },
  357. 0x305:
  358. {
  359. dir: H,
  360. HW: [[0.500,MARKS], [1.000,SIZE1], [1.500,SIZE2], [2.000,SIZE3], [2.500,SIZE4], [3.000,SIZE5]],
  361. stretch: {left:[0xE013,SIZE5], rep:[0xE013,SIZE5]}
  362. },
  363. 0x30C:
  364. {
  365. dir: H,
  366. HW: [[0.311,MAIN], [0.560,SIZE1], [0.979,SIZE2], [1.460,SIZE3], [1.886,SIZE4], [2.328,SIZE5]]
  367. },
  368. 0x330:
  369. {
  370. dir: H,
  371. HW: [[0.330,MARKS], [0.560,SIZE1], [0.979,SIZE2], [1.460,SIZE3], [1.886,SIZE4], [2.328,SIZE5]]
  372. },
  373. 0x332:
  374. {
  375. dir: H,
  376. HW: [[0.500,MARKS], [1.000,SIZE1], [1.500,SIZE2], [2.000,SIZE3], [2.500,SIZE4], [3.000,SIZE5]],
  377. stretch: {left:[0xE014,SIZE5], rep:[0xE014,SIZE5]}
  378. },
  379. 0x338:
  380. {
  381. dir: V,
  382. HW: [[0.818,MAIN], [0.553,SIZE1], [0.662,SIZE2], [0.818,SIZE3], [0.959,SIZE4], [1.414,SIZE5]]
  383. },
  384. 0x2015: {alias: 0x23AF, dir: H},
  385. 0x2016:
  386. {
  387. dir: V,
  388. HW: [[0.879,MAIN]],
  389. stretch: {bot:[0x2016,MAIN], ext:[0x2016,MAIN]}
  390. },
  391. 0x2017: {alias: 0x23AF, dir: H},
  392. 0x203E:
  393. {
  394. dir: H,
  395. HW: [[0.500,MAIN], [1.000,SIZE1], [1.500,SIZE2], [2.000,SIZE3], [2.500,SIZE4], [3.000,SIZE5]],
  396. stretch: {left:[0x203E,MAIN], rep:[0x203E,MAIN]}
  397. },
  398. 0x20D0: EXTRAH,
  399. 0x20D1: EXTRAH,
  400. 0x20D6: EXTRAH,
  401. 0x20D7:
  402. {
  403. dir: H,
  404. HW: [[0.436,MAIN], [0.872,SIZE1], [1.308,SIZE2], [1.744,SIZE3], [2.180,SIZE4], [3.000,SIZE5]],
  405. stretch: {rep:[0xE016,SIZE5], right:[0xE019,SIZE5]}
  406. },
  407. 0x20E1: EXTRAH,
  408. 0x20EC: EXTRAH,
  409. 0x20ED: EXTRAH,
  410. 0x20EE: EXTRAH,
  411. 0x20EF: EXTRAH,
  412. 0x2140: EXTRAV,
  413. 0x2190:
  414. {
  415. dir: H,
  416. HW: [[0.786,MAIN]],
  417. stretch: {left:[0x2190,MAIN], rep:ARROWREP}
  418. },
  419. 0x2191:
  420. {
  421. dir: V,
  422. HW: [[0.818,MAIN]],
  423. stretch: {ext:[0x23D0,MAIN], top:[0x2191,MAIN]}
  424. },
  425. 0x2192:
  426. {
  427. dir: H,
  428. HW: [[0.786,MAIN]],
  429. stretch: {rep:ARROWREP, right:[0x2192,MAIN]}
  430. },
  431. 0x2193:
  432. {
  433. dir: V,
  434. HW: [[0.818,MAIN]],
  435. stretch: {bot:[0x2193,MAIN], ext:[0x23D0,MAIN]}
  436. },
  437. 0x2194:
  438. {
  439. dir: H,
  440. HW: [[0.850,MAIN]],
  441. stretch: {left:[0x2190,MAIN], rep:ARROWREP, right:[0x2192,MAIN]}
  442. },
  443. 0x2195:
  444. {
  445. dir: V,
  446. HW: [[0.954,MAIN]],
  447. stretch: {bot:[0x2193,MAIN], ext:[0x23D0,MAIN], top:[0x2191,MAIN]}
  448. },
  449. 0x219E: EXTRAH,
  450. 0x219F: EXTRAV,
  451. 0x21A0: EXTRAH,
  452. 0x21A1: EXTRAV,
  453. 0x21A4: EXTRAH,
  454. 0x21A5: EXTRAV,
  455. 0x21A6: EXTRAH,
  456. 0x21A7: EXTRAV,
  457. 0x21A8: EXTRAV,
  458. 0x21A9: EXTRAH,
  459. 0x21AA: EXTRAH,
  460. 0x21B0: EXTRAV,
  461. 0x21B1: EXTRAV,
  462. 0x21B2: EXTRAV,
  463. 0x21B3: EXTRAV,
  464. 0x21B4: EXTRAH,
  465. 0x21B5: EXTRAV,
  466. 0x21BC: EXTRAH,
  467. 0x21BD: EXTRAH,
  468. 0x21BE: EXTRAV,
  469. 0x21BF: EXTRAV,
  470. 0x21C0: EXTRAH,
  471. 0x21C1: EXTRAH,
  472. 0x21C2: EXTRAV,
  473. 0x21C3: EXTRAV,
  474. 0x21CB: EXTRAH,
  475. 0x21CC: EXTRAH,
  476. 0x21D0:
  477. {
  478. dir: H,
  479. HW: [[0.806,MAIN]],
  480. stretch: {left:[0x21D0,MAIN], rep:[0xE01F,SIZE5]}
  481. },
  482. 0x21D1:
  483. {
  484. dir: V,
  485. HW: [[0.818,MAIN]],
  486. stretch: {ext:[0xE020,SIZE5], top:[0x21D1,MAIN]}
  487. },
  488. 0x21D2:
  489. {
  490. dir: H,
  491. HW: [[0.806,MAIN]],
  492. stretch: {rep:[0xE01F,SIZE5], right:[0x21D2,MAIN]}
  493. },
  494. 0x21D3:
  495. {
  496. dir: V,
  497. HW: [[0.818,MAIN]],
  498. stretch: {bot:[0x21D3,MAIN], ext:[0xE020,SIZE5]}
  499. },
  500. 0x21D4:
  501. {
  502. dir: H,
  503. HW: [[0.886,MAIN]],
  504. stretch: {left:[0x21D0,MAIN], rep:[0xE01F,SIZE5], right:[0x21D2,MAIN]}
  505. },
  506. 0x21D5:
  507. {
  508. dir: V,
  509. HW: [[0.954,MAIN]],
  510. stretch: {bot:[0x21D3,MAIN], ext:[0xE020,SIZE5], top:[0x21D1,MAIN]}
  511. },
  512. 0x21DA: EXTRAH,
  513. 0x21DB: EXTRAH,
  514. 0x21E0: EXTRAH,
  515. 0x21E1: EXTRAV,
  516. 0x21E2: EXTRAH,
  517. 0x21E3: EXTRAV,
  518. 0x21E4: EXTRAH,
  519. 0x21E5: EXTRAH,
  520. 0x21FD: EXTRAH,
  521. 0x21FE: EXTRAH,
  522. 0x21FF: EXTRAH,
  523. 0x220F: EXTRAV,
  524. 0x2210: EXTRAV,
  525. 0x2211: EXTRAV,
  526. 0x2212: {alias: 0x23AF, dir: H},
  527. 0x2215: {alias: 0x2F, dir: V},
  528. 0x221A:
  529. {
  530. dir: V,
  531. HW: [[1.232,MAIN], [1.847,SIZE1], [2.460,SIZE2], [3.075,SIZE3]],
  532. stretch: {bot:[0xE022,SIZE5], ext:[0xE023,SIZE5], top:[0xE024,SIZE5]}
  533. },
  534. 0x221B: EXTRAV,
  535. 0x221C: EXTRAV,
  536. 0x2223:
  537. {
  538. dir: V,
  539. HW: [[0.879,MAIN]],
  540. stretch: {ext:[0x2223,MAIN]}
  541. },
  542. 0x2225:
  543. {
  544. dir: V,
  545. HW: [[0.879,MAIN]],
  546. stretch: {ext:[0x2225,MAIN]}
  547. },
  548. 0x222B: EXTRAV,
  549. 0x222C: EXTRAV,
  550. 0x222D: EXTRAV,
  551. 0x222E: EXTRAV,
  552. 0x222F: EXTRAV,
  553. 0x2230: EXTRAV,
  554. 0x2231: EXTRAV,
  555. 0x2232: EXTRAV,
  556. 0x2233: EXTRAV,
  557. 0x22C0: EXTRAV,
  558. 0x22C1: EXTRAV,
  559. 0x22C2: EXTRAV,
  560. 0x22C3: EXTRAV,
  561. 0x2308:
  562. {
  563. dir: V,
  564. HW: [[0.926,MAIN], [1.230,SIZE1], [1.350,SIZE1,1.098], [1.845,SIZE2], [2.460,SIZE3], [3.075,SIZE4]],
  565. stretch: {ext:[0xE007,SIZE5], top:[0xE008,SIZE5]}
  566. },
  567. 0x2309:
  568. {
  569. dir: V,
  570. HW: [[0.926,MAIN], [1.230,SIZE1], [1.350,SIZE1,1.098], [1.845,SIZE2], [2.460,SIZE3], [3.075,SIZE4]],
  571. stretch: {ext:[0xE00A,SIZE5], top:[0xE00B,SIZE5]}
  572. },
  573. 0x230A:
  574. {
  575. dir: V,
  576. HW: [[0.926,MAIN], [1.230,SIZE1], [1.350,SIZE1,1.098], [1.845,SIZE2], [2.460,SIZE3], [3.075,SIZE4]],
  577. stretch: {bot:[0xE006,SIZE5], ext:[0xE007,SIZE5]}
  578. },
  579. 0x230B:
  580. {
  581. dir: V,
  582. HW: [[0.926,MAIN], [1.230,SIZE1], [1.350,SIZE1,1.098], [1.845,SIZE2], [2.460,SIZE3], [3.075,SIZE4]],
  583. stretch: {bot:[0xE009,SIZE5], ext:[0xE00A,SIZE5]}
  584. },
  585. 0x2312: {alias: 0x23DC, dir:H},
  586. 0x2322: {alias: 0x23DC, dir:H},
  587. 0x2323: {alias: 0x23DD, dir:H},
  588. 0x2329: {alias: 0x27E8, dir: V},
  589. 0x232A: {alias: 0x27E9, dir: V},
  590. 0x23AA: EXTRAV,
  591. 0x23AF:
  592. {
  593. dir: H,
  594. HW: [[0.315,SYMBOLS]],
  595. stretch: {rep:[0x23AF,SYMBOLS]}
  596. },
  597. 0x23B0:
  598. {
  599. dir: V,
  600. HW: [[1.001,SIZE5,null,0xE03A]],
  601. stretch: {top:[0xE00F,SIZE5], ext:[0xE00D,SIZE5], bot:[0xE010,SIZE5]}
  602. },
  603. 0x23B1:
  604. {
  605. dir: V,
  606. HW: [[1.001,SIZE5,null,0xE03B]],
  607. stretch: {top:[0xE012,SIZE5], ext:[0xE00D,SIZE5], bot:[0xE00C,SIZE5]}
  608. },
  609. 0x23B4: EXTRAH,
  610. 0x23B5: EXTRAH,
  611. 0x23D0: EXTRAV,
  612. 0x23DC: EXTRAH,
  613. 0x23DD: EXTRAH,
  614. 0x23DE:
  615. {
  616. dir: H,
  617. HW: [[1.000,MAIN], [0.925,SIZE1], [1.460,SIZE2], [1.886,SIZE3], [2.328,SIZE4], [3.238,SIZE5]],
  618. stretch: {left:[0xE031,SIZE5], rep:[0xE028,SIZE5], mid:[0xE032,SIZE5], right:[0xE033,SIZE5]}
  619. },
  620. 0x23DF:
  621. {
  622. dir: H,
  623. HW: [[1.000,MAIN], [0.925,SIZE1], [1.460,SIZE2], [1.886,SIZE3], [2.328,SIZE4], [3.238,SIZE5]],
  624. stretch: {left:[0xE034,SIZE5], rep:[0xE02B,SIZE5], mid:[0xE035,SIZE5], right:[0xE036,SIZE5]}
  625. },
  626. 0x23E0: EXTRAH,
  627. 0x23E1: EXTRAH,
  628. 0x2500: {alias: 0x2212, dir: H},
  629. 0x2758: {alias: 0x2223, dir: V},
  630. 0x2772: EXTRAV,
  631. 0x2773: EXTRAV,
  632. 0x27E6: EXTRAV,
  633. 0x27E7: EXTRAV,
  634. 0x27E8:
  635. {
  636. dir: V,
  637. HW: [[0.926,MAIN], [1.230,SIZE1], [1.350,SIZE1,1.098], [1.845,SIZE2], [2.460,SIZE3], [3.075,SIZE4]]
  638. },
  639. 0x27E9:
  640. {
  641. dir: V,
  642. HW: [[0.926,MAIN], [1.230,SIZE1], [1.350,SIZE1,1.098], [1.845,SIZE2], [2.460,SIZE3], [3.075,SIZE4]]
  643. },
  644. 0x27EA: EXTRAV,
  645. 0x27EB: EXTRAV,
  646. 0x27EE:
  647. {
  648. dir: V,
  649. HW: [[0.853,MAIN]],
  650. stretch: {bot:[0xE000,SIZE5], ext:[0xE001,SIZE5], top:[0xE002,SIZE5]}
  651. },
  652. 0x27EF:
  653. {
  654. dir: V,
  655. HW: [[0.853,MAIN]],
  656. stretch: {bot:[0xE003,SIZE5], ext:[0xE004,SIZE5], top:[0xE005,SIZE5]}
  657. },
  658. 0x27F0: EXTRAV,
  659. 0x27F1: EXTRAV,
  660. 0x27F5: {alias: 0x2190, dir: H},
  661. 0x27F6: {alias: 0x2192, dir: H},
  662. 0x27F7: {alias: 0x2194, dir: H},
  663. 0x27F8: {alias: 0x21D0, dir: H},
  664. 0x27F9: {alias: 0x21D2, dir: H},
  665. 0x27FA: {alias: 0x21D4, dir: H},
  666. 0x27FB: {alias: 0x21A4, dir: H},
  667. 0x27FC: {alias: 0x21A6, dir: H},
  668. 0x27FD: {alias: 0x2906, dir: H},
  669. 0x27FE: {alias: 0x2907, dir: H},
  670. 0x2906: EXTRAH,
  671. 0x2907: EXTRAH,
  672. 0x290A: EXTRAV,
  673. 0x290B: EXTRAV,
  674. 0x2912: EXTRAV,
  675. 0x2913: EXTRAV,
  676. 0x294E: EXTRAH,
  677. 0x294F: EXTRAV,
  678. 0x2950: EXTRAH,
  679. 0x2951: EXTRAV,
  680. 0x2952: EXTRAH,
  681. 0x2953: EXTRAH,
  682. 0x2954: EXTRAV,
  683. 0x2955: EXTRAV,
  684. 0x2956: EXTRAH,
  685. 0x2957: EXTRAH,
  686. 0x2958: EXTRAV,
  687. 0x2959: EXTRAV,
  688. 0x295A: EXTRAH,
  689. 0x295B: EXTRAH,
  690. 0x295C: EXTRAV,
  691. 0x295D: EXTRAV,
  692. 0x295E: EXTRAH,
  693. 0x295F: EXTRAH,
  694. 0x2960: EXTRAV,
  695. 0x2961: EXTRAV,
  696. 0x2980: EXTRAV,
  697. 0x2983: EXTRAV,
  698. 0x2984: EXTRAV,
  699. 0x2985: EXTRAV,
  700. 0x2986: EXTRAV,
  701. 0x2997: EXTRAV,
  702. 0x2998: EXTRAV,
  703. 0x29F8:
  704. {
  705. dir: V,
  706. HW: [[1.020,MAIN], [1.845,SIZE1]]
  707. },
  708. 0x29F9:
  709. {
  710. dir: V,
  711. HW: [[1.020,MAIN], [1.845,SIZE1]]
  712. },
  713. 0x2A00: EXTRAV,
  714. 0x2A01: EXTRAV,
  715. 0x2A02: EXTRAV,
  716. 0x2A03: EXTRAV,
  717. 0x2A04: EXTRAV,
  718. 0x2A05: EXTRAV,
  719. 0x2A06: EXTRAV,
  720. 0x2A07: EXTRAV,
  721. 0x2A08: EXTRAV,
  722. 0x2A09: EXTRAV,
  723. 0x2A0A: EXTRAV,
  724. 0x2A0B: EXTRAV,
  725. 0x2A0C: EXTRAV,
  726. 0x2A0D: EXTRAV,
  727. 0x2A0E: EXTRAV,
  728. 0x2A0F: EXTRAV,
  729. 0x2A10: EXTRAV,
  730. 0x2A11: EXTRAV,
  731. 0x2A12: EXTRAV,
  732. 0x2A13: EXTRAV,
  733. 0x2A14: EXTRAV,
  734. 0x2A15: EXTRAV,
  735. 0x2A16: EXTRAV,
  736. 0x2A17: EXTRAV,
  737. 0x2A18: EXTRAV,
  738. 0x2A19: EXTRAV,
  739. 0x2A1A: EXTRAV,
  740. 0x2A1B: EXTRAV,
  741. 0x2A1C: EXTRAV,
  742. 0x2AFC: EXTRAV,
  743. 0x2AFF: EXTRAV,
  744. 0x2B45: EXTRAH,
  745. 0x2B46:
  746. {
  747. dir: H,
  748. HW: [[0.818,SHAPES]],
  749. stretch: {rep:[0xE039,SIZE5], right:[0x2B46,SHAPES]}
  750. },
  751. 0x3008: {alias: 0x27E8, dir: V},
  752. 0x3009: {alias: 0x27E9, dir: V},
  753. 0xFE37: {alias: 0x23DE, dir: H},
  754. 0xFE38: {alias: 0x23DF, dir: H}
  755. }
  756. }
  757. });
  758. MathJax.Hub.Register.LoadHook(HTMLCSS.fontDir+"/Main/Regular/Main.js",function () {
  759. HTMLCSS.FONTDATA.FONTS[MAIN][0x22EE][0] += 400; // adjust height for \vdots
  760. HTMLCSS.FONTDATA.FONTS[MAIN][0x22F1][0] += 500; // adjust height for \ddots
  761. HTMLCSS.FONTDATA.FONTS[MAIN][0x2212][0] = HTMLCSS.FONTDATA.FONTS[MAIN][0x002B][0]; // - needs height and depth of +
  762. HTMLCSS.FONTDATA.FONTS[MAIN][0x2212][1] = HTMLCSS.FONTDATA.FONTS[MAIN][0x002B][1]; // - needs height and depth of +
  763. HTMLCSS.FONTDATA.FONTS[MAIN][0x003D][1] += 100; // adjust depth for = (double arrow extender)
  764. });
  765. MathJax.Hub.Register.LoadHook(HTMLCSS.fontDir+"/Size5/Regular/Main.js",function () {
  766. var u;
  767. u = HTMLCSS.FONTDATA.DELIMITERS[0x23DE].stretch.rep[0];
  768. HTMLCSS.FONTDATA.FONTS[SIZE5][u][0] += 200; // adjust height for brace extender
  769. HTMLCSS.FONTDATA.FONTS[SIZE5][u][1] += 200; // adjust depth for brace extender
  770. u = HTMLCSS.FONTDATA.DELIMITERS[0x23DF].stretch.rep[0];
  771. HTMLCSS.FONTDATA.FONTS[SIZE5][u][0] += 200; // adjust height for brace extender
  772. HTMLCSS.FONTDATA.FONTS[SIZE5][u][1] += 200; // adjust depth for brace extender
  773. });
  774. AJAX.loadComplete(HTMLCSS.fontDir + "/fontdata.js");
  775. })(MathJax.OutputJax["HTML-CSS"],MathJax.ElementJax.mml,MathJax.Ajax);