mirror of
https://github.com/netwide-assembler/nasm.git
synced 2024-12-03 08:41:02 +08:00
5e43bfef24
Output the kerning tables in the metrics headers. This will hopefully make it possible to support kerning later (e.g. using the PostScript kshow operator with some kind of kerning function.) Note: the previous ordering of the metrics output was sensitive to the particular hashing algorithm used in that version of Perl. This version sorts them in order to keep them stable, but which obviously completely changes the (otherwise unmodified) widths part of the output. Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
379 lines
16 KiB
Perl
379 lines
16 KiB
Perl
%PS_Utopia_Bold = (
|
|
name => 'Utopia-Bold',
|
|
widths => {
|
|
"A" => 644, "AE" => 879, "Aacute" => 644, "Acircumflex" => 644,
|
|
"Adieresis" => 644, "Agrave" => 644, "Aring" => 644,
|
|
"Atilde" => 644, "B" => 683, "C" => 689, "Ccedilla" => 689,
|
|
"D" => 777, "E" => 629, "Eacute" => 629, "Ecircumflex" => 629,
|
|
"Edieresis" => 629, "Egrave" => 629, "Eth" => 783, "F" => 593,
|
|
"G" => 726, "H" => 807, "I" => 384, "Iacute" => 384,
|
|
"Icircumflex" => 384, "Idieresis" => 384, "Igrave" => 384,
|
|
"J" => 386, "K" => 707, "L" => 585, "Lslash" => 591, "M" => 918,
|
|
"N" => 739, "Ntilde" => 739, "O" => 768, "OE" => 1049,
|
|
"Oacute" => 768, "Ocircumflex" => 768, "Odieresis" => 768,
|
|
"Ograve" => 768, "Oslash" => 768, "Otilde" => 768, "P" => 650,
|
|
"Q" => 768, "R" => 684, "S" => 561, "Scaron" => 561, "T" => 624,
|
|
"Thorn" => 640, "U" => 786, "Uacute" => 786, "Ucircumflex" => 786,
|
|
"Udieresis" => 786, "Ugrave" => 786, "V" => 645, "W" => 933,
|
|
"X" => 634, "Y" => 617, "Yacute" => 617, "Ydieresis" => 617,
|
|
"Z" => 614, "Zcaron" => 614, "a" => 544, "aacute" => 544,
|
|
"acircumflex" => 544, "acute" => 430, "adieresis" => 544,
|
|
"ae" => 806, "agrave" => 544, "ampersand" => 748, "aring" => 544,
|
|
"asciicircum" => 600, "asciitilde" => 600, "asterisk" => 442,
|
|
"at" => 833, "atilde" => 544, "b" => 605, "backslash" => 379,
|
|
"bar" => 284, "braceleft" => 365, "braceright" => 365,
|
|
"bracketleft" => 335, "bracketright" => 335, "breve" => 430,
|
|
"brokenbar" => 284, "bullet" => 455, "c" => 494, "caron" => 430,
|
|
"ccedilla" => 494, "cedilla" => 430, "cent" => 560,
|
|
"circumflex" => 430, "colon" => 280, "comma" => 280,
|
|
"copyright" => 800, "currency" => 560, "d" => 605, "dagger" => 510,
|
|
"daggerdbl" => 486, "degree" => 396, "dieresis" => 430,
|
|
"divide" => 600, "dollar" => 560, "dotaccent" => 430,
|
|
"dotlessi" => 316, "e" => 519, "eacute" => 519,
|
|
"ecircumflex" => 519, "edieresis" => 519, "egrave" => 519,
|
|
"eight" => 560, "ellipsis" => 1000, "emdash" => 1000,
|
|
"endash" => 500, "equal" => 600, "eth" => 585, "exclam" => 278,
|
|
"exclamdown" => 278, "f" => 342, "fi" => 639, "five" => 560,
|
|
"fl" => 639, "florin" => 560, "four" => 560, "fraction" => 100,
|
|
"g" => 533, "germandbls" => 662, "grave" => 430, "greater" => 600,
|
|
"guillemotleft" => 487, "guillemotright" => 487,
|
|
"guilsinglleft" => 287, "guilsinglright" => 287, "h" => 631,
|
|
"hungarumlaut" => 430, "hyphen" => 392, "i" => 316,
|
|
"iacute" => 316, "icircumflex" => 316, "idieresis" => 316,
|
|
"igrave" => 316, "j" => 316, "k" => 582, "l" => 309, "less" => 600,
|
|
"logicalnot" => 600, "lslash" => 321, "m" => 948, "macron" => 430,
|
|
"minus" => 600, "mu" => 629, "multiply" => 600, "n" => 638,
|
|
"nine" => 560, "ntilde" => 638, "numbersign" => 560, "o" => 585,
|
|
"oacute" => 585, "ocircumflex" => 585, "odieresis" => 585,
|
|
"oe" => 866, "ogonek" => 430, "ograve" => 585, "one" => 560,
|
|
"onehalf" => 900, "onequarter" => 900, "onesuperior" => 402,
|
|
"ordfeminine" => 405, "ordmasculine" => 427, "oslash" => 585,
|
|
"otilde" => 585, "p" => 615, "paragraph" => 552,
|
|
"parenleft" => 365, "parenright" => 365, "percent" => 887,
|
|
"period" => 280, "periodcentered" => 280, "perthousand" => 1289,
|
|
"plus" => 600, "plusminus" => 600, "q" => 597, "question" => 456,
|
|
"questiondown" => 456, "quotedbl" => 473, "quotedblbase" => 473,
|
|
"quotedblleft" => 473, "quotedblright" => 473, "quoteleft" => 252,
|
|
"quoteright" => 252, "quotesinglbase" => 252, "quotesingle" => 252,
|
|
"r" => 440, "registered" => 800, "ring" => 430, "s" => 446,
|
|
"scaron" => 446, "section" => 566, "semicolon" => 280,
|
|
"seven" => 560, "six" => 560, "slash" => 378, "space" => 210,
|
|
"sterling" => 560, "t" => 370, "thorn" => 609, "three" => 560,
|
|
"threequarters" => 900, "threesuperior" => 402, "tilde" => 430,
|
|
"trademark" => 1090, "two" => 560, "twosuperior" => 402,
|
|
"u" => 629, "uacute" => 629, "ucircumflex" => 629,
|
|
"udieresis" => 629, "ugrave" => 629, "underscore" => 500,
|
|
"v" => 520, "w" => 774, "x" => 522, "y" => 524, "yacute" => 524,
|
|
"ydieresis" => 524, "yen" => 560, "z" => 483, "zcaron" => 483,
|
|
"zero" => 560,
|
|
},
|
|
kern => {
|
|
"A" => {
|
|
"C" => -18, "G" => -18, "O" => -18, "Q" => -18, "T" => -58,
|
|
"U" => -40, "V" => -70, "W" => -54, "X" => -18, "Y" => -64,
|
|
"a" => -6, "b" => -12, "c" => -12, "d" => -12, "e" => -6,
|
|
"o" => -12, "p" => -18, "q" => -6, "quotedblright" => -80,
|
|
"quoteright" => -110, "s" => 6, "t" => -12, "u" => -18,
|
|
"v" => -48, "w" => -42, "y" => -40, "z" => 25,
|
|
},
|
|
"B" => {
|
|
"T" => -20, "U" => -25, "V" => -20, "W" => -20, "a" => -12,
|
|
"b" => -10, "e" => -6, "h" => -15, "i" => -12, "k" => -15,
|
|
"l" => -15, "o" => -6, "r" => -12, "u" => -12, "y" => -18,
|
|
},
|
|
"C" => {
|
|
"C" => -6, "G" => -6, "O" => -6, "Q" => -6, "a" => -16,
|
|
"e" => -12, "o" => -12, "r" => -6, "u" => -18, "y" => -24,
|
|
"z" => -5,
|
|
},
|
|
"D" => {
|
|
"V" => -40, "W" => -40, "Y" => -60, "a" => -15, "comma" => -40,
|
|
"e" => -5, "h" => -18, "i" => -12, "o" => -5, "period" => -40,
|
|
"r" => -12, "u" => -12,
|
|
},
|
|
"E" => {
|
|
"V" => -6, "W" => -6, "Y" => -6, "a" => -4, "b" => -5, "c" => -6,
|
|
"comma" => 10, "d" => -6, "e" => -6, "g" => -6, "i" => -6,
|
|
"j" => -6, "m" => -4, "n" => -4, "o" => -6, "p" => -18,
|
|
"period" => 10, "q" => -6, "r" => -4, "s" => -12, "t" => -18,
|
|
"u" => -12, "v" => -24, "w" => -24, "y" => -30,
|
|
},
|
|
"F" => {
|
|
"A" => -60, "a" => -48, "comma" => -150, "e" => -36, "i" => -22,
|
|
"l" => -12, "o" => -36, "period" => -150, "quotedblright" => 20,
|
|
"quoteright" => 20, "r" => -36, "u" => -12, "y" => -18,
|
|
},
|
|
"G" => {
|
|
"a" => -12, "h" => -12, "i" => -12, "l" => -6, "n" => -18,
|
|
"quotedblright" => -20, "r" => -18, "u" => -12, "y" => -12,
|
|
},
|
|
"H" => {
|
|
"a" => -25, "e" => -30, "i" => -18, "o" => -30, "u" => -26,
|
|
"y" => -24,
|
|
},
|
|
"I" => {
|
|
"a" => -24, "b" => -6, "c" => -30, "d" => -30, "e" => -30,
|
|
"f" => -6, "g" => -6, "h" => -6, "k" => -6, "l" => -6,
|
|
"m" => -18, "n" => -18, "o" => -30, "p" => -26, "r" => -12,
|
|
"s" => -18, "t" => -24, "u" => -26, "v" => -24, "w" => -18,
|
|
"x" => -6, "y" => -6, "z" => -6,
|
|
},
|
|
"J" => {
|
|
"a" => -36, "braceright" => 15, "bracketright" => 15, "e" => -35,
|
|
"i" => -20, "o" => -35, "u" => -36, "y" => -20,
|
|
},
|
|
"K" => {
|
|
"A" => 20, "C" => -36, "G" => -36, "O" => -36, "Q" => -36,
|
|
"a" => -6, "e" => -18, "h" => 10, "i" => 6, "l" => 10,
|
|
"o" => -30, "u" => -42, "v" => -80, "w" => -60, "y" => -70,
|
|
},
|
|
"L" => {
|
|
"A" => 30, "C" => -12, "G" => -12, "O" => -12, "Q" => -12,
|
|
"T" => -80, "U" => -32, "V" => -95, "W" => -78, "Y" => -70,
|
|
"j" => -6, "l" => 6, "quotedblright" => -130,
|
|
"quoteright" => -130, "u" => -12, "w" => -58, "y" => -52,
|
|
},
|
|
"M" => {
|
|
"a" => -25, "c" => -30, "d" => -30, "e" => -30, "i" => -12,
|
|
"j" => -12, "n" => -6, "o" => -30, "u" => -36, "y" => -24,
|
|
},
|
|
"N" => {
|
|
"a" => -30, "e" => -30, "i" => -24, "o" => -30, "u" => -30,
|
|
"y" => -24,
|
|
},
|
|
"O" => {
|
|
"A" => -30, "T" => -40, "V" => -35, "W" => -35, "X" => -40,
|
|
"Y" => -50, "a" => -12, "b" => -15, "c" => -6, "comma" => -40,
|
|
"d" => -6, "e" => -6, "g" => -6, "h" => -15, "i" => -6,
|
|
"k" => -15, "l" => -15, "m" => -10, "n" => -10, "o" => -6,
|
|
"p" => -10, "period" => -40, "q" => -6, "r" => -10, "s" => -6,
|
|
"t" => -6, "u" => -6, "z" => -6,
|
|
},
|
|
"P" => {
|
|
"A" => -85, "E" => -20, "H" => -20, "I" => -20, "a" => -36,
|
|
"comma" => -200, "e" => -36, "h" => -15, "hyphen" => -30,
|
|
"i" => -6, "l" => -15, "n" => -12, "o" => -36, "period" => -200,
|
|
"quotedblright" => 20, "quoteright" => 20, "r" => -12,
|
|
"s" => -30, "t" => -6, "u" => -18, "y" => 10,
|
|
},
|
|
"Q" => {
|
|
"A" => -30, "T" => -40, "U" => -25, "V" => -35, "W" => -35,
|
|
"X" => -40, "Y" => -50, "a" => -18, "u" => -6,
|
|
},
|
|
"R" => {
|
|
"C" => -10, "G" => -10, "O" => -10, "Q" => -10, "T" => -20,
|
|
"U" => -30, "V" => -26, "W" => -18, "X" => 20, "Y" => -32,
|
|
"a" => -6, "e" => -18, "o" => -12, "quotedblright" => -10,
|
|
"quoteright" => -10, "t" => -25, "u" => -12, "y" => -20,
|
|
},
|
|
"S" => {
|
|
"a" => -18, "h" => -12, "i" => -12, "j" => -30, "k" => -24,
|
|
"l" => -18, "m" => -24, "n" => -24, "p" => -24,
|
|
"quotedblright" => -15, "quoteright" => -15, "r" => -10,
|
|
"t" => -24, "u" => -24, "v" => -40, "w" => -30, "y" => -35,
|
|
},
|
|
"T" => {
|
|
"A" => -52, "C" => -25, "G" => -25, "O" => -25, "Q" => -25,
|
|
"S" => -12, "T" => 30, "V" => 6, "W" => 15, "X" => 10, "Y" => 12,
|
|
"a" => -90, "braceright" => 30, "bracketright" => 40,
|
|
"comma" => -95, "e" => -80, "emdash" => -60, "endash" => -40,
|
|
"hyphen" => -110, "i" => -28, "m" => -72, "o" => -90,
|
|
"parenright" => 40, "period" => -95, "quotedblright" => 24,
|
|
"quoteright" => 24, "r" => -74, "s" => -82, "semicolon" => -50,
|
|
"u" => -74, "w" => -72, "y" => -74, "z" => -64,
|
|
},
|
|
"U" => {
|
|
"A" => -50, "a" => -50, "b" => -12, "c" => -40, "d" => -40,
|
|
"f" => -20, "g" => -40, "h" => -6, "i" => -22, "k" => -12,
|
|
"l" => -12, "m" => -50, "n" => -50, "p" => -50, "r" => -50,
|
|
"s" => -45, "t" => -36, "v" => -30, "x" => -30, "y" => -30,
|
|
"z" => -35,
|
|
},
|
|
"V" => {
|
|
"A" => -60, "C" => -20, "G" => -20, "O" => -20, "Q" => -20,
|
|
"a" => -70, "braceright" => 80, "bracketright" => 80,
|
|
"colon" => -45, "comma" => -135, "e" => -70, "emdash" => -20,
|
|
"hyphen" => -90, "i" => 20, "o" => -70, "parenright" => 80,
|
|
"period" => -135, "quotedblright" => 36, "quoteright" => 50,
|
|
"r" => -75, "semicolon" => -45, "u" => -50, "y" => -36,
|
|
},
|
|
"W" => {
|
|
"A" => -58, "C" => -20, "G" => -20, "O" => -20, "Q" => -20,
|
|
"T" => 30, "a" => -75, "braceright" => 70, "bracketright" => 80,
|
|
"colon" => -40, "comma" => -100, "d" => -60, "e" => -60,
|
|
"h" => 20, "hyphen" => -70, "i" => 5, "m" => -50, "o" => -60,
|
|
"parenright" => 80, "period" => -100, "quotedblright" => 24,
|
|
"quoteright" => 40, "r" => -50, "semicolon" => -40, "t" => -30,
|
|
"u" => -46, "y" => -50,
|
|
},
|
|
"X" => {
|
|
"A" => 20, "C" => -30, "G" => -30, "O" => -30, "Q" => -24,
|
|
"a" => -6, "e" => -6, "quoteright" => 15, "u" => -24, "y" => -40,
|
|
},
|
|
"Y" => {
|
|
"A" => -55, "C" => -40, "G" => -40, "O" => -40, "Q" => -40,
|
|
"T" => 30, "V" => 12, "W" => 12, "X" => 12, "Y" => 12,
|
|
"a" => -80, "braceright" => 64, "bracketright" => 80,
|
|
"colon" => -60, "comma" => -90, "d" => -90, "e" => -90,
|
|
"emdash" => -50, "endash" => -30, "hyphen" => -100, "i" => 15,
|
|
"l" => 25, "o" => -90, "parenright" => 60, "period" => -90,
|
|
"q" => -100, "quotedblright" => 36, "quoteright" => 50,
|
|
"semicolon" => -37, "t" => -46, "u" => -65, "v" => -50,
|
|
},
|
|
"Z" => {
|
|
"A" => 25, "C" => -18, "G" => -18, "O" => -18, "Q" => -18,
|
|
"a" => -6, "e" => -6, "i" => -12, "o" => -12, "u" => -6,
|
|
"w" => -36, "y" => -36,
|
|
},
|
|
"a" => {
|
|
"quotedblright" => -40, "quoteright" => -45,
|
|
},
|
|
"b" => {
|
|
"comma" => -10, "period" => -10, "quotedblright" => -40,
|
|
"quoteright" => -45, "v" => -20, "w" => -20, "y" => -15,
|
|
},
|
|
"braceleft" => {
|
|
"J" => 50, "T" => 25, "V" => 64, "W" => 64, "Y" => 64,
|
|
},
|
|
"bracketleft" => {
|
|
"J" => 60, "T" => 35, "V" => 64, "W" => 64, "Y" => 64,
|
|
},
|
|
"c" => {
|
|
"quoteright" => -5,
|
|
},
|
|
"colon" => {
|
|
"space" => -20,
|
|
},
|
|
"comma" => {
|
|
"quotedblright" => -100, "quoteright" => -100, "space" => -40,
|
|
},
|
|
"d" => {
|
|
"quotedblright" => -24, "quoteright" => -24,
|
|
},
|
|
"e" => {
|
|
"quotedblright" => -20, "quoteright" => -25, "z" => -4,
|
|
},
|
|
"f" => {
|
|
"braceright" => 80, "bracketright" => 100, "comma" => -20,
|
|
"parenright" => 110, "period" => -10, "quotedblright" => 68,
|
|
"quoteright" => 68, "quotesingle" => 70,
|
|
},
|
|
"g" => {
|
|
"comma" => 10, "f" => 20, "p" => 20, "y" => 20,
|
|
},
|
|
"h" => {
|
|
"quotedblright" => -60, "quoteright" => -60,
|
|
},
|
|
"i" => {
|
|
"quotedblright" => -20, "quoteright" => -20,
|
|
},
|
|
"j" => {
|
|
"comma" => -10, "period" => -10, "quotedblright" => -20,
|
|
"quoteright" => -20,
|
|
},
|
|
"k" => {
|
|
"quotedblright" => -30, "quoteright" => -30,
|
|
},
|
|
"l" => {
|
|
"quotedblright" => -24, "quoteright" => -24,
|
|
},
|
|
"m" => {
|
|
"quotedblright" => -60, "quoteright" => -60,
|
|
},
|
|
"n" => {
|
|
"quotedblright" => -60, "quoteright" => -60,
|
|
},
|
|
"o" => {
|
|
"comma" => -10, "period" => -10, "quotedblright" => -40,
|
|
"quoteright" => -45, "v" => -30, "w" => -30, "x" => -18,
|
|
"y" => -25, "z" => -12,
|
|
},
|
|
"p" => {
|
|
"comma" => -10, "period" => -10, "quotedblright" => -60,
|
|
"quoteright" => -45, "w" => -15, "y" => -15, "z" => -10,
|
|
},
|
|
"parenleft" => {
|
|
"J" => 50, "T" => 50, "V" => 64, "W" => 64, "Y" => 64,
|
|
},
|
|
"period" => {
|
|
"quotedblright" => -100, "quoteright" => -100, "space" => -40,
|
|
},
|
|
"q" => {
|
|
"comma" => -10, "period" => -10, "quotedblright" => -50,
|
|
"quoteright" => -50,
|
|
},
|
|
"quotedblleft" => {
|
|
"A" => -122, "J" => -24, "T" => 18, "V" => 40, "W" => 40,
|
|
"X" => 20, "Y" => 30, "a" => -60, "c" => -70, "d" => -70,
|
|
"e" => -70, "f" => -30, "g" => -50, "m" => -40, "n" => -40,
|
|
"o" => -70, "p" => -40, "q" => -70, "r" => -40, "s" => -32,
|
|
"t" => -40, "u" => -40, "w" => 10, "z" => -26,
|
|
},
|
|
"quotedblright" => {
|
|
"comma" => -100, "period" => -100, "space" => -40,
|
|
},
|
|
"quoteleft" => {
|
|
"A" => -122, "J" => -24, "T" => 35, "V" => 35, "W" => 35,
|
|
"X" => 30, "Y" => 35, "a" => -60, "c" => -70, "d" => -70,
|
|
"e" => -70, "f" => -10, "g" => -50, "m" => -40, "n" => -40,
|
|
"o" => -70, "p" => -40, "q" => -70, "quoteleft" => -30,
|
|
"r" => -40, "s" => -40, "t" => -25, "u" => -25, "v" => -5,
|
|
"w" => 5, "x" => -5, "y" => -5, "z" => -26,
|
|
},
|
|
"quoteright" => {
|
|
"comma" => -100, "d" => -100, "l" => -6, "m" => -42,
|
|
"period" => -100, "quoteright" => -30, "r" => -42, "s" => -70,
|
|
"space" => -40, "t" => -50, "v" => -20,
|
|
},
|
|
"r" => {
|
|
"c" => -20, "colon" => 20, "comma" => -80, "d" => -20,
|
|
"e" => -20, "emdash" => -20, "f" => 8, "g" => 5, "h" => -10,
|
|
"hyphen" => -60, "i" => 8, "k" => -10, "l" => -10, "m" => 8,
|
|
"n" => 8, "o" => -6, "period" => -60, "q" => -6,
|
|
"quotedblright" => -10, "quoteright" => -20, "semicolon" => 20,
|
|
"t" => 8, "u" => 8, "v" => 30, "w" => 30, "x" => 12, "y" => 18,
|
|
"z" => 20,
|
|
},
|
|
"s" => {
|
|
"quotedblright" => -40, "quoteright" => -40,
|
|
},
|
|
"semicolon" => {
|
|
"space" => -20,
|
|
},
|
|
"space" => {
|
|
"T" => -40, "V" => -60, "W" => -60, "Y" => -60,
|
|
"quotedblbase" => -100, "quotedblleft" => -40,
|
|
"quoteleft" => -40, "quotesinglbase" => -100,
|
|
},
|
|
"t" => {
|
|
"comma" => 10, "period" => 15,
|
|
},
|
|
"u" => {
|
|
"quotedblright" => -60, "quoteright" => -60,
|
|
},
|
|
"v" => {
|
|
"a" => -15, "c" => -15, "colon" => 20, "comma" => -90,
|
|
"d" => -15, "e" => -15, "o" => -15, "period" => -75, "q" => -15,
|
|
"quotedblright" => 10, "quoteright" => 5, "semicolon" => 20,
|
|
},
|
|
"w" => {
|
|
"c" => -10, "colon" => 20, "comma" => -68, "d" => -10,
|
|
"e" => -10, "o" => -10, "period" => -60, "q" => -10,
|
|
"quotedblright" => 20, "quoteright" => 15, "semicolon" => 20,
|
|
},
|
|
"x" => {
|
|
"c" => -12, "d" => -12, "e" => -12, "o" => -6, "q" => -6,
|
|
"quotedblright" => -20, "quoteright" => -25,
|
|
},
|
|
"y" => {
|
|
"colon" => 20, "comma" => -72, "hyphen" => -20, "period" => -72,
|
|
"quotedblright" => 10, "quoteright" => 5, "semicolon" => 20,
|
|
},
|
|
"z" => {
|
|
"c" => -6, "d" => -6, "e" => -6, "o" => -6,
|
|
"quotedblright" => -20, "quoteright" => -20,
|
|
}
|
|
}
|
|
);
|
|
1;
|