Fix MathML bug 118313 - GetBoundingMetrics is inaccurate in the face of whitespace. Avoid a troublesome whitespace glyph that has zero width

This commit is contained in:
rbs%maths.uq.edu.au 2002-01-25 05:57:27 +00:00
parent 9b45c3207b
commit 41ae07006e
2 changed files with 95 additions and 109 deletions

View File

@ -68,21 +68,15 @@ Begin of Item 0003
End of Item 0003
Begin of Item 0004
Format 2
srcBegin = 0020
destBegin = 0020
End of Item 0004
Begin of Item 0005
Format 1
srcBegin = EFC7
srcEnd = EFCA
mappingOffset = 0000
Mapping =
002C 002D 002E 002F
End of Item 0005
End of Item 0004
Begin of Item 0006
Begin of Item 0005
Format 1
srcBegin = F024
srcEnd = F02F
@ -90,9 +84,9 @@ Begin of Item 0006
Mapping =
00C1 00C2 00C3 00C4 002A 002B 0044 0045
00AD 00AE 00BF 00C0
End of Item 0006
End of Item 0005
Begin of Item 0007
Begin of Item 0006
Format 1
srcBegin = F8E6
srcEnd = F8FE
@ -102,40 +96,39 @@ Begin of Item 0007
0032 0036 0034 0038 003C 003A 003E FFFD
0031 0043 0041 0033 0037 0035 0039 003D
003B
End of Item 0007
End of Item 0006
========================================================*/
/* Offset=0x0000 ItemOfList */
0x0008,
0x0007,
/*-------------------------------------------------------*/
/* Offset=0x0001 offsetToFormatArray */
0x0004,
/*-------------------------------------------------------*/
/* Offset=0x0002 offsetToMapCellArray */
0x0007,
0x0006,
/*-------------------------------------------------------*/
/* Offset=0x0003 offsetToMappingTable */
0x001F,
0x001B,
/*-------------------------------------------------------*/
/* Offset=0x0004 Start of Format Array */
/* Total of Format 0 : 0x0004 */
/* Total of Format 1 : 0x0003 */
/* Total of Format 2 : 0x0001 */
/* Total of Format 2 : 0x0000 */
/* Total of Format 3 : 0x0000 */
0x0000, 0x1112, 0x0000,
0x0000, 0x0111,
/*-------------------------------------------------------*/
/* Offset=0x0007 Start of MapCell Array */
/* Offset=0x0006 Start of MapCell Array */
/* 0000 */ 0xEFBC, 0xEFC4, 0x0021,
/* 0001 */ 0xEFCD, 0xF005, 0x0046,
/* 0002 */ 0xF006, 0xF00F, 0x00A1,
/* 0003 */ 0xF012, 0xF021, 0x00AF,
/* 0004 */ 0x0020, 0x0000, 0x0020,
/* 0005 */ 0xEFC7, 0xEFCA, 0x0000,
/* 0006 */ 0xF024, 0xF02F, 0x0004,
/* 0007 */ 0xF8E6, 0xF8FE, 0x0010,
/* 0004 */ 0xEFC7, 0xEFCA, 0x0000,
/* 0005 */ 0xF024, 0xF02F, 0x0004,
/* 0006 */ 0xF8E6, 0xF8FE, 0x0010,
/*-------------------------------------------------------*/
/* Offset=0x001F Start of MappingTable */
/* Offset=0x001B Start of MappingTable */
/* 0000 */ 0x002C, 0x002D, 0x002E, 0x002F, 0x00C1, 0x00C2, 0x00C3, 0x00C4,
/* 0008 */ 0x002A, 0x002B, 0x0044, 0x0045, 0x00AD, 0x00AE, 0x00BF, 0x00C0,
@ -143,4 +136,4 @@ End of Item 0007
/* 0018 */ 0x0032, 0x0036, 0x0034, 0x0038, 0x003C, 0x003A, 0x003E, 0xFFFD,
/* 0020 */ 0x0031, 0x0043, 0x0041, 0x0033, 0x0037, 0x0035, 0x0039, 0x003D,
/* 0028 */ 0x003B,
/* End of table Total Length = 0x0048 * 2 */
/* End of table Total Length = 0x0044 * 2 */

View File

@ -16,26 +16,20 @@ End of Item 0000
Begin of Item 0001
Format 2
srcBegin = 0020
destBegin = 0020
srcBegin = 005C
destBegin = 006E
End of Item 0001
Begin of Item 0002
Format 2
srcBegin = 005C
destBegin = 006E
End of Item 0002
Begin of Item 0003
Format 1
srcBegin = 007B
srcEnd = 007D
mappingOffset = 0000
Mapping =
0066 FFFD 0067
End of Item 0003
End of Item 0002
Begin of Item 0004
Begin of Item 0003
Format 1
srcBegin = 00A0
srcEnd = 00B6
@ -44,42 +38,42 @@ Begin of Item 0004
00A0 FFFD FFFD FFFD FFFD FFFD FFFD 0078
FFFD FFFD FFFD FFFD 003A FFFD FFFD FFFD
FFFD 00A7 FFFD FFFD FFFD FFFD 007B
End of Item 0003
Begin of Item 0004
Format 2
srcBegin = 00D7
destBegin = 00A3
End of Item 0004
Begin of Item 0005
Format 2
srcBegin = 00D7
destBegin = 00A3
srcBegin = 00F7
destBegin = 00A5
End of Item 0005
Begin of Item 0006
Format 2
srcBegin = 00F7
destBegin = 00A5
srcBegin = 0338
destBegin = 0036
End of Item 0006
Begin of Item 0007
Format 2
srcBegin = 0338
destBegin = 0036
End of Item 0007
Begin of Item 0008
Format 1
srcBegin = 2020
srcEnd = 2021
mappingOffset = 001A
Mapping =
0079 007A
End of Item 0008
End of Item 0007
Begin of Item 0009
Begin of Item 0008
Format 2
srcBegin = 2032
destBegin = 0030
End of Item 0009
End of Item 0008
Begin of Item 000A
Begin of Item 0009
Format 1
srcBegin = 210B
srcEnd = 211C
@ -88,9 +82,9 @@ Begin of Item 000A
0048 FFFD FFFD FFFD FFFD 0049 003D 004C
FFFD FFFD FFFD FFFD FFFD FFFD FFFD FFFD
0052 003C
End of Item 000A
End of Item 0009
Begin of Item 000B
Begin of Item 000A
Format 1
srcBegin = 212C
srcEnd = 2135
@ -98,9 +92,9 @@ Begin of Item 000B
Mapping =
0042 FFFD FFFD FFFD 0045 0046 FFFD 004D
FFFD 0040
End of Item 000B
End of Item 000A
Begin of Item 000C
Begin of Item 000B
Format 1
srcBegin = 2190
srcEnd = 2199
@ -108,18 +102,18 @@ Begin of Item 000C
Mapping =
00C3 0022 0021 0023 0024 006C 002D 0025
0026 002E
End of Item 000C
End of Item 000B
Begin of Item 000D
Begin of Item 000C
Format 1
srcBegin = 21D0
srcEnd = 21D5
mappingOffset = 0042
Mapping =
0028 002A 0029 002B 002C 006D
End of Item 000D
End of Item 000C
Begin of Item 000E
Begin of Item 000D
Format 1
srcBegin = 2200
srcEnd = 222B
@ -131,9 +125,9 @@ Begin of Item 000E
00B1 00B2 0070 FFFD FFFD 002F 0031 FFFD
FFFD FFFD FFFD 006A FFFD 006B FFFD 005E
005F 005C 005B 0073
End of Item 000E
End of Item 000D
Begin of Item 000F
Begin of Item 000E
Format 1
srcBegin = 223C
srcEnd = 224D
@ -142,9 +136,9 @@ Begin of Item 000F
00BB FFFD FFFD FFFD 006F FFFD FFFD 0027
FFFD FFFD FFFD FFFD 00BC FFFD FFFD FFFD
FFFD 00B3
End of Item 000F
End of Item 000E
Begin of Item 0010
Begin of Item 000F
Format 1
srcBegin = 2261
srcEnd = 226B
@ -152,9 +146,9 @@ Begin of Item 0010
Mapping =
00B4 FFFD FFFD 00B7 00B8 FFFD FFFD FFFD
FFFD 00BF 00C0
End of Item 0010
End of Item 000F
Begin of Item 0011
Begin of Item 0010
Format 1
srcBegin = 227A
srcEnd = 22A5
@ -166,36 +160,36 @@ Begin of Item 0011
0077 0075 0074 00A9 00AA 00AD 00AE 00AF
FFFD FFFD FFFD FFFD FFFD FFFD FFFD FFFD
0060 0061 003E 003F
End of Item 0011
End of Item 0010
Begin of Item 0012
Begin of Item 0011
Format 1
srcBegin = 22C4
srcEnd = 22C5
mappingOffset = 00BD
Mapping =
00A6 00A2
End of Item 0012
End of Item 0011
Begin of Item 0013
Begin of Item 0012
Format 1
srcBegin = 2308
srcEnd = 230B
mappingOffset = 00BF
Mapping =
0064 0065 0062 0063
End of Item 0013
End of Item 0012
Begin of Item 0014
Begin of Item 0013
Format 1
srcBegin = 2329
srcEnd = 232A
mappingOffset = 00C3
Mapping =
0068 0069
End of Item 0014
End of Item 0013
Begin of Item 0015
Begin of Item 0014
Format 1
srcBegin = 25B3
srcEnd = 25BD
@ -203,24 +197,24 @@ Begin of Item 0015
Mapping =
0034 FFFD FFFD FFFD FFFD FFFD FFFD FFFD
FFFD FFFD 0035
End of Item 0015
End of Item 0014
Begin of Item 0016
Begin of Item 0015
Format 2
srcBegin = 25CB
destBegin = 00B0
End of Item 0016
End of Item 0015
Begin of Item 0017
Begin of Item 0016
Format 1
srcBegin = 2660
srcEnd = 2663
mappingOffset = 00D0
Mapping =
00C4 007E 007D 007C
End of Item 0017
End of Item 0016
Begin of Item 0018
Begin of Item 0017
Format 1
srcBegin = EF35
srcEnd = EF3E
@ -228,17 +222,17 @@ Begin of Item 0018
Mapping =
0041 0043 0044 0047 004A 004B 004E 004F
0050 0051
End of Item 0018
End of Item 0017
Begin of Item 0019
Begin of Item 0018
Format 2
srcBegin = EFB9
destBegin = 0037
End of Item 0019
End of Item 0018
========================================================*/
/* Offset=0x0000 ItemOfList */
0x001A,
0x0019,
/*-------------------------------------------------------*/
/* Offset=0x0001 offsetToFormatArray */
0x0004,
@ -247,45 +241,44 @@ End of Item 0019
0x000B,
/*-------------------------------------------------------*/
/* Offset=0x0003 offsetToMappingTable */
0x0059,
0x0056,
/*-------------------------------------------------------*/
/* Offset=0x0004 Start of Format Array */
/* Total of Format 0 : 0x0001 */
/* Total of Format 1 : 0x0011 */
/* Total of Format 2 : 0x0008 */
/* Total of Format 2 : 0x0007 */
/* Total of Format 3 : 0x0000 */
0x1220, 0x2221, 0x1121, 0x1111, 0x1111, 0x1211, 0x0021,
0x1120, 0x1222, 0x1112, 0x1111, 0x1111, 0x1121, 0x0002,
/*-------------------------------------------------------*/
/* Offset=0x000B Start of MapCell Array */
/* 0000 */ 0xEF3F, 0xEF46, 0x0053,
/* 0001 */ 0x0020, 0x0000, 0x0020,
/* 0002 */ 0x005C, 0x0000, 0x006E,
/* 0003 */ 0x007B, 0x007D, 0x0000,
/* 0004 */ 0x00A0, 0x00B6, 0x0003,
/* 0005 */ 0x00D7, 0x0000, 0x00A3,
/* 0006 */ 0x00F7, 0x0000, 0x00A5,
/* 0007 */ 0x0338, 0x0000, 0x0036,
/* 0008 */ 0x2020, 0x2021, 0x001A,
/* 0009 */ 0x2032, 0x0000, 0x0030,
/* 000A */ 0x210B, 0x211C, 0x001C,
/* 000B */ 0x212C, 0x2135, 0x002E,
/* 000C */ 0x2190, 0x2199, 0x0038,
/* 000D */ 0x21D0, 0x21D5, 0x0042,
/* 000E */ 0x2200, 0x222B, 0x0048,
/* 000F */ 0x223C, 0x224D, 0x0074,
/* 0010 */ 0x2261, 0x226B, 0x0086,
/* 0011 */ 0x227A, 0x22A5, 0x0091,
/* 0012 */ 0x22C4, 0x22C5, 0x00BD,
/* 0013 */ 0x2308, 0x230B, 0x00BF,
/* 0014 */ 0x2329, 0x232A, 0x00C3,
/* 0015 */ 0x25B3, 0x25BD, 0x00C5,
/* 0016 */ 0x25CB, 0x0000, 0x00B0,
/* 0017 */ 0x2660, 0x2663, 0x00D0,
/* 0018 */ 0xEF35, 0xEF3E, 0x00D4,
/* 0019 */ 0xEFB9, 0x0000, 0x0037,
/* 0001 */ 0x005C, 0x0000, 0x006E,
/* 0002 */ 0x007B, 0x007D, 0x0000,
/* 0003 */ 0x00A0, 0x00B6, 0x0003,
/* 0004 */ 0x00D7, 0x0000, 0x00A3,
/* 0005 */ 0x00F7, 0x0000, 0x00A5,
/* 0006 */ 0x0338, 0x0000, 0x0036,
/* 0007 */ 0x2020, 0x2021, 0x001A,
/* 0008 */ 0x2032, 0x0000, 0x0030,
/* 0009 */ 0x210B, 0x211C, 0x001C,
/* 000A */ 0x212C, 0x2135, 0x002E,
/* 000B */ 0x2190, 0x2199, 0x0038,
/* 000C */ 0x21D0, 0x21D5, 0x0042,
/* 000D */ 0x2200, 0x222B, 0x0048,
/* 000E */ 0x223C, 0x224D, 0x0074,
/* 000F */ 0x2261, 0x226B, 0x0086,
/* 0010 */ 0x227A, 0x22A5, 0x0091,
/* 0011 */ 0x22C4, 0x22C5, 0x00BD,
/* 0012 */ 0x2308, 0x230B, 0x00BF,
/* 0013 */ 0x2329, 0x232A, 0x00C3,
/* 0014 */ 0x25B3, 0x25BD, 0x00C5,
/* 0015 */ 0x25CB, 0x0000, 0x00B0,
/* 0016 */ 0x2660, 0x2663, 0x00D0,
/* 0017 */ 0xEF35, 0xEF3E, 0x00D4,
/* 0018 */ 0xEFB9, 0x0000, 0x0037,
/*-------------------------------------------------------*/
/* Offset=0x0059 Start of MappingTable */
/* Offset=0x0056 Start of MappingTable */
/* 0000 */ 0x0066, 0xFFFD, 0x0067, 0x00A0, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD,
/* 0008 */ 0xFFFD, 0xFFFD, 0x0078, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x003A,
@ -315,4 +308,4 @@ End of Item 0019
/* 00C8 */ 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0xFFFD, 0x0035,
/* 00D0 */ 0x00C4, 0x007E, 0x007D, 0x007C, 0x0041, 0x0043, 0x0044, 0x0047,
/* 00D8 */ 0x004A, 0x004B, 0x004E, 0x004F, 0x0050, 0x0051,
/* End of table Total Length = 0x0137 * 2 */
/* End of table Total Length = 0x0134 * 2 */