/*******************************************************************************
 *
 *	Font metric data for Courier
 *
 *	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 Courier New, which is Copyright
 *  	1990-1994 The Monotype Corporation plc/Type Solutions Inc.
 *
 */

#include "psdrv.h"


/*
 *  Glyph metrics
 */

static const AFMMETRICS met_Courier[243] = 
{
    {
	 32, 0x0020,  600, PSDRV_AGLGlyphNames + 1169,
		{    0,    0,    0,    0 }, NULL	/* space */
    },
    {
	 33, 0x0021,  600, PSDRV_AGLGlyphNames +  907,
		{  236,  -15,  364,  572 }, NULL	/* exclam */
    },
    {
	 34, 0x0022,  600, PSDRV_AGLGlyphNames + 1118,
		{  187,  328,  413,  562 }, NULL	/* quotedbl */
    },
    {
	 35, 0x0023,  600, PSDRV_AGLGlyphNames + 1043,
		{   93,  -32,  507,  639 }, NULL	/* numbersign */
    },
    {
	 36, 0x0024,  600, PSDRV_AGLGlyphNames +  866,
		{  105, -126,  496,  662 }, NULL	/* dollar */
    },
    {
	 37, 0x0025,  600, PSDRV_AGLGlyphNames + 1094,
		{   81,  -15,  518,  622 }, NULL	/* percent */
    },
    {
	 38, 0x0026,  600, PSDRV_AGLGlyphNames +  755,
		{   63,  -15,  538,  543 }, NULL	/* ampersand */
    },
    {
	169, 0x0027,  600, PSDRV_AGLGlyphNames + 1126,
		{  259,  328,  341,  562 }, NULL	/* quotesingle */
    },
    {
	 40, 0x0028,  600, PSDRV_AGLGlyphNames + 1081,
		{  269, -108,  440,  622 }, NULL	/* parenleft */
    },
    {
	 41, 0x0029,  600, PSDRV_AGLGlyphNames + 1087,
		{  160, -108,  331,  622 }, NULL	/* parenright */
    },
    {
	 42, 0x002a,  600, PSDRV_AGLGlyphNames +  782,
		{  116,  257,  484,  607 }, NULL	/* asterisk */
    },
    {
	 43, 0x002b,  600, PSDRV_AGLGlyphNames + 1105,
		{   80,   44,  520,  470 }, NULL	/* plus */
    },
    {
	 44, 0x002c,  600, PSDRV_AGLGlyphNames +  835,
		{  181, -112,  344,  122 }, NULL	/* comma */
    },
    {
	 45, 0x002d,  600, PSDRV_AGLGlyphNames +  961,
		{  103,  231,  497,  285 }, NULL	/* hyphen */
    },
    {
	 46, 0x002e,  600, PSDRV_AGLGlyphNames + 1095,
		{  229,  -15,  371,  109 }, NULL	/* period */
    },
    {
	 47, 0x002f,  600, PSDRV_AGLGlyphNames + 1167,
		{  125,  -80,  475,  629 }, NULL	/* slash */
    },
    {
	 48, 0x0030,  600, PSDRV_AGLGlyphNames + 1253,
		{  106,  -15,  494,  622 }, NULL	/* zero */
    },
    {
	 49, 0x0031,  600, PSDRV_AGLGlyphNames + 1060,
		{   96,    0,  505,  622 }, NULL	/* one */
    },
    {
	 50, 0x0032,  600, PSDRV_AGLGlyphNames + 1206,
		{   70,    0,  471,  622 }, NULL	/* two */
    },
    {
	 51, 0x0033,  600, PSDRV_AGLGlyphNames + 1188,
		{   75,  -15,  466,  622 }, NULL	/* three */
    },
    {
	 52, 0x0034,  600, PSDRV_AGLGlyphNames +  930,
		{   78,    0,  500,  622 }, NULL	/* four */
    },
    {
	 53, 0x0035,  600, PSDRV_AGLGlyphNames +  922,
		{   92,  -15,  497,  607 }, NULL	/* five */
    },
    {
	 54, 0x0036,  600, PSDRV_AGLGlyphNames + 1163,
		{  111,  -15,  497,  622 }, NULL	/* six */
    },
    {
	 55, 0x0037,  600, PSDRV_AGLGlyphNames + 1154,
		{   82,    0,  483,  607 }, NULL	/* seven */
    },
    {
	 56, 0x0038,  600, PSDRV_AGLGlyphNames +  886,
		{  102,  -15,  498,  622 }, NULL	/* eight */
    },
    {
	 57, 0x0039,  600, PSDRV_AGLGlyphNames + 1032,
		{   96,  -15,  489,  622 }, NULL	/* nine */
    },
    {
	 58, 0x003a,  600, PSDRV_AGLGlyphNames +  833,
		{  229,  -15,  371,  385 }, NULL	/* colon */
    },
    {
	 59, 0x003b,  600, PSDRV_AGLGlyphNames + 1153,
		{  181, -112,  371,  385 }, NULL	/* semicolon */
    },
    {
	 60, 0x003c,  600, PSDRV_AGLGlyphNames + 1003,
		{   41,   42,  519,  472 }, NULL	/* less */
    },
    {
	 61, 0x003d,  600, PSDRV_AGLGlyphNames +  900,
		{   80,  138,  520,  376 }, NULL	/* equal */
    },
    {
	 62, 0x003e,  600, PSDRV_AGLGlyphNames +  948,
		{   66,   42,  544,  472 }, NULL	/* greater */
    },
    {
	 63, 0x003f,  600, PSDRV_AGLGlyphNames + 1114,
		{  129,  -15,  492,  572 }, NULL	/* question */
    },
    {
	 64, 0x0040,  600, PSDRV_AGLGlyphNames +  785,
		{   77,  -15,  533,  622 }, NULL	/* at */
    },
    {
	 65, 0x0041,  600, PSDRV_AGLGlyphNames +    0,
		{    3,    0,  597,  562 }, NULL	/* A */
    },
    {
	 66, 0x0042,  600, PSDRV_AGLGlyphNames +   25,
		{   43,    0,  559,  562 }, NULL	/* B */
    },
    {
	 67, 0x0043,  600, PSDRV_AGLGlyphNames +   29,
		{   41,  -18,  540,  580 }, NULL	/* C */
    },
    {
	 68, 0x0044,  600, PSDRV_AGLGlyphNames +   42,
		{   43,    0,  574,  562 }, NULL	/* D */
    },
    {
	 69, 0x0045,  600, PSDRV_AGLGlyphNames +   52,
		{   53,    0,  550,  562 }, NULL	/* E */
    },
    {
	 70, 0x0046,  600, PSDRV_AGLGlyphNames +   75,
		{   53,    0,  545,  562 }, NULL	/* F */
    },
    {
	 71, 0x0047,  600, PSDRV_AGLGlyphNames +   77,
		{   31,  -18,  575,  580 }, NULL	/* G */
    },
    {
	 72, 0x0048,  600, PSDRV_AGLGlyphNames +   87,
		{   32,    0,  568,  562 }, NULL	/* H */
    },
    {
	 73, 0x0049,  600, PSDRV_AGLGlyphNames +   97,
		{   96,    0,  504,  562 }, NULL	/* I */
    },
    {
	 74, 0x004a,  600, PSDRV_AGLGlyphNames +  118,
		{   34,  -18,  566,  562 }, NULL	/* J */
    },
    {
	 75, 0x004b,  600, PSDRV_AGLGlyphNames +  121,
		{   38,    0,  582,  562 }, NULL	/* K */
    },
    {
	 76, 0x004c,  600, PSDRV_AGLGlyphNames +  125,
		{   47,    0,  554,  562 }, NULL	/* L */
    },
    {
	 77, 0x004d,  600, PSDRV_AGLGlyphNames +  135,
		{    4,    0,  596,  562 }, NULL	/* M */
    },
    {
	 78, 0x004e,  600, PSDRV_AGLGlyphNames +  140,
		{    7,  -13,  593,  562 }, NULL	/* N */
    },
    {
	 79, 0x004f,  600, PSDRV_AGLGlyphNames +  148,
		{   43,  -18,  557,  580 }, NULL	/* O */
    },
    {
	 80, 0x0050,  600, PSDRV_AGLGlyphNames +  174,
		{   79,    0,  558,  562 }, NULL	/* P */
    },
    {
	 81, 0x0051,  600, PSDRV_AGLGlyphNames +  179,
		{   43, -138,  557,  580 }, NULL	/* Q */
    },
    {
	 82, 0x0052,  600, PSDRV_AGLGlyphNames +  181,
		{   38,    0,  588,  562 }, NULL	/* R */
    },
    {
	 83, 0x0053,  600, PSDRV_AGLGlyphNames +  189,
		{   72,  -20,  529,  580 }, NULL	/* S */
    },
    {
	 84, 0x0054,  600, PSDRV_AGLGlyphNames +  238,
		{   38,    0,  563,  562 }, NULL	/* T */
    },
    {
	 85, 0x0055,  600, PSDRV_AGLGlyphNames +  248,
		{   17,  -18,  583,  562 }, NULL	/* U */
    },
    {
	 86, 0x0056,  600, PSDRV_AGLGlyphNames +  269,
		{   -4,  -13,  604,  562 }, NULL	/* V */
    },
    {
	 87, 0x0057,  600, PSDRV_AGLGlyphNames +  271,
		{   -3,  -13,  603,  562 }, NULL	/* W */
    },
    {
	 88, 0x0058,  600, PSDRV_AGLGlyphNames +  277,
		{   23,    0,  577,  562 }, NULL	/* X */
    },
    {
	 89, 0x0059,  600, PSDRV_AGLGlyphNames +  280,
		{   24,    0,  576,  562 }, NULL	/* Y */
    },
    {
	 90, 0x005a,  600, PSDRV_AGLGlyphNames +  288,
		{   86,    0,  514,  562 }, NULL	/* Z */
    },
    {
	 91, 0x005b,  600, PSDRV_AGLGlyphNames +  801,
		{  269, -108,  442,  622 }, NULL	/* bracketleft */
    },
    {
	 92, 0x005c,  600, PSDRV_AGLGlyphNames +  788,
		{  118,  -80,  482,  629 }, NULL	/* backslash */
    },
    {
	 93, 0x005d,  600, PSDRV_AGLGlyphNames +  805,
		{  158, -108,  331,  622 }, NULL	/* bracketright */
    },
    {
	 94, 0x005e,  600, PSDRV_AGLGlyphNames +  780,
		{   94,  354,  506,  622 }, NULL	/* asciicircum */
    },
    {
	 95, 0x005f,  600, PSDRV_AGLGlyphNames + 1221,
		{    0, -125,  600,  -75 }, NULL	/* underscore */
    },
    {
	193, 0x0060,  600, PSDRV_AGLGlyphNames +  945,
		{  151,  497,  378,  672 }, NULL	/* grave */
    },
    {
	 97, 0x0061,  600, PSDRV_AGLGlyphNames +  295,
		{   53,  -15,  559,  441 }, NULL	/* a */
    },
    {
	 98, 0x0062,  600, PSDRV_AGLGlyphNames +  787,
		{   14,  -15,  575,  629 }, NULL	/* b */
    },
    {
	 99, 0x0063,  600, PSDRV_AGLGlyphNames +  813,
		{   66,  -15,  529,  441 }, NULL	/* c */
    },
    {
	100, 0x0064,  600, PSDRV_AGLGlyphNames +  848,
		{   45,  -15,  591,  629 }, NULL	/* d */
    },
    {
	101, 0x0065,  600, PSDRV_AGLGlyphNames +  878,
		{   66,  -15,  548,  441 }, NULL	/* e */
    },
    {
	102, 0x0066,  600, PSDRV_AGLGlyphNames +  913,
		{  114,    0,  531,  629 }, NULL	/* f */
    },
    {
	103, 0x0067,  600, PSDRV_AGLGlyphNames +  936,
		{   45, -157,  566,  441 }, NULL	/* g */
    },
    {
	104, 0x0068,  600, PSDRV_AGLGlyphNames +  954,
		{   18,    0,  582,  629 }, NULL	/* h */
    },
    {
	105, 0x0069,  600, PSDRV_AGLGlyphNames +  964,
		{   95,    0,  505,  657 }, NULL	/* i */
    },
    {
	106, 0x006a,  600, PSDRV_AGLGlyphNames +  989,
		{   82, -157,  410,  657 }, NULL	/* j */
    },
    {
	107, 0x006b,  600, PSDRV_AGLGlyphNames +  991,
		{   43,    0,  580,  629 }, NULL	/* k */
    },
    {
	108, 0x006c,  600, PSDRV_AGLGlyphNames +  995,
		{   95,    0,  505,  629 }, NULL	/* l */
    },
    {
	109, 0x006d,  600, PSDRV_AGLGlyphNames + 1016,
		{   -5,    0,  605,  441 }, NULL	/* m */
    },
    {
	110, 0x006e,  600, PSDRV_AGLGlyphNames + 1027,
		{   26,    0,  575,  441 }, NULL	/* n */
    },
    {
	111, 0x006f,  600, PSDRV_AGLGlyphNames + 1044,
		{   62,  -15,  538,  441 }, NULL	/* o */
    },
    {
	112, 0x0070,  600, PSDRV_AGLGlyphNames + 1079,
		{    9, -157,  555,  441 }, NULL	/* p */
    },
    {
	113, 0x0071,  600, PSDRV_AGLGlyphNames + 1113,
		{   45, -157,  591,  441 }, NULL	/* q */
    },
    {
	114, 0x0072,  600, PSDRV_AGLGlyphNames + 1127,
		{   60,    0,  559,  441 }, NULL	/* r */
    },
    {
	115, 0x0073,  600, PSDRV_AGLGlyphNames + 1145,
		{   80,  -15,  513,  441 }, NULL	/* s */
    },
    {
	116, 0x0074,  600, PSDRV_AGLGlyphNames + 1178,
		{   87,  -15,  530,  561 }, NULL	/* t */
    },
    {
	117, 0x0075,  600, PSDRV_AGLGlyphNames + 1212,
		{   21,  -15,  562,  426 }, NULL	/* u */
    },
    {
	118, 0x0076,  600, PSDRV_AGLGlyphNames + 1234,
		{   10,  -10,  590,  426 }, NULL	/* v */
    },
    {
	119, 0x0077,  600, PSDRV_AGLGlyphNames + 1235,
		{   -4,  -10,  604,  426 }, NULL	/* w */
    },
    {
	120, 0x0078,  600, PSDRV_AGLGlyphNames + 1241,
		{   20,    0,  580,  426 }, NULL	/* x */
    },
    {
	121, 0x0079,  600, PSDRV_AGLGlyphNames + 1243,
		{    7, -157,  592,  426 }, NULL	/* y */
    },
    {
	122, 0x007a,  600, PSDRV_AGLGlyphNames + 1249,
		{   99,    0,  502,  426 }, NULL	/* z */
    },
    {
	123, 0x007b,  600, PSDRV_AGLGlyphNames +  793,
		{  182, -108,  437,  622 }, NULL	/* braceleft */
    },
    {
	124, 0x007c,  600, PSDRV_AGLGlyphNames +  789,
		{  275, -250,  326,  750 }, NULL	/* bar */
    },
    {
	125, 0x007d,  600, PSDRV_AGLGlyphNames +  797,
		{  163, -108,  418,  622 }, NULL	/* braceright */
    },
    {
	126, 0x007e,  600, PSDRV_AGLGlyphNames +  781,
		{   63,  197,  540,  320 }, NULL	/* asciitilde */
    },
    {
	161, 0x00a1,  600, PSDRV_AGLGlyphNames +  909,
		{  236, -157,  364,  430 }, NULL	/* exclamdown */
    },
    {
	162, 0x00a2,  600, PSDRV_AGLGlyphNames +  822,
		{   96,  -49,  500,  614 }, NULL	/* cent */
    },
    {
	163, 0x00a3,  600, PSDRV_AGLGlyphNames + 1173,
		{   84,  -21,  521,  611 }, NULL	/* sterling */
    },
    {
	168, 0x00a4,  600, PSDRV_AGLGlyphNames +  843,
		{   73,   58,  527,  506 }, NULL	/* currency */
    },
    {
	165, 0x00a5,  600, PSDRV_AGLGlyphNames + 1247,
		{   26,    0,  574,  562 }, NULL	/* yen */
    },
    {
	 -1, 0x00a6,  600, PSDRV_AGLGlyphNames +  810,
		{  275, -175,  326,  675 }, NULL	/* brokenbar */
    },
    {
	167, 0x00a7,  600, PSDRV_AGLGlyphNames + 1152,
		{  113,  -78,  488,  580 }, NULL	/* section */
    },
    {
	200, 0x00a8,  600, PSDRV_AGLGlyphNames +  859,
		{  148,  492,  453,  595 }, NULL	/* dieresis */
    },
    {
	 -1, 0x00a9,  600, PSDRV_AGLGlyphNames +  840,
		{    0,  -18,  600,  580 }, NULL	/* copyright */
    },
    {
	227, 0x00aa,  600, PSDRV_AGLGlyphNames + 1071,
		{  156,  249,  442,  580 }, NULL	/* ordfeminine */
    },
    {
	171, 0x00ab,  600, PSDRV_AGLGlyphNames +  950,
		{   37,   70,  563,  446 }, NULL	/* guillemotleft */
    },
    {
	 -1, 0x00ac,  600, PSDRV_AGLGlyphNames + 1009,
		{   87,  108,  513,  369 }, NULL	/* logicalnot */
    },
    {
	 -1, 0x00ae,  600, PSDRV_AGLGlyphNames + 1135,
		{    0,  -18,  600,  580 }, NULL	/* registered */
    },
    {
	 -1, 0x00b0,  600, PSDRV_AGLGlyphNames +  856,
		{  123,  269,  477,  622 }, NULL	/* degree */
    },
    {
	 -1, 0x00b1,  600, PSDRV_AGLGlyphNames + 1106,
		{   87,   44,  513,  558 }, NULL	/* plusminus */
    },
    {
	 -1, 0x00b2,  600, PSDRV_AGLGlyphNames + 1210,
		{  177,  249,  424,  622 }, NULL	/* twosuperior */
    },
    {
	 -1, 0x00b3,  600, PSDRV_AGLGlyphNames + 1194,
		{  155,  240,  406,  622 }, NULL	/* threesuperior */
    },
    {
	194, 0x00b4,  600, PSDRV_AGLGlyphNames +  500,
		{  242,  497,  469,  672 }, NULL	/* acute */
    },
    {
	182, 0x00b6,  600, PSDRV_AGLGlyphNames + 1080,
		{   50,  -78,  511,  562 }, NULL	/* paragraph */
    },
    {
	180, 0x00b7,  600, PSDRV_AGLGlyphNames + 1096,
		{  222,  189,  378,  327 }, NULL	/* periodcentered */
    },
    {
	203, 0x00b8,  600, PSDRV_AGLGlyphNames +  821,
		{  224, -151,  362,   10 }, NULL	/* cedilla */
    },
    {
	 -1, 0x00b9,  600, PSDRV_AGLGlyphNames + 1068,
		{  172,  249,  428,  622 }, NULL	/* onesuperior */
    },
    {
	235, 0x00ba,  600, PSDRV_AGLGlyphNames + 1072,
		{  157,  249,  443,  580 }, NULL	/* ordmasculine */
    },
    {
	187, 0x00bb,  600, PSDRV_AGLGlyphNames +  951,
		{   37,   70,  563,  446 }, NULL	/* guillemotright */
    },
    {
	 -1, 0x00bc,  600, PSDRV_AGLGlyphNames + 1067,
		{    0,  -57,  600,  665 }, NULL	/* onequarter */
    },
    {
	 -1, 0x00bd,  600, PSDRV_AGLGlyphNames + 1064,
		{    0,  -57,  611,  665 }, NULL	/* onehalf */
    },
    {
	 -1, 0x00be,  600, PSDRV_AGLGlyphNames + 1192,
		{    8,  -56,  593,  666 }, NULL	/* threequarters */
    },
    {
	191, 0x00bf,  600, PSDRV_AGLGlyphNames + 1115,
		{  108, -157,  471,  430 }, NULL	/* questiondown */
    },
    {
	 -1, 0x00c0,  600, PSDRV_AGLGlyphNames +   13,
		{    3,    0,  597,  793 }, NULL	/* Agrave */
    },
    {
	 -1, 0x00c1,  600, PSDRV_AGLGlyphNames +    4,
		{    3,    0,  597,  793 }, NULL	/* Aacute */
    },
    {
	 -1, 0x00c2,  600, PSDRV_AGLGlyphNames +    7,
		{    3,    0,  597,  775 }, NULL	/* Acircumflex */
    },
    {
	 -1, 0x00c3,  600, PSDRV_AGLGlyphNames +   23,
		{    3,    0,  597,  732 }, NULL	/* Atilde */
    },
    {
	 -1, 0x00c4,  600, PSDRV_AGLGlyphNames +   11,
		{    3,    0,  597,  731 }, NULL	/* Adieresis */
    },
    {
	 -1, 0x00c5,  600, PSDRV_AGLGlyphNames +   19,
		{    3,    0,  597,  753 }, NULL	/* Aring */
    },
    {
	225, 0x00c6,  600, PSDRV_AGLGlyphNames +    1,
		{    3,    0,  550,  562 }, NULL	/* AE */
    },
    {
	 -1, 0x00c7,  600, PSDRV_AGLGlyphNames +   34,
		{   41, -151,  540,  580 }, NULL	/* Ccedilla */
    },
    {
	 -1, 0x00c8,  600, PSDRV_AGLGlyphNames +   62,
		{   53,    0,  550,  793 }, NULL	/* Egrave */
    },
    {
	 -1, 0x00c9,  600, PSDRV_AGLGlyphNames +   53,
		{   53,    0,  550,  793 }, NULL	/* Eacute */
    },
    {
	 -1, 0x00ca,  600, PSDRV_AGLGlyphNames +   57,
		{   53,    0,  550,  775 }, NULL	/* Ecircumflex */
    },
    {
	 -1, 0x00cb,  600, PSDRV_AGLGlyphNames +   59,
		{   53,    0,  550,  731 }, NULL	/* Edieresis */
    },
    {
	 -1, 0x00cc,  600, PSDRV_AGLGlyphNames +  109,
		{   96,    0,  504,  793 }, NULL	/* Igrave */
    },
    {
	 -1, 0x00cd,  600, PSDRV_AGLGlyphNames +   99,
		{   96,    0,  504,  793 }, NULL	/* Iacute */
    },
    {
	 -1, 0x00ce,  600, PSDRV_AGLGlyphNames +  102,
		{   96,    0,  504,  775 }, NULL	/* Icircumflex */
    },
    {
	 -1, 0x00cf,  600, PSDRV_AGLGlyphNames +  104,
		{   96,    0,  504,  731 }, NULL	/* Idieresis */
    },
    {
	 -1, 0x00d0,  600, PSDRV_AGLGlyphNames +   72,
		{   30,    0,  574,  562 }, NULL	/* Eth */
    },
    {
	 -1, 0x00d1,  600, PSDRV_AGLGlyphNames +  145,
		{    7,  -13,  593,  732 }, NULL	/* Ntilde */
    },
    {
	 -1, 0x00d2,  600, PSDRV_AGLGlyphNames +  159,
		{   43,  -18,  557,  793 }, NULL	/* Ograve */
    },
    {
	 -1, 0x00d3,  600, PSDRV_AGLGlyphNames +  151,
		{   43,  -18,  557,  793 }, NULL	/* Oacute */
    },
    {
	 -1, 0x00d4,  600, PSDRV_AGLGlyphNames +  154,
		{   43,  -18,  557,  775 }, NULL	/* Ocircumflex */
    },
    {
	 -1, 0x00d5,  600, PSDRV_AGLGlyphNames +  172,
		{   43,  -18,  557,  732 }, NULL	/* Otilde */
    },
    {
	 -1, 0x00d6,  600, PSDRV_AGLGlyphNames +  156,
		{   43,  -18,  557,  731 }, NULL	/* Odieresis */
    },
    {
	 -1, 0x00d7,  600, PSDRV_AGLGlyphNames + 1024,
		{   87,   43,  515,  470 }, NULL	/* multiply */
    },
    {
	233, 0x00d8,  600, PSDRV_AGLGlyphNames +  168,
		{   43,  -80,  557,  629 }, NULL	/* Oslash */
    },
    {
	 -1, 0x00d9,  600, PSDRV_AGLGlyphNames +  256,
		{   17,  -18,  583,  793 }, NULL	/* Ugrave */
    },
    {
	 -1, 0x00da,  600, PSDRV_AGLGlyphNames +  249,
		{   17,  -18,  583,  793 }, NULL	/* Uacute */
    },
    {
	 -1, 0x00db,  600, PSDRV_AGLGlyphNames +  252,
		{   17,  -18,  583,  775 }, NULL	/* Ucircumflex */
    },
    {
	 -1, 0x00dc,  600, PSDRV_AGLGlyphNames +  254,
		{   17,  -18,  583,  731 }, NULL	/* Udieresis */
    },
    {
	 -1, 0x00dd,  600, PSDRV_AGLGlyphNames +  281,
		{   24,    0,  576,  793 }, NULL	/* Yacute */
    },
    {
	 -1, 0x00de,  600, PSDRV_AGLGlyphNames +  244,
		{   79,    0,  538,  562 }, NULL	/* Thorn */
    },
    {
	251, 0x00df,  600, PSDRV_AGLGlyphNames +  943,
		{   48,  -15,  588,  629 }, NULL	/* germandbls */
    },
    {
	 -1, 0x00e0,  600, PSDRV_AGLGlyphNames +  750,
		{   53,  -15,  559,  672 }, NULL	/* agrave */
    },
    {
	 -1, 0x00e1,  600, PSDRV_AGLGlyphNames +  497,
		{   53,  -15,  559,  672 }, NULL	/* aacute */
    },
    {
	 -1, 0x00e2,  600, PSDRV_AGLGlyphNames +  499,
		{   53,  -15,  559,  654 }, NULL	/* acircumflex */
    },
    {
	 -1, 0x00e3,  600, PSDRV_AGLGlyphNames +  786,
		{   53,  -15,  559,  606 }, NULL	/* atilde */
    },
    {
	 -1, 0x00e4,  600, PSDRV_AGLGlyphNames +  502,
		{   53,  -15,  559,  595 }, NULL	/* adieresis */
    },
    {
	 -1, 0x00e5,  600, PSDRV_AGLGlyphNames +  764,
		{   53,  -15,  559,  627 }, NULL	/* aring */
    },
    {
	241, 0x00e6,  600, PSDRV_AGLGlyphNames +  503,
		{   19,  -15,  570,  441 }, NULL	/* ae */
    },
    {
	 -1, 0x00e7,  600, PSDRV_AGLGlyphNames +  818,
		{   66, -151,  529,  441 }, NULL	/* ccedilla */
    },
    {
	 -1, 0x00e8,  600, PSDRV_AGLGlyphNames +  885,
		{   66,  -15,  548,  672 }, NULL	/* egrave */
    },
    {
	 -1, 0x00e9,  600, PSDRV_AGLGlyphNames +  879,
		{   66,  -15,  548,  672 }, NULL	/* eacute */
    },
    {
	 -1, 0x00ea,  600, PSDRV_AGLGlyphNames +  882,
		{   66,  -15,  548,  654 }, NULL	/* ecircumflex */
    },
    {
	 -1, 0x00eb,  600, PSDRV_AGLGlyphNames +  883,
		{   66,  -15,  548,  595 }, NULL	/* edieresis */
    },
    {
	 -1, 0x00ec,  600, PSDRV_AGLGlyphNames +  969,
		{   95,    0,  505,  672 }, NULL	/* igrave */
    },
    {
	 -1, 0x00ed,  600, PSDRV_AGLGlyphNames +  965,
		{   95,    0,  505,  672 }, NULL	/* iacute */
    },
    {
	 -1, 0x00ee,  600, PSDRV_AGLGlyphNames +  967,
		{   94,    0,  505,  654 }, NULL	/* icircumflex */
    },
    {
	 -1, 0x00ef,  600, PSDRV_AGLGlyphNames +  968,
		{   95,    0,  505,  595 }, NULL	/* idieresis */
    },
    {
	 -1, 0x00f0,  600, PSDRV_AGLGlyphNames +  906,
		{   62,  -15,  538,  629 }, NULL	/* eth */
    },
    {
	 -1, 0x00f1,  600, PSDRV_AGLGlyphNames + 1041,
		{   26,    0,  575,  606 }, NULL	/* ntilde */
    },
    {
	 -1, 0x00f2,  600, PSDRV_AGLGlyphNames + 1051,
		{   62,  -15,  538,  672 }, NULL	/* ograve */
    },
    {
	 -1, 0x00f3,  600, PSDRV_AGLGlyphNames + 1045,
		{   62,  -15,  538,  672 }, NULL	/* oacute */
    },
    {
	 -1, 0x00f4,  600, PSDRV_AGLGlyphNames + 1047,
		{   62,  -15,  538,  654 }, NULL	/* ocircumflex */
    },
    {
	 -1, 0x00f5,  600, PSDRV_AGLGlyphNames + 1077,
		{   62,  -15,  538,  606 }, NULL	/* otilde */
    },
    {
	 -1, 0x00f6,  600, PSDRV_AGLGlyphNames + 1048,
		{   62,  -15,  538,  595 }, NULL	/* odieresis */
    },
    {
	 -1, 0x00f7,  600, PSDRV_AGLGlyphNames +  863,
		{   87,   48,  513,  467 }, NULL	/* divide */
    },
    {
	249, 0x00f8,  600, PSDRV_AGLGlyphNames + 1074,
		{   62,  -80,  538,  506 }, NULL	/* oslash */
    },
    {
	 -1, 0x00f9,  600, PSDRV_AGLGlyphNames + 1217,
		{   21,  -15,  562,  672 }, NULL	/* ugrave */
    },
    {
	 -1, 0x00fa,  600, PSDRV_AGLGlyphNames + 1213,
		{   21,  -15,  562,  672 }, NULL	/* uacute */
    },
    {
	 -1, 0x00fb,  600, PSDRV_AGLGlyphNames + 1215,
		{   21,  -15,  562,  654 }, NULL	/* ucircumflex */
    },
    {
	 -1, 0x00fc,  600, PSDRV_AGLGlyphNames + 1216,
		{   21,  -15,  562,  595 }, NULL	/* udieresis */
    },
    {
	 -1, 0x00fd,  600, PSDRV_AGLGlyphNames + 1244,
		{    7, -157,  592,  672 }, NULL	/* yacute */
    },
    {
	 -1, 0x00fe,  600, PSDRV_AGLGlyphNames + 1187,
		{   -6, -157,  555,  629 }, NULL	/* thorn */
    },
    {
	 -1, 0x00ff,  600, PSDRV_AGLGlyphNames + 1246,
		{    7, -157,  592,  595 }, NULL	/* ydieresis */
    },
    {
	245, 0x0131,  600, PSDRV_AGLGlyphNames +  873,
		{   95,    0,  505,  426 }, NULL	/* dotlessi */
    },
    {
	 -1, 0x0132,  600, PSDRV_AGLGlyphNames +   98,
		{   32,  -18,  583,  562 }, NULL	/* IJ */
    },
    {
	 -1, 0x0133,  600, PSDRV_AGLGlyphNames +  970,
		{   37, -157,  490,  657 }, NULL	/* ij */
    },
    {
	232, 0x0141,  600, PSDRV_AGLGlyphNames +  132,
		{   47,    0,  554,  562 }, NULL	/* Lslash */
    },
    {
	248, 0x0142,  600, PSDRV_AGLGlyphNames + 1013,
		{   95,    0,  505,  629 }, NULL	/* lslash */
    },
    {
	234, 0x0152,  600, PSDRV_AGLGlyphNames +  149,
		{    7,    0,  567,  562 }, NULL	/* OE */
    },
    {
	250, 0x0153,  600, PSDRV_AGLGlyphNames + 1049,
		{   19,  -15,  559,  441 }, NULL	/* oe */
    },
    {
	 -1, 0x015e,  600, PSDRV_AGLGlyphNames +  233,
		{   72, -151,  529,  580 }, NULL	/* Scedilla */
    },
    {
	 -1, 0x0160,  600, PSDRV_AGLGlyphNames +  231,
		{   72,  -20,  529,  805 }, NULL	/* Scaron */
    },
    {
	 -1, 0x0161,  600, PSDRV_AGLGlyphNames + 1147,
		{   80,  -15,  513,  669 }, NULL	/* scaron */
    },
    {
	 -1, 0x0178,  600, PSDRV_AGLGlyphNames +  284,
		{   24,    0,  576,  731 }, NULL	/* Ydieresis */
    },
    {
	 -1, 0x017d,  600, PSDRV_AGLGlyphNames +  290,
		{   86,    0,  514,  805 }, NULL	/* Zcaron */
    },
    {
	 -1, 0x017e,  600, PSDRV_AGLGlyphNames + 1251,
		{   99,    0,  502,  669 }, NULL	/* zcaron */
    },
    {
	166, 0x0192,  600, PSDRV_AGLGlyphNames +  928,
		{    4, -143,  539,  622 }, NULL	/* florin */
    },
    {
	 -1, 0x01e6,  600, PSDRV_AGLGlyphNames +   80,
		{   31,  -18,  575,  805 }, NULL	/* Gcaron */
    },
    {
	 -1, 0x01e7,  600, PSDRV_AGLGlyphNames +  939,
		{   45, -157,  566,  669 }, NULL	/* gcaron */
    },
    {
	195, 0x02c6,  600, PSDRV_AGLGlyphNames +  831,
		{  124,  477,  476,  654 }, NULL	/* circumflex */
    },
    {
	207, 0x02c7,  600, PSDRV_AGLGlyphNames +  815,
		{  124,  492,  476,  669 }, NULL	/* caron */
    },
    {
	197, 0x02c9,  600, PSDRV_AGLGlyphNames + 1017,
		{  120,  525,  480,  565 }, NULL	/* macron */
    },
    {
	198, 0x02d8,  600, PSDRV_AGLGlyphNames +  809,
		{  153,  501,  447,  609 }, NULL	/* breve */
    },
    {
	199, 0x02d9,  600, PSDRV_AGLGlyphNames +  871,
		{  249,  477,  352,  580 }, NULL	/* dotaccent */
    },
    {
	202, 0x02da,  600, PSDRV_AGLGlyphNames + 1141,
		{  218,  463,  382,  627 }, NULL	/* ring */
    },
    {
	206, 0x02db,  600, PSDRV_AGLGlyphNames + 1050,
		{  227, -151,  370,    0 }, NULL	/* ogonek */
    },
    {
	196, 0x02dc,  600, PSDRV_AGLGlyphNames + 1195,
		{  105,  489,  503,  606 }, NULL	/* tilde */
    },
    {
	205, 0x02dd,  600, PSDRV_AGLGlyphNames +  960,
		{  133,  497,  540,  672 }, NULL	/* hungarumlaut */
    },
    {
	 -1, 0x03bc,  600, PSDRV_AGLGlyphNames + 1023,
		{   21, -157,  562,  426 }, NULL	/* mu */
    },
    {
	177, 0x2013,  600, PSDRV_AGLGlyphNames +  895,
		{   75,  231,  525,  285 }, NULL	/* endash */
    },
    {
	208, 0x2014,  600, PSDRV_AGLGlyphNames +  893,
		{    0,  231,  600,  285 }, NULL	/* emdash */
    },
    {
	 96, 0x2018,  600, PSDRV_AGLGlyphNames + 1122,
		{  224,  328,  387,  562 }, NULL	/* quoteleft */
    },
    {
	 39, 0x2019,  600, PSDRV_AGLGlyphNames + 1124,
		{  213,  328,  376,  562 }, NULL	/* quoteright */
    },
    {
	184, 0x201a,  600, PSDRV_AGLGlyphNames + 1125,
		{  213, -134,  376,  100 }, NULL	/* quotesinglbase */
    },
    {
	170, 0x201c,  600, PSDRV_AGLGlyphNames + 1120,
		{  143,  328,  471,  562 }, NULL	/* quotedblleft */
    },
    {
	186, 0x201d,  600, PSDRV_AGLGlyphNames + 1121,
		{  143,  328,  457,  562 }, NULL	/* quotedblright */
    },
    {
	185, 0x201e,  600, PSDRV_AGLGlyphNames + 1119,
		{  143, -134,  457,  100 }, NULL	/* quotedblbase */
    },
    {
	178, 0x2020,  600, PSDRV_AGLGlyphNames +  849,
		{  141,  -78,  459,  580 }, NULL	/* dagger */
    },
    {
	179, 0x2021,  600, PSDRV_AGLGlyphNames +  850,
		{  141,  -78,  459,  580 }, NULL	/* daggerdbl */
    },
    {
	183, 0x2022,  600, PSDRV_AGLGlyphNames +  812,
		{  172,  130,  428,  383 }, NULL	/* bullet */
    },
    {
	188, 0x2026,  600, PSDRV_AGLGlyphNames +  891,
		{   37,  -15,  563,  111 }, NULL	/* ellipsis */
    },
    {
	189, 0x2030,  600, PSDRV_AGLGlyphNames + 1100,
		{    3,  -15,  600,  622 }, NULL	/* perthousand */
    },
    {
	172, 0x2039,  600, PSDRV_AGLGlyphNames +  952,
		{  149,   70,  451,  446 }, NULL	/* guilsinglleft */
    },
    {
	173, 0x203a,  600, PSDRV_AGLGlyphNames +  953,
		{  149,   70,  451,  446 }, NULL	/* guilsinglright */
    },
    {
	 -1, 0x20a4,  600, PSDRV_AGLGlyphNames + 1006,
		{   73,  -21,  521,  611 }, NULL	/* lira */
    },
    {
	 -1, 0x211e,  600, PSDRV_AGLGlyphNames + 1107,
		{   27,  -15,  577,  562 }, NULL	/* prescription */
    },
    {
	 -1, 0x2122,  600, PSDRV_AGLGlyphNames + 1198,
		{  -23,  263,  623,  562 }, NULL	/* trademark */
    },
    {
	 -1, 0x2190,  600, PSDRV_AGLGlyphNames +  774,
		{  -24,  115,  624,  483 }, NULL	/* arrowleft */
    },
    {
	 -1, 0x2191,  600, PSDRV_AGLGlyphNames +  776,
		{  116,    0,  484,  623 }, NULL	/* arrowup */
    },
    {
	 -1, 0x2192,  600, PSDRV_AGLGlyphNames +  775,
		{  -24,  115,  624,  483 }, NULL	/* arrowright */
    },
    {
	 -1, 0x2193,  600, PSDRV_AGLGlyphNames +  772,
		{  116,  -15,  484,  608 }, NULL	/* arrowdown */
    },
    {
	 -1, 0x2194,  600, PSDRV_AGLGlyphNames +  766,
		{  -28,  115,  628,  483 }, NULL	/* arrowboth */
    },
    {
	 -1, 0x2212,  600, PSDRV_AGLGlyphNames + 1020,
		{   80,  232,  520,  283 }, NULL	/* minus */
    },
    {
	164, 0x2215,  600, PSDRV_AGLGlyphNames +  934,
		{   92,  -57,  509,  665 }, NULL	/* fraction */
    },
    {
	 -1, 0xf6bf,  600, PSDRV_AGLGlyphNames +  126,
		{    8,    0,  592,  562 }, NULL	/* LL */
    },
    {
	 -1, 0xf6c0,  600, PSDRV_AGLGlyphNames + 1007,
		{   18,    0,  567,  629 }, NULL	/* ll */
    },
    {
	 -1, 0xf6c2,  600, PSDRV_AGLGlyphNames + 1148,
		{   80, -151,  513,  441 }, NULL	/* scedilla */
    },
    {
	174, 0xfb01,  600, PSDRV_AGLGlyphNames +  918,
		{    3,    0,  597,  629 }, NULL	/* fi */
    },
    {
	175, 0xfb02,  600, PSDRV_AGLGlyphNames +  927,
		{    3,    0,  597,  629 }, NULL	/* fl */
    }
};


/*
 *  Font metrics
 */

const AFM PSDRV_Courier =
{
    "Courier",					/* FontName */
    "Courier",					/* FullName */
    "Courier",					/* FamilyName */
    "AdobeStandardEncoding",			/* EncodingScheme */
    FW_NORMAL,					/* Weight */
    0,						/* ItalicAngle */
    TRUE,					/* IsFixedPitch */
    -100,					/* UnderlinePosition */
    50,						/* UnderlineThickness */
    { -28, -250, 628, 805 },			/* FontBBox */
    562,					/* CapHeight */
    426,					/* XHeight */
    629,					/* Ascender */
    -157,					/* Descender */
    753,					/* FullAscender */
    {
	1000,				/* WinMetrics.usUnitsPerEm */
	833,				/* WinMetrics.sAscender */
	-300,				/* WinMetrics.sDescender */
	0,				/* WinMetrics.sLineGap */
	600,				/* WinMetrics.sAvgCharWidth */
	613,				/* WinMetrics.sTypoAscender */
	-188,				/* WinMetrics.sTypoDescender */
	0,				/* WinMetrics.sTypoLineGap */
	833,				/* WinMetrics.usWinAscent */
	300				/* 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, 600, 600, 600, 600, 600, 	/* CharWidths[30] - CharWidths[36] */
	600, 600, 600, 600, 600, 600, 	/* CharWidths[37] - CharWidths[42] */
	600, 600, 600, 600, 600, 600, 	/* CharWidths[43] - CharWidths[48] */
	600, 600, 600, 600, 600, 600, 	/* CharWidths[49] - CharWidths[54] */
	600, 600, 600, 600, 600, 600, 	/* CharWidths[55] - CharWidths[60] */
	600, 600, 600, 600, 600, 600, 	/* CharWidths[61] - CharWidths[66] */
	600, 600, 600, 600, 600, 600, 	/* CharWidths[67] - CharWidths[72] */
	600, 600, 600, 600, 600, 600, 	/* CharWidths[73] - CharWidths[78] */
	600, 600, 600, 600, 600, 600, 	/* CharWidths[79] - CharWidths[84] */
	600, 600, 600, 600, 600, 600, 	/* CharWidths[85] - CharWidths[90] */
	600, 600, 600, 600, 600, 600, 	/* CharWidths[91] - CharWidths[96] */
	600, 600, 600, 600, 600, 600, 	/* CharWidths[97] - CharWidths[102] */
	600, 600, 600, 600, 600, 600, 	/* CharWidths[103] - CharWidths[108] */
	600, 600, 600, 600, 600, 600, 	/* CharWidths[109] - CharWidths[114] */
	600, 600, 600, 600, 600, 600, 	/* CharWidths[115] - CharWidths[120] */
	600, 600, 600, 600, 600, 600, 	/* 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, 600, 	/* CharWidths[137] - CharWidths[145] */
	600, 600, 600, 600, 600, 600, 	/* CharWidths[146] - CharWidths[151] */
	0, 0, 0, 0, 0, 0, 0, 0, 600, 	/* CharWidths[152] - CharWidths[160] */
	600, 600, 600, 600, 600, 600, 	/* CharWidths[161] - CharWidths[166] */
	600, 600, 600, 600, 600, 600, 	/* CharWidths[167] - CharWidths[172] */
	600, 600, 600, 600, 600, 600, 	/* CharWidths[173] - CharWidths[178] */
	600, 600, 0, 600, 600, 600, 	/* CharWidths[179] - CharWidths[184] */
	600, 600, 600, 600, 600, 600, 	/* CharWidths[185] - CharWidths[190] */
	600, 0, 600, 600, 600, 600, 	/* CharWidths[191] - CharWidths[196] */
	600, 600, 600, 600, 0, 600, 	/* CharWidths[197] - CharWidths[202] */
	600, 0, 600, 600, 600, 600, 0, 	/* CharWidths[203] - CharWidths[209] */
	0, 0, 0, 0, 0, 600, 0, 0, 0, 	/* CharWidths[210] - CharWidths[218] */
	0, 0, 0, 0, 0, 0, 600, 0, 600, 	/* CharWidths[219] - CharWidths[227] */
	0, 0, 0, 0, 600, 600, 600, 	/* CharWidths[228] - CharWidths[234] */
	600, 0, 0, 0, 0, 0, 600, 0, 0, 	/* CharWidths[235] - CharWidths[243] */
	0, 600, 0, 600, 600, 600, 600, 	/* CharWidths[244] - CharWidths[250] */
	600, 0, 0, 0, 0			/* CharWidths[251] - CharWidths[255] */
    },
    243,					/* NumofMetrics */
    met_Courier				/* Metrics */
};
