fontdata.js 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698
  1. /*************************************************************
  2. *
  3. * MathJax/jax/output/SVG/fonts/Latin-Modern/fontdata.js
  4. *
  5. * Initializes the SVG OutputJax to use the Latin-Modern fonts
  6. * Copyright (c) 2013-2017 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 (SVG,MML,AJAX,HUB) {
  21. var VERSION = "2.7.2";
  22. var ALPHABETS = "LatinModernMathJax_Alphabets",
  23. ARROWS = "LatinModernMathJax_Arrows",
  24. DOUBLESTRUCK = "LatinModernMathJax_DoubleStruck",
  25. FRAKTUR = "LatinModernMathJax_Fraktur",
  26. LATIN = "LatinModernMathJax_Latin",
  27. MAIN = "LatinModernMathJax_Main",
  28. MARKS = "LatinModernMathJax_Marks",
  29. MISC = "LatinModernMathJax_Misc",
  30. MONOSPACE = "LatinModernMathJax_Monospace",
  31. NONUNICODE = "LatinModernMathJax_NonUnicode",
  32. NORMAL = "LatinModernMathJax_Normal",
  33. OPERATORS = "LatinModernMathJax_Operators",
  34. SANSSERIF = "LatinModernMathJax_SansSerif",
  35. SCRIPT = "LatinModernMathJax_Script",
  36. SHAPES = "LatinModernMathJax_Shapes",
  37. SIZE1 = "LatinModernMathJax_Size1",
  38. SIZE2 = "LatinModernMathJax_Size2",
  39. SIZE3 = "LatinModernMathJax_Size3",
  40. SIZE4 = "LatinModernMathJax_Size4",
  41. SIZE5 = "LatinModernMathJax_Size5",
  42. SIZE6 = "LatinModernMathJax_Size6",
  43. SIZE7 = "LatinModernMathJax_Size7",
  44. SYMBOLS = "LatinModernMathJax_Symbols",
  45. VARIANTS = "LatinModernMathJax_Variants";
  46. var H = "H", V = "V", EXTRAH = {load:"extra", dir:H}, EXTRAV = {load:"extra", dir:V};
  47. SVG.Augment({
  48. FONTDATA: {
  49. version: VERSION,
  50. baselineskip: 1200,
  51. lineH: 800, lineD: 200,
  52. FONTS: {
  53. "LatinModernMathJax_Alphabets": "Alphabets/Regular/Main.js",
  54. "LatinModernMathJax_Arrows": "Arrows/Regular/Main.js",
  55. "LatinModernMathJax_DoubleStruck": "DoubleStruck/Regular/Main.js",
  56. "LatinModernMathJax_Fraktur": "Fraktur/Regular/Main.js",
  57. "LatinModernMathJax_Latin": "Latin/Regular/Main.js",
  58. "LatinModernMathJax_Main": "Main/Regular/Main.js",
  59. "LatinModernMathJax_Marks": "Marks/Regular/Main.js",
  60. "LatinModernMathJax_Misc": "Misc/Regular/Main.js",
  61. "LatinModernMathJax_Monospace": "Monospace/Regular/Main.js",
  62. "LatinModernMathJax_NonUnicode": "NonUnicode/Regular/Main.js",
  63. "LatinModernMathJax_Normal": "Normal/Regular/Main.js",
  64. "LatinModernMathJax_Operators": "Operators/Regular/Main.js",
  65. "LatinModernMathJax_SansSerif": "SansSerif/Regular/Main.js",
  66. "LatinModernMathJax_Script": "Script/Regular/Main.js",
  67. "LatinModernMathJax_Shapes": "Shapes/Regular/Main.js",
  68. "LatinModernMathJax_Size1": "Size1/Regular/Main.js",
  69. "LatinModernMathJax_Size2": "Size2/Regular/Main.js",
  70. "LatinModernMathJax_Size3": "Size3/Regular/Main.js",
  71. "LatinModernMathJax_Size4": "Size4/Regular/Main.js",
  72. "LatinModernMathJax_Size5": "Size5/Regular/Main.js",
  73. "LatinModernMathJax_Size6": "Size6/Regular/Main.js",
  74. "LatinModernMathJax_Size7": "Size7/Regular/Main.js",
  75. "LatinModernMathJax_Symbols": "Symbols/Regular/Main.js",
  76. "LatinModernMathJax_Variants": "Variants/Regular/Main.js"
  77. },
  78. VARIANT: {
  79. "normal": {fonts: [MAIN,NORMAL,MONOSPACE,LATIN,ALPHABETS,MARKS,ARROWS,OPERATORS,SYMBOLS,SHAPES,MISC,VARIANTS,NONUNICODE,SIZE1]},
  80. "bold": {fonts: [MAIN,NORMAL,MONOSPACE,LATIN,ALPHABETS,MARKS,ARROWS,OPERATORS,SYMBOLS,SHAPES,MISC,VARIANTS,NONUNICODE,SIZE1], bold:true
  81. , offsetA: 0x1D400, offsetG: 0x1D6A8, offsetN: 0x1D7CE},
  82. "italic": {fonts: [MAIN,NORMAL,MONOSPACE,LATIN,ALPHABETS,MARKS,ARROWS,OPERATORS,SYMBOLS,SHAPES,MISC,VARIANTS,NONUNICODE,SIZE1], italic:true, offsetA: 0x1D434, offsetG: 0x1D6E2, remap: {0x1D455: 0x210E}},
  83. "bold-italic": {fonts: [MAIN,NORMAL,MONOSPACE,LATIN,ALPHABETS,MARKS,ARROWS,OPERATORS,SYMBOLS,SHAPES,MISC,VARIANTS,NONUNICODE,SIZE1], bold: true, italic:true, offsetA: 0x1D468, offsetG: 0x1D71C},
  84. "double-struck": {
  85. fonts: [DOUBLESTRUCK],
  86. offsetA: 0x1D538,
  87. offsetN: 0x1D7D8,
  88. remap: {0x1D53A: 0x2102, 0x1D53F: 0x210D, 0x1D545: 0x2115, 0x1D547: 0x2119, 0x1D548: 0x211A, 0x1D549: 0x211D, 0x1D551: 0x2124}
  89. },
  90. "fraktur": {
  91. fonts: [FRAKTUR],
  92. offsetA: 0x1D504,
  93. remap: {0x1D506: 0x212D, 0x1D50B: 0x210C, 0x1D50C: 0x2111, 0x1D515: 0x211C, 0x1D51D: 0x2128}
  94. },
  95. "bold-fraktur": {
  96. fonts: [FRAKTUR], bold:true,
  97. offsetA: 0x1D56C
  98. },
  99. "script": {
  100. fonts: [SCRIPT], italic:true,
  101. offsetA: 0x1D49C,
  102. remap: {0x1D49D: 0x212C, 0x1D4A0: 0x2130, 0x1D4A1: 0x2131, 0x1D4A3: 0x210B, 0x1D4A4: 0x2110, 0x1D4A7: 0x2112, 0x1D4A8: 0x2133, 0x1D4AD: 0x211B, 0x1D4BA: 0x212F, 0x1D4BC: 0x210A, 0x1D4C4: 0x2134}
  103. },
  104. "bold-script": {
  105. fonts: [SCRIPT], bold:true, italic:true,
  106. offsetA: 0x1D4D0
  107. },
  108. "sans-serif": {
  109. fonts: [SANSSERIF],
  110. offsetA: 0x1D5A0,
  111. offsetN: 0x1D7E2
  112. },
  113. "bold-sans-serif": {
  114. fonts: [SANSSERIF], bold:true,
  115. offsetA: 0x1D5D4,
  116. offsetN: 0x1D7EC,
  117. offsetG: 0x1D756
  118. },
  119. "sans-serif-italic": {
  120. fonts: [SANSSERIF], italic: true,
  121. offsetA: 0x1D608
  122. },
  123. "sans-serif-bold-italic": {
  124. fonts: [SANSSERIF], bold:true, italic: true,
  125. offsetA: 0x1D63C,
  126. offsetG: 0x1D790
  127. },
  128. "monospace": {
  129. fonts: [MONOSPACE],
  130. offsetA: 0x1D670,
  131. offsetN: 0x1D7F6
  132. },
  133. "-Latin-Modern-variant": {fonts: [VARIANTS,MAIN,NORMAL,MONOSPACE,LATIN,ALPHABETS,MARKS,ARROWS,OPERATORS,SYMBOLS,SHAPES,MISC,NONUNICODE,SIZE1]},
  134. "-tex-caligraphic": {fonts: [MAIN,NORMAL,MONOSPACE,LATIN,ALPHABETS,MARKS,ARROWS,OPERATORS,SYMBOLS,SHAPES,MISC,VARIANTS,NONUNICODE,SIZE1], italic: true},
  135. "-tex-oldstyle": {fonts: [MAIN,NORMAL,MONOSPACE,LATIN,ALPHABETS,MARKS,ARROWS,OPERATORS,SYMBOLS,SHAPES,MISC,VARIANTS,NONUNICODE,SIZE1]},
  136. "-tex-caligraphic-bold": {fonts: [MAIN,NORMAL,MONOSPACE,LATIN,ALPHABETS,MARKS,ARROWS,OPERATORS,SYMBOLS,SHAPES,MISC,VARIANTS,NONUNICODE,SIZE1], italic: true, bold: true},
  137. "-tex-oldstyle-bold": {fonts: [MAIN,NORMAL,MONOSPACE,LATIN,ALPHABETS,MARKS,ARROWS,OPERATORS,SYMBOLS,SHAPES,MISC,VARIANTS,NONUNICODE,SIZE1], bold: true},
  138. "-tex-mathit": {fonts: [MAIN,NORMAL,MONOSPACE,LATIN,ALPHABETS,MARKS,ARROWS,OPERATORS,SYMBOLS,SHAPES,MISC,VARIANTS,NONUNICODE,SIZE1], italic:true, noIC:true},
  139. "-largeOp": {fonts:[SIZE1,MAIN]},
  140. "-smallOp": {}
  141. },
  142. RANGES: [
  143. {name: "alpha", low: 0x61, high: 0x7A, offset: "A", add: 26},
  144. {name: "Alpha", low: 0x41, high: 0x5A, offset: "A"},
  145. {name: "number", low: 0x30, high: 0x39, offset: "N"},
  146. {name: "greek", low: 0x03B1, high: 0x03C9, offset: "G", add: 26},
  147. {name: "Greek", low: 0x0391, high: 0x03F6, offset: "G",
  148. remap: {0x03F5: 52, 0x03D1: 53, 0x03F0: 54, 0x03D5: 55, 0x03F1: 56, 0x03D6: 57, 0x03F4: 17}}
  149. ],
  150. RULECHAR: 0x2212,
  151. REMAP: {
  152. 0xA: 0x20,
  153. 0x25C2: 0x25C0,
  154. 0x3008: 0x27E8,
  155. 0x3009: 0x27E9,
  156. 0x2758: 0x2223,
  157. 0x25B8: 0x25B6,
  158. 0x03D2: 0x03A5,
  159. 0x25B4: 0x25B2,
  160. 0x25B5: 0x25B3,
  161. 0xFE37: 0x23DE,
  162. 0xFE38: 0x23DF,
  163. 0x02B9: 0x2032,
  164. 0x25FB: 0x25A1,
  165. 0x25FC: 0x25A0,
  166. 0x25BE: 0x25BC,
  167. 0x203E: 0x0305,
  168. 0x25BF: 0x25BD
  169. },
  170. REMAPACCENT: {
  171. "\u007E": "\u0303",
  172. "\u2192": "\u20D7",
  173. "\u0060": "\u0300",
  174. "\u005E": "\u0302",
  175. "\u00B4": "\u0301",
  176. "\u2032": "\u0301",
  177. "\u2035": "\u0300"
  178. },
  179. REMAPACCENTUNDER: {
  180. },
  181. DELIMITERS: {
  182. 0x28:
  183. {
  184. dir: V,
  185. HW: [[996,MAIN], [1094,SIZE1], [1194,SIZE2], [1444,SIZE3], [1792,SIZE4], [2092,SIZE5], [2392,SIZE6], [2990,SIZE7]],
  186. stretch: {bot:[0x239D,SYMBOLS], ext:[0x239C,SYMBOLS], top:[0x239B,SYMBOLS]}
  187. },
  188. 0x29:
  189. {
  190. dir: V,
  191. HW: [[996,MAIN], [1094,SIZE1], [1194,SIZE2], [1444,SIZE3], [1792,SIZE4], [2092,SIZE5], [2392,SIZE6], [2990,SIZE7]],
  192. stretch: {bot:[0x23A0,SYMBOLS], ext:[0x239F,SYMBOLS], top:[0x239E,SYMBOLS]}
  193. },
  194. 0x2D: {alias: 0x2212, dir: H},
  195. 0x2F:
  196. {
  197. dir: V,
  198. HW: [[1000,MAIN], [1310,SIZE1], [1716,SIZE2], [1771,SIZE2,1.032], [2248,SIZE3], [2944,SIZE4], [3858,SIZE5], [5054,SIZE6], [6620,SIZE7]]
  199. },
  200. 0x3D:
  201. {
  202. dir: H,
  203. HW: [[666,MAIN]],
  204. stretch: {left:[0xE000,SIZE7], rep:[0xE001,SIZE7], right:[0xE002,SIZE7]}
  205. },
  206. 0x5B:
  207. {
  208. dir: V,
  209. HW: [[1000,MAIN], [1100,SIZE1], [1200,SIZE2], [1450,SIZE3], [1800,SIZE4], [2100,SIZE5], [2400,SIZE6], [3000,SIZE7]],
  210. stretch: {bot:[0x23A3,SYMBOLS], ext:[0x23A2,SYMBOLS], top:[0x23A1,SYMBOLS]}
  211. },
  212. 0x5C:
  213. {
  214. dir: V,
  215. HW: [[1000,MAIN], [1310,SIZE1], [1716,SIZE2], [1771,SIZE2,1.032], [2248,SIZE3], [2944,SIZE4], [3858,SIZE5], [5054,SIZE6], [6620,SIZE7]]
  216. },
  217. 0x5D:
  218. {
  219. dir: V,
  220. HW: [[1000,MAIN], [1100,SIZE1], [1200,SIZE2], [1450,SIZE3], [1800,SIZE4], [2100,SIZE5], [2400,SIZE6], [3000,SIZE7]],
  221. stretch: {bot:[0x23A6,SYMBOLS], ext:[0x23A5,SYMBOLS], top:[0x23A4,SYMBOLS]}
  222. },
  223. 0x5E: {alias: 0x302, dir: H},
  224. 0x5F: {alias: 0x332, dir: H},
  225. 0x7B:
  226. {
  227. dir: V,
  228. HW: [[1000,MAIN], [1100,SIZE1], [1200,SIZE2], [1450,SIZE3], [1800,SIZE4], [2100,SIZE5], [2400,SIZE6], [3000,SIZE7]],
  229. stretch: {bot:[0x23A9,SYMBOLS], ext:[0xE003,SIZE7], mid:[0x23A8,SYMBOLS], top:[0x23A7,SYMBOLS]}
  230. },
  231. 0x7C:
  232. {
  233. dir: V,
  234. HW: [[1000,MAIN], [1202,SIZE1], [1444,SIZE2], [1734,SIZE3], [2084,SIZE4], [2502,SIZE5], [3004,SIZE6], [3606,SIZE7]],
  235. stretch: {bot:[0xE004,SIZE7], ext:[0xE005,SIZE7], top:[0xE006,SIZE7]}
  236. },
  237. 0x7D:
  238. {
  239. dir: V,
  240. HW: [[1000,MAIN], [1100,SIZE1], [1200,SIZE2], [1450,SIZE3], [1800,SIZE4], [2100,SIZE5], [2400,SIZE6], [3000,SIZE7]],
  241. stretch: {bot:[0x23AD,SYMBOLS], ext:[0xE007,SIZE7], mid:[0x23AC,SYMBOLS], top:[0x23AB,SYMBOLS]}
  242. },
  243. 0x7E: {alias: 0x303, dir: H},
  244. 0xAF: {alias: 0x332, dir: H},
  245. 0x2C6: {alias: 0x302, dir: H},
  246. 0x2C9: {alias: 0x2212, dir: H},
  247. 0x2DC: {alias: 0x303, dir: H},
  248. 0x302:
  249. {
  250. dir: H,
  251. HW: [[364,MAIN], [644,SIZE1], [768,SIZE2], [919,SIZE3], [1100,SIZE4], [1320,SIZE5], [1581,SIZE6], [1896,SIZE7]]
  252. },
  253. 0x303:
  254. {
  255. dir: H,
  256. HW: [[370,MAIN], [652,SIZE1], [778,SIZE2], [931,SIZE3], [1115,SIZE4], [1335,SIZE5], [1599,SIZE6], [1915,SIZE7]]
  257. },
  258. 0x2212:
  259. {
  260. HW: [],
  261. stretch: {rep:[0x2212,MAIN,0,0,0,-.31,-.31]}
  262. },
  263. 0x306: EXTRAH,
  264. 0x30C:
  265. {
  266. dir: H,
  267. HW: [[364,MAIN], [644,SIZE1], [768,SIZE2], [919,SIZE3], [1100,SIZE4], [1320,SIZE5], [1581,SIZE6], [1896,SIZE7]]
  268. },
  269. 0x311: EXTRAH,
  270. 0x32C: EXTRAH,
  271. 0x32D: EXTRAH,
  272. 0x32E: EXTRAH,
  273. 0x32F: EXTRAH,
  274. 0x330: EXTRAH,
  275. 0x332:
  276. {
  277. dir: H,
  278. HW: [[392,MARKS], [568,SIZE1]],
  279. stretch: {left:[0xE0F5,SIZE7], rep:[0xE0F6,SIZE7], right:[0xE0F7,SIZE7]}
  280. },
  281. 0x333: EXTRAH,
  282. 0x33F: EXTRAH,
  283. 0x2015: {alias: 0x2212, dir: H},
  284. 0x2016:
  285. {
  286. dir: V,
  287. HW: [[1000,MAIN], [1202,SIZE1], [1444,SIZE2], [1734,SIZE3], [2084,SIZE4], [2502,SIZE5], [3004,SIZE6], [3606,SIZE7]],
  288. stretch: {bot:[0xE12A,SIZE7], ext:[0xE12B,SIZE7], top:[0xE12C,SIZE7]}
  289. },
  290. 0x2017: {alias: 0x2212, dir: H},
  291. 0x203E: {alias: 0x2212, dir: H},
  292. 0x2044:
  293. {
  294. dir: V,
  295. HW: [[1000,MAIN], [1310,SIZE1], [1716,SIZE2], [2248,SIZE3], [2944,SIZE4], [3858,SIZE5], [5054,SIZE6], [6620,SIZE7]]
  296. },
  297. 0x20D0: EXTRAH,
  298. 0x20D1: EXTRAH,
  299. 0x20D6: EXTRAH,
  300. 0x20D7: EXTRAH,
  301. 0x20E1: EXTRAH,
  302. 0x20E9: EXTRAH,
  303. 0x20EC: EXTRAH,
  304. 0x20ED: EXTRAH,
  305. 0x20EE: EXTRAH,
  306. 0x20EF: EXTRAH,
  307. 0x2190:
  308. {
  309. dir: H,
  310. HW: [[885,MAIN], [1351,SIZE1]],
  311. stretch: {left:[0xE023,SIZE7], rep:[0xE024,SIZE7], right:[0xE025,SIZE7]}
  312. },
  313. 0x2191:
  314. {
  315. dir: V,
  316. HW: [[882,MAIN], [1348,SIZE1]],
  317. stretch: {bot:[0xE029,SIZE7], ext:[0xE02A,SIZE7], top:[0xE02B,SIZE7]}
  318. },
  319. 0x2192:
  320. {
  321. dir: H,
  322. HW: [[885,MAIN], [1351,SIZE1]],
  323. stretch: {left:[0xE026,SIZE7], rep:[0xE027,SIZE7], right:[0xE028,SIZE7]}
  324. },
  325. 0x2193:
  326. {
  327. dir: V,
  328. HW: [[882,MAIN], [1348,SIZE1]],
  329. stretch: {bot:[0xE02C,SIZE7], ext:[0xE02D,SIZE7], top:[0xE02E,SIZE7]}
  330. },
  331. 0x2194:
  332. {
  333. dir: H,
  334. HW: [[884,MAIN], [1330,SIZE1]],
  335. stretch: {left:[0xE037,SIZE7], rep:[0xE038,SIZE7], right:[0xE039,SIZE7]}
  336. },
  337. 0x2195:
  338. {
  339. dir: V,
  340. HW: [[1014,MAIN], [1014,SIZE1]],
  341. stretch: {bot:[0xE03A,SIZE7], ext:[0xE03B,SIZE7], top:[0xE03C,SIZE7]}
  342. },
  343. 0x2196: EXTRAV,
  344. 0x2197: EXTRAV,
  345. 0x2198: EXTRAV,
  346. 0x2199: EXTRAV,
  347. 0x219A: EXTRAH,
  348. 0x219B: EXTRAH,
  349. 0x219E: EXTRAH,
  350. 0x219F: EXTRAV,
  351. 0x21A0: EXTRAH,
  352. 0x21A1: EXTRAV,
  353. 0x21A2: EXTRAH,
  354. 0x21A3: EXTRAH,
  355. 0x21A4:
  356. {
  357. dir: H,
  358. HW: [[865,ARROWS], [1331,SIZE1]],
  359. stretch: {left:[0xE053,SIZE7], rep:[0xE054,SIZE7], right:[0xE055,SIZE7]}
  360. },
  361. 0x21A5: EXTRAV,
  362. 0x21A6:
  363. {
  364. dir: H,
  365. HW: [[865,MAIN], [1331,SIZE1]],
  366. stretch: {left:[0xE056,SIZE7], rep:[0xE057,SIZE7], right:[0xE058,SIZE7]}
  367. },
  368. 0x21A7: EXTRAV,
  369. 0x21A9: EXTRAH,
  370. 0x21AA: EXTRAH,
  371. 0x21AB: EXTRAH,
  372. 0x21AC: EXTRAH,
  373. 0x21AD: EXTRAH,
  374. 0x21AE: EXTRAH,
  375. 0x21B0: EXTRAV,
  376. 0x21B1: EXTRAV,
  377. 0x21B2: EXTRAV,
  378. 0x21B3: EXTRAV,
  379. 0x21B6: EXTRAH,
  380. 0x21B7: EXTRAH,
  381. 0x21BC: EXTRAH,
  382. 0x21BD: EXTRAH,
  383. 0x21BE: EXTRAV,
  384. 0x21BF: EXTRAV,
  385. 0x21C0: EXTRAH,
  386. 0x21C1: EXTRAH,
  387. 0x21C2: EXTRAV,
  388. 0x21C3: EXTRAV,
  389. 0x21C4: EXTRAH,
  390. 0x21C5: EXTRAV,
  391. 0x21C6: EXTRAH,
  392. 0x21C7: EXTRAH,
  393. 0x21C8: EXTRAV,
  394. 0x21C9: EXTRAH,
  395. 0x21CA: EXTRAV,
  396. 0x21CB: EXTRAH,
  397. 0x21CC: EXTRAH,
  398. 0x21CD: EXTRAH,
  399. 0x21CE: EXTRAH,
  400. 0x21CF: EXTRAH,
  401. 0x21D0:
  402. {
  403. dir: H,
  404. HW: [[879,MAIN], [1345,SIZE1]],
  405. stretch: {left:[0xE0A7,SIZE7], rep:[0xE0A8,SIZE7], right:[0xE0A9,SIZE7]}
  406. },
  407. 0x21D1:
  408. {
  409. dir: V,
  410. HW: [[879,MAIN], [1345,SIZE1]],
  411. stretch: {bot:[0xE0AD,SIZE7], ext:[0xE0AE,SIZE7], top:[0xE0AF,SIZE7]}
  412. },
  413. 0x21D2:
  414. {
  415. dir: H,
  416. HW: [[879,MAIN], [1345,SIZE1]],
  417. stretch: {left:[0xE0AA,SIZE7], rep:[0xE0AB,SIZE7], right:[0xE0AC,SIZE7]}
  418. },
  419. 0x21D3:
  420. {
  421. dir: V,
  422. HW: [[879,MAIN], [1345,SIZE1]],
  423. stretch: {bot:[0xE0B0,SIZE7], ext:[0xE0B1,SIZE7], top:[0xE0B2,SIZE7]}
  424. },
  425. 0x21D4:
  426. {
  427. dir: H,
  428. HW: [[956,MAIN], [1422,SIZE1]],
  429. stretch: {left:[0xE0B3,SIZE7], rep:[0xE0B4,SIZE7], right:[0xE0B5,SIZE7]}
  430. },
  431. 0x21D5:
  432. {
  433. dir: V,
  434. HW: [[956,MAIN], [1422,SIZE1]],
  435. stretch: {bot:[0xE0B6,SIZE7], ext:[0xE0B7,SIZE7], top:[0xE0B8,SIZE7]}
  436. },
  437. 0x21D6: EXTRAV,
  438. 0x21D7: EXTRAV,
  439. 0x21D8: EXTRAV,
  440. 0x21D9: EXTRAV,
  441. 0x21DA: EXTRAH,
  442. 0x21DB: EXTRAH,
  443. 0x21DC: EXTRAH,
  444. 0x21DD: EXTRAH,
  445. 0x21E6: EXTRAH,
  446. 0x21E7: EXTRAV,
  447. 0x21E8: EXTRAH,
  448. 0x21E9: EXTRAV,
  449. 0x21F3: EXTRAV,
  450. 0x21F5: EXTRAV,
  451. 0x21F6: EXTRAH,
  452. 0x220F: EXTRAV,
  453. 0x2210: EXTRAV,
  454. 0x2211: EXTRAV,
  455. 0x2212:
  456. {
  457. dir: H,
  458. HW: [[666,MAIN]],
  459. stretch: {left:[0xE127,SIZE7], rep:[0xE128,SIZE7], right:[0xE129,SIZE7]}
  460. },
  461. 0x2215: {alias: 0x2044, dir: V},
  462. 0x221A:
  463. {
  464. dir: V,
  465. HW: [[1000,MAIN], [1200,SIZE1], [1800,SIZE2], [2400,SIZE3], [3000,SIZE4]],
  466. stretch: {bot:[0x23B7,SYMBOLS], ext:[0xE133,SIZE7], top:[0xE134,SIZE7]}
  467. },
  468. 0x2223:
  469. {
  470. dir: V,
  471. HW: [[1000,MAIN], [1202,SIZE1], [1444,SIZE2], [1734,SIZE3], [2084,SIZE4], [2502,SIZE5], [3004,SIZE6], [3606,SIZE7]],
  472. stretch: {bot:[0xE004,SIZE7], ext:[0xE005,SIZE7], top:[0xE006,SIZE7]}
  473. },
  474. 0x2225:
  475. {
  476. dir: V,
  477. HW: [[1000,MAIN], [1202,SIZE1], [1444,SIZE2], [1734,SIZE3], [2084,SIZE4], [2502,SIZE5], [3004,SIZE6], [3606,SIZE7]],
  478. stretch: {bot:[0xE12A,SIZE7], ext:[0xE12B,SIZE7], top:[0xE12C,SIZE7]}
  479. },
  480. 0x222B: EXTRAV,
  481. 0x222C: EXTRAV,
  482. 0x222D: EXTRAV,
  483. 0x222E: EXTRAV,
  484. 0x222F: EXTRAV,
  485. 0x2230: EXTRAV,
  486. 0x2231: EXTRAV,
  487. 0x2232: EXTRAV,
  488. 0x2233: EXTRAV,
  489. 0x2261: EXTRAH,
  490. 0x2263: EXTRAH,
  491. 0x22A2: EXTRAV,
  492. 0x22A3: EXTRAV,
  493. 0x22A4: EXTRAV,
  494. 0x22A5: EXTRAV,
  495. 0x22C0: EXTRAV,
  496. 0x22C1: EXTRAV,
  497. 0x22C2: EXTRAV,
  498. 0x22C3: EXTRAV,
  499. 0x2308:
  500. {
  501. dir: V,
  502. HW: [[1000,MAIN], [1100,SIZE1], [1200,SIZE2], [1450,SIZE3], [1800,SIZE4], [2100,SIZE5], [2400,SIZE6], [3000,SIZE7]],
  503. stretch: {ext:[0x23A2,SYMBOLS], top:[0x23A1,SYMBOLS]}
  504. },
  505. 0x2309:
  506. {
  507. dir: V,
  508. HW: [[1000,MAIN], [1100,SIZE1], [1200,SIZE2], [1450,SIZE3], [1800,SIZE4], [2100,SIZE5], [2400,SIZE6], [3000,SIZE7]],
  509. stretch: {ext:[0x23A5,SYMBOLS], top:[0x23A4,SYMBOLS]}
  510. },
  511. 0x230A:
  512. {
  513. dir: V,
  514. HW: [[1000,MAIN], [1100,SIZE1], [1200,SIZE2], [1450,SIZE3], [1800,SIZE4], [2100,SIZE5], [2400,SIZE6], [3000,SIZE7]],
  515. stretch: {bot:[0x23A3,SYMBOLS], ext:[0x23A2,SYMBOLS]}
  516. },
  517. 0x230B:
  518. {
  519. dir: V,
  520. HW: [[1000,MAIN], [1100,SIZE1], [1200,SIZE2], [1450,SIZE3], [1800,SIZE4], [2100,SIZE5], [2400,SIZE6], [3000,SIZE7]],
  521. stretch: {bot:[0x23A6,SYMBOLS], ext:[0x23A5,SYMBOLS]}
  522. },
  523. 0x2312: {alias: 0x23DC, dir:H},
  524. 0x2322: {alias: 0x23DC, dir:H},
  525. 0x2323: {alias: 0x23DD, dir:H},
  526. 0x2329:
  527. {
  528. dir: V,
  529. HW: [[1000,SYMBOLS], [1100,SIZE1], [1200,SIZE2], [1450,SIZE3], [1800,SIZE4], [2100,SIZE5], [2400,SIZE6], [3000,SIZE7]]
  530. },
  531. 0x232A:
  532. {
  533. dir: V,
  534. HW: [[1000,SYMBOLS], [1100,SIZE1], [1200,SIZE2], [1450,SIZE3], [1800,SIZE4], [2100,SIZE5], [2400,SIZE6], [3000,SIZE7]]
  535. },
  536. 0x23AA:
  537. {
  538. dir: V,
  539. HW: [[748,SYMBOLS]],
  540. stretch: {ext:[0x23AA,SYMBOLS]}
  541. },
  542. 0x23AF: {alias: 0x2212, dir: H},
  543. 0x23B0:
  544. {
  545. dir: V,
  546. HW: [[750,SYMBOLS,null,0x23A7]],
  547. stretch: {top:[0x23A7,SYMBOLS], ext:[0x23AA,SYMBOLS], bot:[0x23AD,SYMBOLS]}
  548. },
  549. 0x23B1:
  550. {
  551. dir: V,
  552. HW: [[750,SYMBOLS,null,0x23AB]],
  553. stretch: {top:[0x23AB,SYMBOLS], ext:[0x23AA,SYMBOLS], bot:[0x23A9,SYMBOLS]}
  554. },
  555. 0x23B4: EXTRAH,
  556. 0x23B5: EXTRAH,
  557. 0x23D0:
  558. {
  559. dir: V,
  560. HW: [[1000,MAIN,null,0x7C], [1309,MAIN,1.309,0x7C], [1771,MAIN,1.771,0x7C], [2233,MAIN,2.233,0x7C], [2695,MAIN,2.695,0x7C]],
  561. stretch: {ext:[0x7C,MAIN]}
  562. },
  563. 0x23DC: EXTRAH,
  564. 0x23DD: EXTRAH,
  565. 0x23DE:
  566. {
  567. dir: H,
  568. HW: [[492,MAIN], [993,SIZE1], [1494,SIZE2], [1996,SIZE3], [2498,SIZE4], [3000,SIZE5], [3502,SIZE6], [4006,SIZE7]],
  569. stretch: {left:[0xE10D,SIZE7], rep:[0xE10E,SIZE7], mid:[0xE10F,SIZE7], right:[0xE110,SIZE7]}
  570. },
  571. 0x23DF:
  572. {
  573. dir: H,
  574. HW: [[492,MAIN], [993,SIZE1], [1494,SIZE2], [1996,SIZE3], [2498,SIZE4], [3000,SIZE5], [3502,SIZE6], [4006,SIZE7]],
  575. stretch: {left:[0xE111,SIZE7], rep:[0xE112,SIZE7], mid:[0xE113,SIZE7], right:[0xE114,SIZE7]}
  576. },
  577. 0x23E0: EXTRAH,
  578. 0x23E1: EXTRAH,
  579. 0x2500: {alias: 0x2212, dir: H},
  580. 0x27A1: EXTRAH,
  581. 0x27E6: EXTRAV,
  582. 0x27E7: EXTRAV,
  583. 0x27E8:
  584. {
  585. dir: V,
  586. HW: [[1000,MAIN], [1100,SIZE1], [1200,SIZE2], [1450,SIZE3], [1800,SIZE4], [2100,SIZE5], [2400,SIZE6], [3000,SIZE7]]
  587. },
  588. 0x27E9:
  589. {
  590. dir: V,
  591. HW: [[1000,MAIN], [1100,SIZE1], [1200,SIZE2], [1450,SIZE3], [1800,SIZE4], [2100,SIZE5], [2400,SIZE6], [3000,SIZE7]]
  592. },
  593. 0x27EA: EXTRAV,
  594. 0x27EB: EXTRAV,
  595. 0x27EE:
  596. {
  597. dir: V,
  598. HW: [[1024,MAIN], [1126,SIZE1], [1228,SIZE2], [1482,SIZE3], [1836,SIZE4], [2140,SIZE5], [2444,SIZE6], [3052,SIZE7]],
  599. stretch: {bot:[0xE101,SIZE7], ext:[0xE102,SIZE7], top:[0xE103,SIZE7]}
  600. },
  601. 0x27EF:
  602. {
  603. dir: V,
  604. HW: [[1024,MAIN], [1126,SIZE1], [1228,SIZE2], [1482,SIZE3], [1836,SIZE4], [2140,SIZE5], [2444,SIZE6], [3052,SIZE7]],
  605. stretch: {bot:[0xE104,SIZE7], ext:[0xE105,SIZE7], top:[0xE106,SIZE7]}
  606. },
  607. 0x27F5: {alias: 0x2190, dir: H},
  608. 0x27F6: {alias: 0x2192, dir: H},
  609. 0x27F7: {alias: 0x2194, dir: H},
  610. 0x27F8: {alias: 0x21D0, dir: H},
  611. 0x27F9: {alias: 0x21D2, dir: H},
  612. 0x27FA: {alias: 0x21D4, dir: H},
  613. 0x27FB: {alias: 0x21A4, dir: H},
  614. 0x27FC: {alias: 0x21A6, dir: H},
  615. 0x27FD: {alias: 0x2906, dir: H},
  616. 0x27FE: {alias: 0x2907, dir: H},
  617. 0x2906:
  618. {
  619. dir: H,
  620. HW: [[879,ARROWS], [1325,SIZE1]],
  621. stretch: {left:[0xE0C5,SIZE7], rep:[0xE0C6,SIZE7], right:[0xE0C7,SIZE7]}
  622. },
  623. 0x2907:
  624. {
  625. dir: H,
  626. HW: [[879,ARROWS], [1325,SIZE1]],
  627. stretch: {left:[0xE0C8,SIZE7], rep:[0xE0C9,SIZE7], right:[0xE0CA,SIZE7]}
  628. },
  629. 0x2A00: EXTRAV,
  630. 0x2A01: EXTRAV,
  631. 0x2A02: EXTRAV,
  632. 0x2A03: EXTRAV,
  633. 0x2A04: EXTRAV,
  634. 0x2A05: EXTRAV,
  635. 0x2A06: EXTRAV,
  636. 0x2A09: EXTRAV,
  637. 0x2A0C: EXTRAV,
  638. 0x2A11: EXTRAV,
  639. 0x2B04: EXTRAH,
  640. 0x2B05: EXTRAH,
  641. 0x2B06: EXTRAV,
  642. 0x2B07: EXTRAV,
  643. 0x2B0C: EXTRAH,
  644. 0x2B0D: EXTRAV,
  645. 0x2B31: EXTRAH,
  646. 0x3008: {alias: 0x27E8, dir: V},
  647. 0x3009: {alias: 0x27E9, dir: V},
  648. 0xFE37: {alias: 0x23DE, dir: H},
  649. 0xFE38: {alias: 0x23DF, dir: H}
  650. }
  651. }
  652. });
  653. MathJax.Hub.Register.LoadHook(SVG.fontDir+"/Main/Regular/Main.js",function () {
  654. SVG.FONTDATA.FONTS[MAIN][0x2212][0] = SVG.FONTDATA.FONTS[MAIN][0x002B][0]; // - needs height and depth of +
  655. SVG.FONTDATA.FONTS[MAIN][0x2212][1] = SVG.FONTDATA.FONTS[MAIN][0x002B][1]; // - needs height and depth of +
  656. });
  657. MathJax.Hub.Register.LoadHook(SVG.fontDir+"/Size7/Regular/Main.js",function () {
  658. var u;
  659. u = SVG.FONTDATA.DELIMITERS[0x23DE].stretch.rep[0];
  660. SVG.FONTDATA.FONTS[SIZE7][u][0] += 200; // adjust height for brace extender
  661. SVG.FONTDATA.FONTS[SIZE7][u][1] += 200; // adjust depth for brace extender
  662. u = SVG.FONTDATA.DELIMITERS[0x23DF].stretch.rep[0];
  663. SVG.FONTDATA.FONTS[SIZE7][u][0] += 200; // adjust height for brace extender
  664. SVG.FONTDATA.FONTS[SIZE7][u][1] += 200; // adjust depth for brace extender
  665. });
  666. MathJax.Hub.Register.LoadHook(SVG.fontDir+"/Size1/Regular/Main.js",function () {
  667. SVG.FONTDATA.FONTS[SIZE1][0x222B][2] -= 425;
  668. SVG.FONTDATA.FONTS[SIZE1][0x222C][2] -= 425;
  669. SVG.FONTDATA.FONTS[SIZE1][0x222D][2] -= 425;
  670. SVG.FONTDATA.FONTS[SIZE1][0x222E][2] -= 425;
  671. SVG.FONTDATA.FONTS[SIZE1][0x222F][2] -= 425;
  672. SVG.FONTDATA.FONTS[SIZE1][0x2230][2] -= 425;
  673. SVG.FONTDATA.FONTS[SIZE1][0x2231][2] -= 425;
  674. SVG.FONTDATA.FONTS[SIZE1][0x2232][2] -= 425;
  675. SVG.FONTDATA.FONTS[SIZE1][0x2233][2] -= 425;
  676. SVG.FONTDATA.FONTS[SIZE1][0x2A0C][2] -= 425;
  677. SVG.FONTDATA.FONTS[SIZE1][0x2A11][2] -= 425;
  678. });
  679. AJAX.loadComplete(SVG.fontDir + "/fontdata.js");
  680. })(MathJax.OutputJax.SVG,MathJax.ElementJax.mml,MathJax.Ajax,MathJax.Hub);