update fonts and metrics so that accents are positioned correctly (#1094)

* update fonts and metrics so that accents are positioned correctly

* fix degree symbol, move more accents into the 0x2c0-0x2df range

* fix accents in Unicode screenshots

* update jest snapshots, update AccentsText to include requested characters

* update fonts submodule, add unicode chars to AccentsText test

* update submodules after merging its PR
This commit is contained in:
Kevin Barabash
2018-01-26 19:46:57 -05:00
committed by GitHub
parent 53203ed92c
commit f03849c831
9 changed files with 230 additions and 208 deletions

View File

@@ -22,22 +22,13 @@ $map{cmr10} = {
0x10 => 0x131, # \imath (roman)
0x11 => 0x237, # \jmath (roman)
0x12 => 0x60, # \grave
0x12 => 0x2CB, # \grave
0x12 => [0x300,-500,0], # \grave (combining)
0x13 => 0xB4, # \acute
0x13 => 0x2CA, # \acute
0x13 => [0x301,-500,0], # \acute (combining)
0x14 => 0x2C7, # \check
0x14 => [0x30C,-500,0], # \check (combining)
0x15 => 0x2D8, # \breve
0x15 => [0x306,-500,0], # \breve (combining)
0x16 => 0xAF, # \bar
0x16 => 0x2C9, # \bar
0x16 => [0x304,-500,0], # \bar (combining)
0x17 => [0xB0,-125,0], # ring above
0x17 => [0x2DA,-125,0], # ring above
0x17 => [0x30A,-625,0], # ring above (combining)
0x17 => [0xB0,-125,0], # \degree
0x17 => 0x02DA, # \r, ring above
[0x21,0x2F] => 0x21, # !, ", #, $, %, &, ', (, ), *, +, comma, -, ., /
0x22 => 0x201D, # "
@@ -51,19 +42,15 @@ $map{cmr10} = {
0x5C => 0x201C, # ``
[0x5D,0x5E] => 0x5D, # ], ^
0x5E => 0x2C6, # \hat
0x5E => [0x302,-500,0], # \hat (combining)
0x5F => [0x2D9,111,0], # \dot
0x5F => [0x307,-389,0], # \dot (combining)
0x5F => 0x2D9, # \dot
0x60 => 0x2018, # `
[0x61,0x7A] => 0x61, # a-z
[0x7B,0x7C] => 0x2013, # \endash, \emdash
0x7B => [0x5F,0,-310], # underline
0x7D => [0x30B,-500,0], # double acute (combining)
0x7D => 0x2DD, # double acute
0x7E => [0x7E,0,-350], # ~
0x7E => 0x2DC, # \tilde
0x7E => [0x303,-500,0], # \tilde (combining)
0x7F => 0xA8, # \ddot
0x7F => [0x308,-500,0], # \ddot (combining)
0x19 => 0xDF, # sharp S
0x1A => 0xE6, # ae ligature
0x1B => 0x153, # oe ligature
@@ -441,12 +428,13 @@ $map{cmti10} = {
[7,8] => 0x3A5, # \Upsilon, \Phi
[9,0xA] => 0x3A8, # \Psi, \Omega
0x12 => [0x300,-511,0], # \grave (combining)
0x13 => [0x301,-511,0], # \acute (combining)
0x14 => [0x30C,-511,0], # \check (combining)
0x15 => [0x306,-511,0], # \breve (combining)
0x16 => [0x304,-511,0], # \bar (combining)
0x17 => [0x30A,-671,0], # ring above (combining)
0x12 => 0x2CB, # \grave
0x13 => 0x2CA, # \acute
0x14 => 0x2C7, # \check
0x15 => 0x2D8, # \breve
0x16 => 0x2C9, # \bar
0x17 => [0xB0,-160,0], # \degree
0x17 => 0x02DA, # \r, ring above
[0x21,0x23] => 0x21, # !, ", #,
0x22 => 0x201D, # "
@@ -461,16 +449,23 @@ $map{cmti10} = {
0x5B => 0x5B, # [
0x5C => 0x201C, # ``
[0x5D,0x5E] => 0x5D, # ], ^
0x5E => [0x302,-511,0], # \hat (combining)
0x5F => [0x307,-409,0], # \dot (combining)
0x5E => 0x2C6, # \hat
0x5F => 0x2D9, # \dot
0x60 => 0x2018, # `
[0x61,0x7A] => 0x61, # a-z
[0x7B,0x7C] => 0x2013, # \endash, \emdash
0x7B => [0x5F,0,-310], # underline
0x7D => [0x30B,-511,0], # double acute (combining)
0x7D => 0x2DD, # double acute
0x7E => [0x7E,0,-350], # ~
0x7E => [0x303,-511,0], # \tilde (combining)
0x7F => [0x308,-511,0], # \ddot (combining)
0x7E => 0x2DC, # \tilde
0x7F => 0xA8, # \ddot
0x19 => 0xDF, # sharp S
0x1A => 0xE6, # ae ligature
0x1B => 0x153, # oe ligature
0x1C => 0xF8, # o with slash
0x1D => 0xC6, # AE ligature
0x1E => 0x152, # OE ligature
0x1F => 0xD8, # O with slash
],
};
@@ -487,22 +482,13 @@ $map{cmbx10} = {
0x10 => 0x131, # \imath (roman bold)
0x11 => 0x237, # \jmath (roman bold)
0x12 => 0x60, # \grave
0x12 => 0x2CB, # \grave
0x12 => [0x300,-575,0], # \grave (combining)
0x13 => 0xB4, # \acute
0x13 => 0x2CA, # \acute
0x13 => [0x301,-575,0], # \acute (combining)
0x14 => 0x2C7, # \check
0x14 => [0x30C,-575,0], # \check (combining)
0x15 => 0x2D8, # \breve
0x15 => [0x306,-575,0], # \breve (combining)
0x16 => 0xAF, # \bar
0x16 => 0x2C9, # \bar
0x16 => [0x304,-575,0], # \bar (combining)
0x17 => [0xB0,-147,0], # ring above
0x17 => [0x2DA,-147,0], # ring above
0x17 => [0x30A,-722,0], # ring above (combining)
0x17 => [0xB0,-147,0], # \degree
0x17 => 0x02DA, # \r, ring above
[0x21,0x2F] => 0x21, # !, ", #, $, %, &, ', (, ), *, +, comma, -, ., /
0x22 => 0x201D, # "
@@ -516,19 +502,22 @@ $map{cmbx10} = {
0x5C => 0x201C, # ``
[0x5D,0x5E] => 0x5D, # ], ^
0x5E => 0x2C6, # \hat
0x5E => [0x302,-575,0], # \hat (combining)
0x5F => [0x2D9,128,0], # \dot
0x5F => [0x307,-447,0], # \dot (combining)
0x5F => 0x2D9, # \dot
0x60 => 0x2018, # `
[0x61,0x7A] => 0x61, # a-z
[0x7B,0x7C] => 0x2013, # \endash, \emdash
0x7B => [0x5F,0,-310], # underline
0x7D => [0x30B,-575,0], # double acute (combining)
0x7D => 0x2DD, # double acute
0x7E => [0x7E,0,-350], # ~
0x7E => 0x2DC, # \tilde
0x7E => [0x303,-575,0], # \tilde (combining)
0x7F => 0xA8, # \ddot
0x7F => [0x308,-575,0], # \ddot (combining)
0x19 => 0xDF, # sharp S
0x1A => 0xE6, # ae ligature
0x1B => 0x153, # oe ligature
0x1C => 0xF8, # o with slash
0x1D => 0xC6, # AE ligature
0x1E => 0x152, # OE ligature
0x1F => 0xD8, # O with slash
],
};
@@ -987,12 +976,13 @@ $map{cmtt10} = {
0x10 => 0x131, # \imath (roman)
0x11 => 0x237, # \jmath (roman)
0x12 => [0x300,-525,0], # \grave (combining)
0x13 => [0x301,-525,0], # \acute (combining)
0x14 => [0x30C,-525,0], # \check (combining)
0x15 => [0x306,-525,0], # \breve (combining)
0x16 => [0x304,-525,0], # \bar (combining)
0x17 => [0x30A,-525,0], # ring above (combining)
0x12 => 0x2CB, # \grave
0x13 => 0x2CA, # \acute
0x14 => 0x2C7, # \check
0x15 => 0x2D8, # \breve
0x16 => 0x2C9, # \bar
0x17 => 0xB0, # \degree
0x17 => 0x02DA, # \r, ring above
0x20 => 0x2423, # graphic representation of space
[0x21,0x7F] => 0x21,
@@ -1024,12 +1014,12 @@ $map{cmssbx10} = {
0x10 => 0x131, # \imath (roman)
0x11 => 0x237, # \jmath (roman)
0x12 => [0x300,-550,0], # \grave (combining)
0x13 => [0x301,-550,0], # \acute (combining)
0x14 => [0x30C,-550,0], # \check (combining)
0x15 => [0x306,-550,0], # \breve (combining)
0x16 => [0x304,-550,0], # \bar (combining)
0x17 => [0x30A,-608,0], # ring above (combining)
0x13 => 0xB4, # \acute
0x14 => 0x2C7, # \check
0x15 => 0x2D8, # \breve
0x16 => 0x2C9, # \bar
0x17 => [0xB0,-58,0], # \degree
0x17 => 0x02DA, # \r, ring above
[0x21,0x2F] => 0x21, # !, ", #, $, %, &, ', (, ), *, +, comma, -, ., /
0x22 => 0x201D, # "
@@ -1042,60 +1032,16 @@ $map{cmssbx10} = {
0x5B => 0x5B, # [
0x5C => 0x201C, # ``
[0x5D,0x5E] => 0x5D, # ], ^
0x5E => [0x302,-550,0], # \hat (combining)
0x5F => [0x307,-428,0], # \dot (combining)
0x5E => 0x2C6, # \hat
0x5F => 0x2D9, # \dot
0x60 => 0x2018, # `
[0x61,0x7A] => 0x61, # a-z
[0x7B,0x7C] => 0x2013, # \endash, \emdash
0x7B => [0x5F,0,-350], # underline
0x7D => [0x30B,-550,0], # double acute (combining)
0x7D => 0x2DD, # double acute
0x7E => [0x7E,0,-350], # ~
0x7E => [0x303,-550,0], # \tilde (combining)
0x7F => [0x308,-550,0], # \ddot (combining)
],
};
$map{cmssi10} = {
"SansSerif-Italic" => [
[0,1] => 0x393, # \Gamma, \Delta
2 => 0x398, # \Theta
3 => 0x39B, # \Lambda
4 => 0x39E, # \Xi
5 => 0x3A0, # \Pi
6 => 0x3A3, # \Sigma
[7,8] => 0x3A5, # \Upsilon, \Phi
[9,0xA] => 0x3A8, # \Psi, \Omega
0x10 => 0x131, # \imath (roman)
0x11 => 0x237, # \jmath (roman)
0x12 => [0x300,-500,0], # \grave (combining)
0x13 => [0x301,-500,0], # \acute (combining)
0x14 => [0x30C,-500,0], # \check (combining)
0x15 => [0x306,-500,0], # \breve (combining)
0x16 => [0x304,-500,0], # \bar (combining)
0x17 => [0x30A,-613,0], # ring above (combining)
[0x21,0x2F] => 0x21, # !, ", #, $, %, &, ', (, ), *, +, comma, -, ., /
0x22 => 0x201D, # "
0x27 => 0x2019, # '
[0x30,0x39] => 0x30, # 0-9
[0x3A,0x3B] => 0x3A, # :, ;
0x3D => 0x3D, # =
[0x3F,0x40] => 0x3F, # ?, @
[0x41,0x5A] => 0x41, # A-Z
0x5B => 0x5B, # [
0x5C => 0x201C, # ``
[0x5D,0x5E] => 0x5D, # ], ^
0x5E => [0x302,-500,0], # \hat (combining)
0x5F => [0x307,-389,0], # \dot (combining)
0x60 => 0x2018, # `
[0x61,0x7A] => 0x61, # a-z
[0x7B,0x7C] => 0x2013, # \endash, \emdash
0x7B => [0x5F,0,-350], # underline
0x7D => [0x30B,-500,0], # double acute (combining)
0x7E => [0x7E,0,-350], # ~
0x7E => [0x303,-500,0], # \tilde (combining)
0x7F => [0x308,-500,0], # \ddot (combining)
0x7E => 0x2DC, # \tilde
0x7F => 0xA8, # \ddot
],
};
@@ -1112,12 +1058,13 @@ $map{cmss10} = {
0x10 => 0x131, # \imath (roman)
0x11 => 0x237, # \jmath (roman)
0x12 => [0x300,-500,0], # \grave (combining)
0x13 => [0x301,-500,0], # \acute (combining)
0x14 => [0x30C,-500,0], # \check (combining)
0x15 => [0x306,-500,0], # \breve (combining)
0x16 => [0x304,-500,0], # \bar (combining)
0x17 => [0x30A,-542,0], # ring above (combining)
0x12 => 0x2CB, # \grave
0x13 => 0x2CA, # \acute
0x14 => 0x2C7, # \check
0x15 => 0x2D8, # \breve
0x16 => 0x2C9, # \bar
0x17 => [0xB0,-142,0], # \degree
0x17 => 0x02DA, # \r, ring above
[0x21,0x2F] => 0x21, # !, ", #, $, %, &, ', (, ), *, +, comma, -, ., /
0x22 => 0x201D, # "
@@ -1130,13 +1077,102 @@ $map{cmss10} = {
0x5B => 0x5B, # [
0x5C => 0x201C, # ``
[0x5D,0x5E] => 0x5D, # ], ^
0x5E => [0x302,-500,0], # \hat (combining)
0x5F => [0x307,-389,0], # \dot (combining)
0x5E => 0x2C6, # \hat
0x5F => 0x2D9, # \dot
0x60 => 0x2018, # `
[0x61,0x7A] => 0x61, # a-z
[0x7B,0x7C] => 0x2013, # \endash, \emdash
0x7B => [0x5F,0,-350], # underline
0x7D => [0x30B,-500,0], # double acute (combining)
0x7D => 0x2DD, # double acute
0x7E => [0x7E,0,-350], # ~
0x7E => 0x2DC, # \tilde
0x7F => 0xA8, # \ddot
],
};
$map{cmssi10} = {
"SansSerif-Italic" => [
[0,1] => 0x393, # \Gamma, \Delta
2 => 0x398, # \Theta
3 => 0x39B, # \Lambda
4 => 0x39E, # \Xi
5 => 0x3A0, # \Pi
6 => 0x3A3, # \Sigma
[7,8] => 0x3A5, # \Upsilon, \Phi
[9,0xA] => 0x3A8, # \Psi, \Omega
0x10 => 0x131, # \imath (roman)
0x11 => 0x237, # \jmath (roman)
0x12 => 0x2CB, # \grave
0x13 => 0x2CA, # \acute
0x14 => 0x2C7, # \check
0x15 => 0x2D8, # \breve
0x16 => 0x2C9, # \bar
0x17 => [0xB0,-113,0], # \degree
0x17 => 0x02DA, # \r, ring above
[0x21,0x2F] => 0x21, # !, ", #, $, %, &, ', (, ), *, +, comma, -, ., /
0x22 => 0x201D, # "
0x27 => 0x2019, # '
[0x30,0x39] => 0x30, # 0-9
[0x3A,0x3B] => 0x3A, # :, ;
0x3D => 0x3D, # =
[0x3F,0x40] => 0x3F, # ?, @
[0x41,0x5A] => 0x41, # A-Z
0x5B => 0x5B, # [
0x5C => 0x201C, # ``
[0x5D,0x5E] => 0x5D, # ], ^
0x5E => 0x2C6, # \hat
0x5F => 0x2D9, # \dot
0x60 => 0x2018, # `
[0x61,0x7A] => 0x61, # a-z
[0x7B,0x7C] => 0x2013, # \endash, \emdash
0x7B => [0x5F,0,-350], # underline
0x7D => 0x2DD, # double acute
0x7E => [0x7E,0,-350], # ~
0x7E => 0x2DC, # \tilde
0x7F => 0xA8, # \ddot
],
};
$map{cmss10} = {
"SansSerif-Regular" => [
[0,1] => 0x393, # \Gamma, \Delta
2 => 0x398, # \Theta
3 => 0x39B, # \Lambda
4 => 0x39E, # \Xi
5 => 0x3A0, # \Pi
6 => 0x3A3, # \Sigma
[7,8] => 0x3A5, # \Upsilon, \Phi
[9,0xA] => 0x3A8, # \Psi, \Omega
0x10 => 0x131, # \imath (roman)
0x11 => 0x237, # \jmath (roman)
0x13 => 0x2CA, # \acute
0x14 => 0x2C7, # \check
0x15 => 0x2D8, # \breve
0x16 => 0x2C9, # \bar
0x17 => 0xB0, # \degree
0x17 => 0x02DA, # \r, ring above
[0x21,0x2F] => 0x21, # !, ", #, $, %, &, ', (, ), *, +, comma, -, ., /
0x22 => 0x201D, # "
0x27 => 0x2019, # '
[0x30,0x39] => 0x30, # 0-9
[0x3A,0x3B] => 0x3A, # :, ;
0x3D => 0x3D, # =
[0x3F,0x40] => 0x3F, # ?, @
[0x41,0x5A] => 0x41, # A-Z
0x5B => 0x5B, # [
0x5C => 0x201C, # ``
[0x5D,0x5E] => 0x5D, # ], ^
0x5E => 0x2C6, # \hat
0x5F => 0x2D9, # \dot
0x60 => 0x2018, # `
[0x61,0x7A] => 0x61, # a-z
[0x7B,0x7C] => 0x2013, # \endash, \emdash
0x7B => [0x5F,0,-350], # underline
0x7D => 0x2DD, # double acute
0x7E => [0x7E,0,-350], # ~
0x7E => [0x303,-500,0], # \tilde (combining)
0x7F => [0x308,-500,0], # \ddot (combining)