/*******************************************************************************
 *
 *	Font metric data for New Century Schoolbook Roman
 *
 *	Copyright 2001 Ian Pilcher
 *
 *
 *	This data is derived from the Adobe Font Metrics files at
 *
 *	    ftp://ftp.adobe.com/pub/adobe/type/win/all/afmfiles/base35/
 *
 *	which are Copyright 1985-1992 Adobe Systems Incorporated.
 *
 *  	Windows metrics derived from Century Schoolbook, which is Copyright
 *  	1990-1991 The Monotype Corporation plc/Type Solutions Inc.
 *
 */

#include "psdrv.h"


/*
 *  Glyph metrics
 */

static const AFMMETRICS met_NewCenturySchlbk_Roman[228] = 
{
    {
	 32, 0x0020,  278, PSDRV_AGLGlyphNames + 1169,
		{    0,    0,    0,    0 }, NULL	/* space */
    },
    {
	 33, 0x0021,  296, PSDRV_AGLGlyphNames +  907,
		{   86,  -15,  210,  737 }, NULL	/* exclam */
    },
    {
	 34, 0x0022,  389, PSDRV_AGLGlyphNames + 1118,
		{   61,  443,  328,  737 }, NULL	/* quotedbl */
    },
    {
	 35, 0x0023,  556, PSDRV_AGLGlyphNames + 1043,
		{   28,    0,  528,  690 }, NULL	/* numbersign */
    },
    {
	 36, 0x0024,  556, PSDRV_AGLGlyphNames +  866,
		{   45, -138,  511,  813 }, NULL	/* dollar */
    },
    {
	 37, 0x0025,  833, PSDRV_AGLGlyphNames + 1094,
		{   43,  -15,  790,  705 }, NULL	/* percent */
    },
    {
	 38, 0x0026,  815, PSDRV_AGLGlyphNames +  755,
		{   51,  -15,  775,  737 }, NULL	/* ampersand */
    },
    {
	169, 0x0027,  204, PSDRV_AGLGlyphNames + 1126,
		{   59,  443,  145,  737 }, NULL	/* quotesingle */
    },
    {
	 40, 0x0028,  333, PSDRV_AGLGlyphNames + 1081,
		{   40, -117,  279,  745 }, NULL	/* parenleft */
    },
    {
	 41, 0x0029,  333, PSDRV_AGLGlyphNames + 1087,
		{   54, -117,  293,  745 }, NULL	/* parenright */
    },
    {
	 42, 0x002a,  500, PSDRV_AGLGlyphNames +  782,
		{   57,  306,  443,  737 }, NULL	/* asterisk */
    },
    {
	 43, 0x002b,  606, PSDRV_AGLGlyphNames + 1105,
		{   50,    0,  556,  506 }, NULL	/* plus */
    },
    {
	 44, 0x002c,  278, PSDRV_AGLGlyphNames +  835,
		{   62, -185,  216,  109 }, NULL	/* comma */
    },
    {
	 45, 0x002d,  333, PSDRV_AGLGlyphNames +  961,
		{   42,  199,  291,  277 }, NULL	/* hyphen */
    },
    {
	 46, 0x002e,  278, PSDRV_AGLGlyphNames + 1095,
		{   77,  -15,  201,  109 }, NULL	/* period */
    },
    {
	 47, 0x002f,  278, PSDRV_AGLGlyphNames + 1167,
		{  -32,  -15,  310,  737 }, NULL	/* slash */
    },
    {
	 48, 0x0030,  556, PSDRV_AGLGlyphNames + 1253,
		{   42,  -15,  514,  705 }, NULL	/* zero */
    },
    {
	 49, 0x0031,  556, PSDRV_AGLGlyphNames + 1060,
		{  100,    0,  496,  705 }, NULL	/* one */
    },
    {
	 50, 0x0032,  556, PSDRV_AGLGlyphNames + 1206,
		{   35,    0,  505,  705 }, NULL	/* two */
    },
    {
	 51, 0x0033,  556, PSDRV_AGLGlyphNames + 1188,
		{   42,  -15,  498,  705 }, NULL	/* three */
    },
    {
	 52, 0x0034,  556, PSDRV_AGLGlyphNames +  930,
		{   28,    0,  528,  705 }, NULL	/* four */
    },
    {
	 53, 0x0035,  556, PSDRV_AGLGlyphNames +  922,
		{   46,  -15,  502,  705 }, NULL	/* five */
    },
    {
	 54, 0x0036,  556, PSDRV_AGLGlyphNames + 1163,
		{   41,  -15,  515,  705 }, NULL	/* six */
    },
    {
	 55, 0x0037,  556, PSDRV_AGLGlyphNames + 1154,
		{   59,  -15,  508,  705 }, NULL	/* seven */
    },
    {
	 56, 0x0038,  556, PSDRV_AGLGlyphNames +  886,
		{   42,  -15,  514,  705 }, NULL	/* eight */
    },
    {
	 57, 0x0039,  556, PSDRV_AGLGlyphNames + 1032,
		{   41,  -15,  515,  705 }, NULL	/* nine */
    },
    {
	 58, 0x003a,  278, PSDRV_AGLGlyphNames +  833,
		{   77,  -15,  201,  474 }, NULL	/* colon */
    },
    {
	 59, 0x003b,  278, PSDRV_AGLGlyphNames + 1153,
		{   62, -185,  216,  474 }, NULL	/* semicolon */
    },
    {
	 60, 0x003c,  606, PSDRV_AGLGlyphNames + 1003,
		{   50,   -8,  556,  514 }, NULL	/* less */
    },
    {
	 61, 0x003d,  606, PSDRV_AGLGlyphNames +  900,
		{   50,  117,  556,  389 }, NULL	/* equal */
    },
    {
	 62, 0x003e,  606, PSDRV_AGLGlyphNames +  948,
		{   50,   -8,  556,  514 }, NULL	/* greater */
    },
    {
	 63, 0x003f,  444, PSDRV_AGLGlyphNames + 1114,
		{   29,  -15,  415,  737 }, NULL	/* question */
    },
    {
	 64, 0x0040,  737, PSDRV_AGLGlyphNames +  785,
		{   -8,  -15,  744,  737 }, NULL	/* at */
    },
    {
	 65, 0x0041,  722, PSDRV_AGLGlyphNames +    0,
		{   -8,    0,  730,  737 }, NULL	/* A */
    },
    {
	 66, 0x0042,  722, PSDRV_AGLGlyphNames +   25,
		{   29,    0,  669,  722 }, NULL	/* B */
    },
    {
	 67, 0x0043,  722, PSDRV_AGLGlyphNames +   29,
		{   45,  -15,  668,  737 }, NULL	/* C */
    },
    {
	 68, 0x0044,  778, PSDRV_AGLGlyphNames +   42,
		{   29,    0,  733,  722 }, NULL	/* D */
    },
    {
	 69, 0x0045,  722, PSDRV_AGLGlyphNames +   52,
		{   29,    0,  663,  722 }, NULL	/* E */
    },
    {
	 70, 0x0046,  667, PSDRV_AGLGlyphNames +   75,
		{   29,    0,  638,  722 }, NULL	/* F */
    },
    {
	 71, 0x0047,  778, PSDRV_AGLGlyphNames +   77,
		{   45,  -15,  775,  737 }, NULL	/* G */
    },
    {
	 72, 0x0048,  833, PSDRV_AGLGlyphNames +   87,
		{   29,    0,  804,  722 }, NULL	/* H */
    },
    {
	 73, 0x0049,  407, PSDRV_AGLGlyphNames +   97,
		{   38,    0,  369,  722 }, NULL	/* I */
    },
    {
	 74, 0x004a,  556, PSDRV_AGLGlyphNames +  118,
		{    5,  -15,  540,  722 }, NULL	/* J */
    },
    {
	 75, 0x004b,  778, PSDRV_AGLGlyphNames +  121,
		{   29,    0,  803,  722 }, NULL	/* K */
    },
    {
	 76, 0x004c,  667, PSDRV_AGLGlyphNames +  125,
		{   29,    0,  644,  722 }, NULL	/* L */
    },
    {
	 77, 0x004d,  944, PSDRV_AGLGlyphNames +  135,
		{   29,    0,  915,  722 }, NULL	/* M */
    },
    {
	 78, 0x004e,  815, PSDRV_AGLGlyphNames +  140,
		{   24,  -15,  791,  722 }, NULL	/* N */
    },
    {
	 79, 0x004f,  778, PSDRV_AGLGlyphNames +  148,
		{   45,  -15,  733,  737 }, NULL	/* O */
    },
    {
	 80, 0x0050,  667, PSDRV_AGLGlyphNames +  174,
		{   29,    0,  650,  722 }, NULL	/* P */
    },
    {
	 81, 0x0051,  778, PSDRV_AGLGlyphNames +  179,
		{   45, -190,  748,  737 }, NULL	/* Q */
    },
    {
	 82, 0x0052,  722, PSDRV_AGLGlyphNames +  181,
		{   29,  -15,  713,  722 }, NULL	/* R */
    },
    {
	 83, 0x0053,  630, PSDRV_AGLGlyphNames +  189,
		{   47,  -15,  583,  737 }, NULL	/* S */
    },
    {
	 84, 0x0054,  667, PSDRV_AGLGlyphNames +  238,
		{   19,    0,  648,  722 }, NULL	/* T */
    },
    {
	 85, 0x0055,  815, PSDRV_AGLGlyphNames +  248,
		{   16,  -15,  799,  722 }, NULL	/* U */
    },
    {
	 86, 0x0056,  722, PSDRV_AGLGlyphNames +  269,
		{   -8,  -10,  730,  722 }, NULL	/* V */
    },
    {
	 87, 0x0057,  981, PSDRV_AGLGlyphNames +  271,
		{    5,  -10,  976,  722 }, NULL	/* W */
    },
    {
	 88, 0x0058,  704, PSDRV_AGLGlyphNames +  277,
		{   -8,    0,  712,  722 }, NULL	/* X */
    },
    {
	 89, 0x0059,  704, PSDRV_AGLGlyphNames +  280,
		{  -11,    0,  715,  722 }, NULL	/* Y */
    },
    {
	 90, 0x005a,  611, PSDRV_AGLGlyphNames +  288,
		{   24,    0,  576,  722 }, NULL	/* Z */
    },
    {
	 91, 0x005b,  333, PSDRV_AGLGlyphNames +  801,
		{  126, -109,  315,  737 }, NULL	/* bracketleft */
    },
    {
	 92, 0x005c,  606, PSDRV_AGLGlyphNames +  788,
		{  132,  -15,  474,  737 }, NULL	/* backslash */
    },
    {
	 93, 0x005d,  333, PSDRV_AGLGlyphNames +  805,
		{   18, -109,  207,  737 }, NULL	/* bracketright */
    },
    {
	 94, 0x005e,  606, PSDRV_AGLGlyphNames +  780,
		{   89,  325,  517,  690 }, NULL	/* asciicircum */
    },
    {
	 95, 0x005f,  500, PSDRV_AGLGlyphNames + 1221,
		{    0, -125,  500,  -75 }, NULL	/* underscore */
    },
    {
	193, 0x0060,  333, PSDRV_AGLGlyphNames +  945,
		{   17,  528,  242,  699 }, NULL	/* grave */
    },
    {
	 97, 0x0061,  556, PSDRV_AGLGlyphNames +  295,
		{   44,  -15,  542,  479 }, NULL	/* a */
    },
    {
	 98, 0x0062,  556, PSDRV_AGLGlyphNames +  787,
		{   10,  -15,  522,  737 }, NULL	/* b */
    },
    {
	 99, 0x0063,  444, PSDRV_AGLGlyphNames +  813,
		{   34,  -15,  426,  479 }, NULL	/* c */
    },
    {
	100, 0x0064,  574, PSDRV_AGLGlyphNames +  848,
		{   34,  -15,  552,  737 }, NULL	/* d */
    },
    {
	101, 0x0065,  500, PSDRV_AGLGlyphNames +  878,
		{   34,  -15,  466,  479 }, NULL	/* e */
    },
    {
	102, 0x0066,  333, PSDRV_AGLGlyphNames +  913,
		{   18,    0,  437,  737 }, NULL	/* f */
    },
    {
	103, 0x0067,  537, PSDRV_AGLGlyphNames +  936,
		{   23, -205,  542,  494 }, NULL	/* g */
    },
    {
	104, 0x0068,  611, PSDRV_AGLGlyphNames +  954,
		{    7,    0,  592,  737 }, NULL	/* h */
    },
    {
	105, 0x0069,  315, PSDRV_AGLGlyphNames +  964,
		{   18,    0,  286,  722 }, NULL	/* i */
    },
    {
	106, 0x006a,  296, PSDRV_AGLGlyphNames +  989,
		{  -86, -205,  216,  722 }, NULL	/* j */
    },
    {
	107, 0x006b,  593, PSDRV_AGLGlyphNames +  991,
		{   10,    0,  589,  737 }, NULL	/* k */
    },
    {
	108, 0x006c,  315, PSDRV_AGLGlyphNames +  995,
		{   18,    0,  286,  737 }, NULL	/* l */
    },
    {
	109, 0x006d,  889, PSDRV_AGLGlyphNames + 1016,
		{   26,    0,  863,  479 }, NULL	/* m */
    },
    {
	110, 0x006e,  611, PSDRV_AGLGlyphNames + 1027,
		{   22,    0,  589,  479 }, NULL	/* n */
    },
    {
	111, 0x006f,  500, PSDRV_AGLGlyphNames + 1044,
		{   34,  -15,  466,  479 }, NULL	/* o */
    },
    {
	112, 0x0070,  574, PSDRV_AGLGlyphNames + 1079,
		{   22, -205,  540,  479 }, NULL	/* p */
    },
    {
	113, 0x0071,  556, PSDRV_AGLGlyphNames + 1113,
		{   34, -205,  552,  479 }, NULL	/* q */
    },
    {
	114, 0x0072,  444, PSDRV_AGLGlyphNames + 1127,
		{   18,    0,  434,  479 }, NULL	/* r */
    },
    {
	115, 0x0073,  463, PSDRV_AGLGlyphNames + 1145,
		{   46,  -15,  417,  479 }, NULL	/* s */
    },
    {
	116, 0x0074,  389, PSDRV_AGLGlyphNames + 1178,
		{   18,  -15,  371,  666 }, NULL	/* t */
    },
    {
	117, 0x0075,  611, PSDRV_AGLGlyphNames + 1212,
		{   22,  -15,  589,  464 }, NULL	/* u */
    },
    {
	118, 0x0076,  537, PSDRV_AGLGlyphNames + 1234,
		{   -6,  -10,  515,  464 }, NULL	/* v */
    },
    {
	119, 0x0077,  778, PSDRV_AGLGlyphNames + 1235,
		{    1,  -10,  749,  464 }, NULL	/* w */
    },
    {
	120, 0x0078,  537, PSDRV_AGLGlyphNames + 1241,
		{    8,    0,  529,  464 }, NULL	/* x */
    },
    {
	121, 0x0079,  537, PSDRV_AGLGlyphNames + 1243,
		{    4, -205,  533,  464 }, NULL	/* y */
    },
    {
	122, 0x007a,  481, PSDRV_AGLGlyphNames + 1249,
		{   42,    0,  439,  464 }, NULL	/* z */
    },
    {
	123, 0x007b,  333, PSDRV_AGLGlyphNames +  793,
		{   54, -109,  279,  737 }, NULL	/* braceleft */
    },
    {
	124, 0x007c,  606, PSDRV_AGLGlyphNames +  789,
		{  267, -250,  339,  750 }, NULL	/* bar */
    },
    {
	125, 0x007d,  333, PSDRV_AGLGlyphNames +  797,
		{   54, -109,  279,  737 }, NULL	/* braceright */
    },
    {
	126, 0x007e,  606, PSDRV_AGLGlyphNames +  781,
		{   72,  184,  534,  322 }, NULL	/* asciitilde */
    },
    {
	161, 0x00a1,  296, PSDRV_AGLGlyphNames +  909,
		{   86, -205,  210,  547 }, NULL	/* exclamdown */
    },
    {
	162, 0x00a2,  556, PSDRV_AGLGlyphNames +  822,
		{   74, -141,  482,  584 }, NULL	/* cent */
    },
    {
	163, 0x00a3,  556, PSDRV_AGLGlyphNames + 1173,
		{   18,  -15,  538,  705 }, NULL	/* sterling */
    },
    {
	168, 0x00a4,  556, PSDRV_AGLGlyphNames +  843,
		{   26,   93,  530,  597 }, NULL	/* currency */
    },
    {
	165, 0x00a5,  556, PSDRV_AGLGlyphNames + 1247,
		{   -1,    0,  557,  690 }, NULL	/* yen */
    },
    {
	 -1, 0x00a6,  606, PSDRV_AGLGlyphNames +  810,
		{  267, -175,  339,  675 }, NULL	/* brokenbar */
    },
    {
	167, 0x00a7,  500, PSDRV_AGLGlyphNames + 1152,
		{   55, -147,  445,  737 }, NULL	/* section */
    },
    {
	200, 0x00a8,  333, PSDRV_AGLGlyphNames +  859,
		{   16,  543,  317,  645 }, NULL	/* dieresis */
    },
    {
	 -1, 0x00a9,  737, PSDRV_AGLGlyphNames +  840,
		{   -8,  -15,  744,  737 }, NULL	/* copyright */
    },
    {
	227, 0x00aa,  334, PSDRV_AGLGlyphNames + 1071,
		{   -4,  407,  338,  705 }, NULL	/* ordfeminine */
    },
    {
	171, 0x00ab,  426, PSDRV_AGLGlyphNames +  950,
		{   39,   78,  387,  398 }, NULL	/* guillemotleft */
    },
    {
	 -1, 0x00ac,  606, PSDRV_AGLGlyphNames + 1009,
		{   50,  108,  556,  389 }, NULL	/* logicalnot */
    },
    {
	 -1, 0x00ae,  737, PSDRV_AGLGlyphNames + 1135,
		{   -8,  -15,  744,  737 }, NULL	/* registered */
    },
    {
	 -1, 0x00b0,  400, PSDRV_AGLGlyphNames +  856,
		{   57,  419,  343,  705 }, NULL	/* degree */
    },
    {
	 -1, 0x00b1,  606, PSDRV_AGLGlyphNames + 1106,
		{   50,    0,  556,  506 }, NULL	/* plusminus */
    },
    {
	 -1, 0x00b2,  333, PSDRV_AGLGlyphNames + 1210,
		{   14,  282,  319,  705 }, NULL	/* twosuperior */
    },
    {
	 -1, 0x00b3,  333, PSDRV_AGLGlyphNames + 1194,
		{   18,  273,  315,  705 }, NULL	/* threesuperior */
    },
    {
	194, 0x00b4,  333, PSDRV_AGLGlyphNames +  500,
		{   91,  528,  316,  699 }, NULL	/* acute */
    },
    {
	182, 0x00b6,  606, PSDRV_AGLGlyphNames + 1080,
		{   60, -132,  546,  722 }, NULL	/* paragraph */
    },
    {
	180, 0x00b7,  278, PSDRV_AGLGlyphNames + 1096,
		{   71,  238,  207,  374 }, NULL	/* periodcentered */
    },
    {
	203, 0x00b8,  333, PSDRV_AGLGlyphNames +  821,
		{   29, -215,  237,    0 }, NULL	/* cedilla */
    },
    {
	 -1, 0x00b9,  333, PSDRV_AGLGlyphNames + 1068,
		{   39,  282,  294,  705 }, NULL	/* onesuperior */
    },
    {
	235, 0x00ba,  300, PSDRV_AGLGlyphNames + 1072,
		{    4,  407,  296,  705 }, NULL	/* ordmasculine */
    },
    {
	187, 0x00bb,  426, PSDRV_AGLGlyphNames +  951,
		{   39,   78,  387,  398 }, NULL	/* guillemotright */
    },
    {
	 -1, 0x00bc,  834, PSDRV_AGLGlyphNames + 1067,
		{   39,  -15,  795,  705 }, NULL	/* onequarter */
    },
    {
	 -1, 0x00bd,  834, PSDRV_AGLGlyphNames + 1064,
		{   39,  -15,  820,  705 }, NULL	/* onehalf */
    },
    {
	 -1, 0x00be,  834, PSDRV_AGLGlyphNames + 1192,
		{   28,  -15,  795,  705 }, NULL	/* threequarters */
    },
    {
	191, 0x00bf,  444, PSDRV_AGLGlyphNames + 1115,
		{   29, -205,  415,  547 }, NULL	/* questiondown */
    },
    {
	 -1, 0x00c0,  722, PSDRV_AGLGlyphNames +   13,
		{   -8,    0,  730,  937 }, NULL	/* Agrave */
    },
    {
	 -1, 0x00c1,  722, PSDRV_AGLGlyphNames +    4,
		{   -8,    0,  730,  937 }, NULL	/* Aacute */
    },
    {
	 -1, 0x00c2,  722, PSDRV_AGLGlyphNames +    7,
		{   -8,    0,  730,  933 }, NULL	/* Acircumflex */
    },
    {
	 -1, 0x00c3,  722, PSDRV_AGLGlyphNames +   23,
		{   -8,    0,  730,  893 }, NULL	/* Atilde */
    },
    {
	 -1, 0x00c4,  722, PSDRV_AGLGlyphNames +   11,
		{   -8,    0,  730,  883 }, NULL	/* Adieresis */
    },
    {
	 -1, 0x00c5,  722, PSDRV_AGLGlyphNames +   19,
		{   -8,    0,  730,  965 }, NULL	/* Aring */
    },
    {
	225, 0x00c6, 1000, PSDRV_AGLGlyphNames +    1,
		{    0,    0,  962,  722 }, NULL	/* AE */
    },
    {
	 -1, 0x00c7,  722, PSDRV_AGLGlyphNames +   34,
		{   45, -215,  668,  737 }, NULL	/* Ccedilla */
    },
    {
	 -1, 0x00c8,  722, PSDRV_AGLGlyphNames +   62,
		{   29,    0,  663,  937 }, NULL	/* Egrave */
    },
    {
	 -1, 0x00c9,  722, PSDRV_AGLGlyphNames +   53,
		{   29,    0,  663,  937 }, NULL	/* Eacute */
    },
    {
	 -1, 0x00ca,  722, PSDRV_AGLGlyphNames +   57,
		{   29,    0,  663,  933 }, NULL	/* Ecircumflex */
    },
    {
	 -1, 0x00cb,  722, PSDRV_AGLGlyphNames +   59,
		{   29,    0,  663,  883 }, NULL	/* Edieresis */
    },
    {
	 -1, 0x00cc,  407, PSDRV_AGLGlyphNames +  109,
		{   38,    0,  369,  937 }, NULL	/* Igrave */
    },
    {
	 -1, 0x00cd,  407, PSDRV_AGLGlyphNames +   99,
		{   38,    0,  369,  937 }, NULL	/* Iacute */
    },
    {
	 -1, 0x00ce,  407, PSDRV_AGLGlyphNames +  102,
		{   38,    0,  369,  933 }, NULL	/* Icircumflex */
    },
    {
	 -1, 0x00cf,  407, PSDRV_AGLGlyphNames +  104,
		{   38,    0,  369,  883 }, NULL	/* Idieresis */
    },
    {
	 -1, 0x00d0,  778, PSDRV_AGLGlyphNames +   72,
		{   29,    0,  733,  722 }, NULL	/* Eth */
    },
    {
	 -1, 0x00d1,  815, PSDRV_AGLGlyphNames +  145,
		{   24,  -15,  791,  893 }, NULL	/* Ntilde */
    },
    {
	 -1, 0x00d2,  778, PSDRV_AGLGlyphNames +  159,
		{   45,  -15,  733,  937 }, NULL	/* Ograve */
    },
    {
	 -1, 0x00d3,  778, PSDRV_AGLGlyphNames +  151,
		{   45,  -15,  733,  937 }, NULL	/* Oacute */
    },
    {
	 -1, 0x00d4,  778, PSDRV_AGLGlyphNames +  154,
		{   45,  -15,  733,  933 }, NULL	/* Ocircumflex */
    },
    {
	 -1, 0x00d5,  778, PSDRV_AGLGlyphNames +  172,
		{   45,  -15,  733,  893 }, NULL	/* Otilde */
    },
    {
	 -1, 0x00d6,  778, PSDRV_AGLGlyphNames +  156,
		{   45,  -15,  733,  883 }, NULL	/* Odieresis */
    },
    {
	 -1, 0x00d7,  606, PSDRV_AGLGlyphNames + 1024,
		{   74,   24,  532,  482 }, NULL	/* multiply */
    },
    {
	233, 0x00d8,  778, PSDRV_AGLGlyphNames +  168,
		{   45,  -56,  733,  778 }, NULL	/* Oslash */
    },
    {
	 -1, 0x00d9,  815, PSDRV_AGLGlyphNames +  256,
		{   16,  -15,  799,  937 }, NULL	/* Ugrave */
    },
    {
	 -1, 0x00da,  815, PSDRV_AGLGlyphNames +  249,
		{   16,  -15,  799,  937 }, NULL	/* Uacute */
    },
    {
	 -1, 0x00db,  815, PSDRV_AGLGlyphNames +  252,
		{   16,  -15,  799,  933 }, NULL	/* Ucircumflex */
    },
    {
	 -1, 0x00dc,  815, PSDRV_AGLGlyphNames +  254,
		{   16,  -15,  799,  883 }, NULL	/* Udieresis */
    },
    {
	 -1, 0x00dd,  704, PSDRV_AGLGlyphNames +  281,
		{  -11,    0,  715,  937 }, NULL	/* Yacute */
    },
    {
	 -1, 0x00de,  667, PSDRV_AGLGlyphNames +  244,
		{   29,    0,  650,  722 }, NULL	/* Thorn */
    },
    {
	251, 0x00df,  574, PSDRV_AGLGlyphNames +  943,
		{   30,  -15,  537,  737 }, NULL	/* germandbls */
    },
    {
	 -1, 0x00e0,  556, PSDRV_AGLGlyphNames +  750,
		{   44,  -15,  542,  699 }, NULL	/* agrave */
    },
    {
	 -1, 0x00e1,  556, PSDRV_AGLGlyphNames +  497,
		{   44,  -15,  542,  699 }, NULL	/* aacute */
    },
    {
	 -1, 0x00e2,  556, PSDRV_AGLGlyphNames +  499,
		{   44,  -15,  542,  695 }, NULL	/* acircumflex */
    },
    {
	 -1, 0x00e3,  556, PSDRV_AGLGlyphNames +  786,
		{   44,  -15,  542,  655 }, NULL	/* atilde */
    },
    {
	 -1, 0x00e4,  556, PSDRV_AGLGlyphNames +  502,
		{   44,  -15,  542,  645 }, NULL	/* adieresis */
    },
    {
	 -1, 0x00e5,  556, PSDRV_AGLGlyphNames +  764,
		{   44,  -15,  542,  732 }, NULL	/* aring */
    },
    {
	241, 0x00e6,  796, PSDRV_AGLGlyphNames +  503,
		{   34,  -15,  762,  479 }, NULL	/* ae */
    },
    {
	 -1, 0x00e7,  444, PSDRV_AGLGlyphNames +  818,
		{   34, -215,  426,  479 }, NULL	/* ccedilla */
    },
    {
	 -1, 0x00e8,  500, PSDRV_AGLGlyphNames +  885,
		{   34,  -15,  466,  699 }, NULL	/* egrave */
    },
    {
	 -1, 0x00e9,  500, PSDRV_AGLGlyphNames +  879,
		{   34,  -15,  466,  699 }, NULL	/* eacute */
    },
    {
	 -1, 0x00ea,  500, PSDRV_AGLGlyphNames +  882,
		{   34,  -15,  466,  695 }, NULL	/* ecircumflex */
    },
    {
	 -1, 0x00eb,  500, PSDRV_AGLGlyphNames +  883,
		{   34,  -15,  466,  645 }, NULL	/* edieresis */
    },
    {
	 -1, 0x00ec,  315, PSDRV_AGLGlyphNames +  969,
		{    8,    0,  286,  699 }, NULL	/* igrave */
    },
    {
	 -1, 0x00ed,  315, PSDRV_AGLGlyphNames +  965,
		{   18,    0,  307,  699 }, NULL	/* iacute */
    },
    {
	 -1, 0x00ee,  315, PSDRV_AGLGlyphNames +  967,
		{    1,    0,  314,  695 }, NULL	/* icircumflex */
    },
    {
	 -1, 0x00ef,  315, PSDRV_AGLGlyphNames +  968,
		{    7,    0,  308,  645 }, NULL	/* idieresis */
    },
    {
	 -1, 0x00f0,  500, PSDRV_AGLGlyphNames +  906,
		{   34,  -15,  466,  752 }, NULL	/* eth */
    },
    {
	 -1, 0x00f1,  611, PSDRV_AGLGlyphNames + 1041,
		{   22,    0,  589,  655 }, NULL	/* ntilde */
    },
    {
	 -1, 0x00f2,  500, PSDRV_AGLGlyphNames + 1051,
		{   34,  -15,  466,  699 }, NULL	/* ograve */
    },
    {
	 -1, 0x00f3,  500, PSDRV_AGLGlyphNames + 1045,
		{   34,  -15,  466,  699 }, NULL	/* oacute */
    },
    {
	 -1, 0x00f4,  500, PSDRV_AGLGlyphNames + 1047,
		{   34,  -15,  466,  695 }, NULL	/* ocircumflex */
    },
    {
	 -1, 0x00f5,  500, PSDRV_AGLGlyphNames + 1077,
		{   34,  -15,  466,  655 }, NULL	/* otilde */
    },
    {
	 -1, 0x00f6,  500, PSDRV_AGLGlyphNames + 1048,
		{   34,  -15,  466,  645 }, NULL	/* odieresis */
    },
    {
	 -1, 0x00f7,  606, PSDRV_AGLGlyphNames +  863,
		{   50,  -22,  556,  528 }, NULL	/* divide */
    },
    {
	249, 0x00f8,  500, PSDRV_AGLGlyphNames + 1074,
		{   34,  -97,  466,  561 }, NULL	/* oslash */
    },
    {
	 -1, 0x00f9,  611, PSDRV_AGLGlyphNames + 1217,
		{   22,  -15,  589,  699 }, NULL	/* ugrave */
    },
    {
	 -1, 0x00fa,  611, PSDRV_AGLGlyphNames + 1213,
		{   22,  -15,  589,  699 }, NULL	/* uacute */
    },
    {
	 -1, 0x00fb,  611, PSDRV_AGLGlyphNames + 1215,
		{   22,  -15,  589,  695 }, NULL	/* ucircumflex */
    },
    {
	 -1, 0x00fc,  611, PSDRV_AGLGlyphNames + 1216,
		{   22,  -15,  589,  645 }, NULL	/* udieresis */
    },
    {
	 -1, 0x00fd,  537, PSDRV_AGLGlyphNames + 1244,
		{    4, -205,  533,  699 }, NULL	/* yacute */
    },
    {
	 -1, 0x00fe,  574, PSDRV_AGLGlyphNames + 1187,
		{   22, -205,  540,  737 }, NULL	/* thorn */
    },
    {
	 -1, 0x00ff,  537, PSDRV_AGLGlyphNames + 1246,
		{    4, -205,  533,  645 }, NULL	/* ydieresis */
    },
    {
	245, 0x0131,  315, PSDRV_AGLGlyphNames +  873,
		{   18,    0,  286,  464 }, NULL	/* dotlessi */
    },
    {
	232, 0x0141,  667, PSDRV_AGLGlyphNames +  132,
		{   29,    0,  644,  722 }, NULL	/* Lslash */
    },
    {
	248, 0x0142,  315, PSDRV_AGLGlyphNames + 1013,
		{   18,    0,  286,  737 }, NULL	/* lslash */
    },
    {
	234, 0x0152, 1000, PSDRV_AGLGlyphNames +  149,
		{   21,    0,  979,  722 }, NULL	/* OE */
    },
    {
	250, 0x0153,  833, PSDRV_AGLGlyphNames + 1049,
		{   34,  -15,  799,  479 }, NULL	/* oe */
    },
    {
	 -1, 0x0160,  630, PSDRV_AGLGlyphNames +  231,
		{   47,  -15,  583,  933 }, NULL	/* Scaron */
    },
    {
	 -1, 0x0161,  463, PSDRV_AGLGlyphNames + 1147,
		{   46,  -15,  417,  695 }, NULL	/* scaron */
    },
    {
	 -1, 0x0178,  704, PSDRV_AGLGlyphNames +  284,
		{  -11,    0,  715,  883 }, NULL	/* Ydieresis */
    },
    {
	 -1, 0x017d,  611, PSDRV_AGLGlyphNames +  290,
		{   24,    0,  576,  933 }, NULL	/* Zcaron */
    },
    {
	 -1, 0x017e,  481, PSDRV_AGLGlyphNames + 1251,
		{   42,    0,  439,  695 }, NULL	/* zcaron */
    },
    {
	166, 0x0192,  556, PSDRV_AGLGlyphNames +  928,
		{    0, -205,  538,  737 }, NULL	/* florin */
    },
    {
	195, 0x02c6,  333, PSDRV_AGLGlyphNames +  831,
		{   10,  528,  323,  695 }, NULL	/* circumflex */
    },
    {
	207, 0x02c7,  333, PSDRV_AGLGlyphNames +  815,
		{   10,  528,  323,  695 }, NULL	/* caron */
    },
    {
	197, 0x02c9,  333, PSDRV_AGLGlyphNames + 1017,
		{   10,  568,  323,  623 }, NULL	/* macron */
    },
    {
	198, 0x02d8,  333, PSDRV_AGLGlyphNames +  809,
		{   25,  528,  308,  685 }, NULL	/* breve */
    },
    {
	199, 0x02d9,  333, PSDRV_AGLGlyphNames +  871,
		{  116,  543,  218,  645 }, NULL	/* dotaccent */
    },
    {
	202, 0x02da,  333, PSDRV_AGLGlyphNames + 1141,
		{   66,  522,  266,  722 }, NULL	/* ring */
    },
    {
	206, 0x02db,  333, PSDRV_AGLGlyphNames + 1050,
		{   68, -215,  254,    0 }, NULL	/* ogonek */
    },
    {
	196, 0x02dc,  333, PSDRV_AGLGlyphNames + 1195,
		{    1,  553,  332,  655 }, NULL	/* tilde */
    },
    {
	205, 0x02dd,  333, PSDRV_AGLGlyphNames +  960,
		{   -9,  528,  416,  699 }, NULL	/* hungarumlaut */
    },
    {
	 -1, 0x03bc,  611, PSDRV_AGLGlyphNames + 1023,
		{   22, -205,  589,  464 }, NULL	/* mu */
    },
    {
	177, 0x2013,  556, PSDRV_AGLGlyphNames +  895,
		{    0,  208,  556,  268 }, NULL	/* endash */
    },
    {
	208, 0x2014, 1000, PSDRV_AGLGlyphNames +  893,
		{    0,  208, 1000,  268 }, NULL	/* emdash */
    },
    {
	 96, 0x2018,  204, PSDRV_AGLGlyphNames + 1122,
		{   25,  443,  179,  737 }, NULL	/* quoteleft */
    },
    {
	 39, 0x2019,  204, PSDRV_AGLGlyphNames + 1124,
		{   25,  443,  179,  737 }, NULL	/* quoteright */
    },
    {
	184, 0x201a,  204, PSDRV_AGLGlyphNames + 1125,
		{   25, -185,  179,  109 }, NULL	/* quotesinglbase */
    },
    {
	170, 0x201c,  389, PSDRV_AGLGlyphNames + 1120,
		{   25,  443,  364,  737 }, NULL	/* quotedblleft */
    },
    {
	186, 0x201d,  389, PSDRV_AGLGlyphNames + 1121,
		{   25,  443,  364,  737 }, NULL	/* quotedblright */
    },
    {
	185, 0x201e,  389, PSDRV_AGLGlyphNames + 1119,
		{   25, -185,  364,  109 }, NULL	/* quotedblbase */
    },
    {
	178, 0x2020,  500, PSDRV_AGLGlyphNames +  849,
		{   42, -147,  458,  737 }, NULL	/* dagger */
    },
    {
	179, 0x2021,  500, PSDRV_AGLGlyphNames +  850,
		{   42, -149,  458,  737 }, NULL	/* daggerdbl */
    },
    {
	183, 0x2022,  606, PSDRV_AGLGlyphNames +  812,
		{  122,  180,  484,  542 }, NULL	/* bullet */
    },
    {
	188, 0x2026, 1000, PSDRV_AGLGlyphNames +  891,
		{  105,  -15,  895,  109 }, NULL	/* ellipsis */
    },
    {
	189, 0x2030, 1000, PSDRV_AGLGlyphNames + 1100,
		{    6,  -15,  994,  705 }, NULL	/* perthousand */
    },
    {
	172, 0x2039,  259, PSDRV_AGLGlyphNames +  952,
		{   39,   78,  220,  398 }, NULL	/* guilsinglleft */
    },
    {
	173, 0x203a,  259, PSDRV_AGLGlyphNames +  953,
		{   39,   78,  220,  398 }, NULL	/* guilsinglright */
    },
    {
	 -1, 0x2122, 1000, PSDRV_AGLGlyphNames + 1198,
		{   32,  318,  968,  722 }, NULL	/* trademark */
    },
    {
	 -1, 0x2212,  606, PSDRV_AGLGlyphNames + 1020,
		{   50,  217,  556,  289 }, NULL	/* minus */
    },
    {
	164, 0x2215,  167, PSDRV_AGLGlyphNames +  934,
		{ -195,  -15,  362,  705 }, NULL	/* fraction */
    },
    {
	174, 0xfb01,  611, PSDRV_AGLGlyphNames +  918,
		{   18,    0,  582,  737 }, NULL	/* fi */
    },
    {
	175, 0xfb02,  611, PSDRV_AGLGlyphNames +  927,
		{   18,    0,  582,  737 }, NULL	/* fl */
    }
};


/*
 *  Font metrics
 */

const AFM PSDRV_NewCenturySchlbk_Roman =
{
    "NewCenturySchlbk-Roman",			/* FontName */
    "New Century Schoolbook Roman",		/* FullName */
    "New Century Schoolbook",			/* FamilyName */
    "AdobeStandardEncoding",			/* EncodingScheme */
    FW_NORMAL,					/* Weight */
    0,						/* ItalicAngle */
    FALSE,					/* IsFixedPitch */
    -100,					/* UnderlinePosition */
    50,						/* UnderlineThickness */
    { -195, -250, 1000, 965 },			/* FontBBox */
    722,					/* CapHeight */
    464,					/* XHeight */
    737,					/* Ascender */
    -205,					/* Descender */
    965,					/* FullAscender */
    {
	1000,				/* WinMetrics.usUnitsPerEm */
	986,				/* WinMetrics.sAscender */
	-216,				/* WinMetrics.sDescender */
	0,				/* WinMetrics.sLineGap */
	464,				/* WinMetrics.sAvgCharWidth */
	740,				/* WinMetrics.sTypoAscender */
	-195,				/* WinMetrics.sTypoDescender */
	135,				/* WinMetrics.sTypoLineGap */
	986,				/* WinMetrics.usWinAscent */
	216				/* WinMetrics.usWinDescent */
    },
    {
	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 	/* CharWidths[0] - CharWidths[9] */
	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 	/* CharWidths[10] - CharWidths[19] */
	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 	/* CharWidths[20] - CharWidths[29] */
	0, 0, 278, 296, 389, 556, 556, 	/* CharWidths[30] - CharWidths[36] */
	833, 815, 204, 333, 333, 500, 	/* CharWidths[37] - CharWidths[42] */
	606, 278, 333, 278, 278, 556, 	/* CharWidths[43] - CharWidths[48] */
	556, 556, 556, 556, 556, 556, 	/* CharWidths[49] - CharWidths[54] */
	556, 556, 556, 278, 278, 606, 	/* CharWidths[55] - CharWidths[60] */
	606, 606, 444, 737, 722, 722, 	/* CharWidths[61] - CharWidths[66] */
	722, 778, 722, 667, 778, 833, 	/* CharWidths[67] - CharWidths[72] */
	407, 556, 778, 667, 944, 815, 	/* CharWidths[73] - CharWidths[78] */
	778, 667, 778, 722, 630, 667, 	/* CharWidths[79] - CharWidths[84] */
	815, 722, 981, 704, 704, 611, 	/* CharWidths[85] - CharWidths[90] */
	333, 606, 333, 606, 500, 333, 	/* CharWidths[91] - CharWidths[96] */
	556, 556, 444, 574, 500, 333, 	/* CharWidths[97] - CharWidths[102] */
	537, 611, 315, 296, 593, 315, 	/* CharWidths[103] - CharWidths[108] */
	889, 611, 500, 574, 556, 444, 	/* CharWidths[109] - CharWidths[114] */
	463, 389, 611, 537, 778, 537, 	/* CharWidths[115] - CharWidths[120] */
	537, 481, 333, 606, 333, 606, 	/* CharWidths[121] - CharWidths[126] */
	0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 	/* CharWidths[127] - CharWidths[136] */
	0, 0, 0, 0, 0, 0, 0, 0, 204, 	/* CharWidths[137] - CharWidths[145] */
	204, 389, 389, 606, 556, 1000, 	/* CharWidths[146] - CharWidths[151] */
	0, 0, 0, 0, 0, 0, 0, 0, 278, 	/* CharWidths[152] - CharWidths[160] */
	296, 556, 556, 556, 556, 606, 	/* CharWidths[161] - CharWidths[166] */
	500, 333, 737, 389, 426, 606, 	/* CharWidths[167] - CharWidths[172] */
	333, 737, 333, 400, 606, 333, 	/* CharWidths[173] - CharWidths[178] */
	333, 333, 0, 606, 278, 333, 	/* CharWidths[179] - CharWidths[184] */
	333, 389, 426, 834, 834, 834, 	/* CharWidths[185] - CharWidths[190] */
	444, 0, 333, 333, 333, 333, 	/* CharWidths[191] - CharWidths[196] */
	333, 333, 333, 333, 0, 333, 	/* CharWidths[197] - CharWidths[202] */
	333, 0, 333, 333, 333, 1000, 	/* CharWidths[203] - CharWidths[208] */
	0, 0, 0, 0, 0, 0, 606, 0, 0, 	/* CharWidths[209] - CharWidths[217] */
	0, 0, 0, 0, 0, 0, 0, 1000, 0, 	/* CharWidths[218] - CharWidths[226] */
	334, 0, 0, 0, 0, 667, 778, 	/* CharWidths[227] - CharWidths[233] */
	1000, 300, 0, 0, 0, 0, 0, 796, 	/* CharWidths[234] - CharWidths[241] */
	0, 0, 0, 315, 0, 606, 315, 	/* CharWidths[242] - CharWidths[248] */
	500, 833, 574, 0, 0, 0, 0	/* CharWidths[249] - CharWidths[255] */
    },
    228,					/* NumofMetrics */
    met_NewCenturySchlbk_Roman			/* Metrics */
};
