www

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

fontdata.js (25240B)


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