/*******************************************************************************
 *
 *	Font metric data for ITC Bookman Demi Italic
 *
 *	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 Bookman Old Style Bold Italic, which is
 *  	Copyright 1991-1995 The Monotype Corporation.
 *
 */

#include "psdrv.h"


/*
 *  Glyph metrics
 */

static const AFMMETRICS met_Bookman_DemiItalic[228] = 
{
    {
	 32, 0x0020,  340, PSDRV_AGLGlyphNames + 1169,
		{    0,    0,    0,    0 }, NULL	/* space */
    },
    {
	 33, 0x0021,  320, PSDRV_AGLGlyphNames +  907,
		{   86,   -8,  366,  698 }, NULL	/* exclam */
    },
    {
	 34, 0x0022,  380, PSDRV_AGLGlyphNames + 1118,
		{  140,  371,  507,  697 }, NULL	/* quotedbl */
    },
    {
	 35, 0x0023,  680, PSDRV_AGLGlyphNames + 1043,
		{  157,    0,  649,  681 }, NULL	/* numbersign */
    },
    {
	 36, 0x0024,  680, PSDRV_AGLGlyphNames +  866,
		{   45, -164,  697,  790 }, NULL	/* dollar */
    },
    {
	 37, 0x0025,  880, PSDRV_AGLGlyphNames + 1094,
		{  106,  -17,  899,  698 }, NULL	/* percent */
    },
    {
	 38, 0x0026,  980, PSDRV_AGLGlyphNames +  755,
		{   48,  -17, 1016,  698 }, NULL	/* ampersand */
    },
    {
	169, 0x0027,  180, PSDRV_AGLGlyphNames + 1126,
		{  126,  370,  295,  696 }, NULL	/* quotesingle */
    },
    {
	 40, 0x0028,  260, PSDRV_AGLGlyphNames + 1081,
		{   31, -134,  388,  741 }, NULL	/* parenleft */
    },
    {
	 41, 0x0029,  260, PSDRV_AGLGlyphNames + 1087,
		{  -35, -134,  322,  741 }, NULL	/* parenright */
    },
    {
	 42, 0x002a,  460, PSDRV_AGLGlyphNames +  782,
		{  126,  346,  508,  698 }, NULL	/* asterisk */
    },
    {
	 43, 0x002b,  600, PSDRV_AGLGlyphNames + 1105,
		{   91,    9,  595,  514 }, NULL	/* plus */
    },
    {
	 44, 0x002c,  340, PSDRV_AGLGlyphNames +  835,
		{  100, -124,  298,  185 }, NULL	/* comma */
    },
    {
	 45, 0x002d,  280, PSDRV_AGLGlyphNames +  961,
		{   59,  218,  319,  313 }, NULL	/* hyphen */
    },
    {
	 46, 0x002e,  340, PSDRV_AGLGlyphNames + 1095,
		{  106,   -8,  296,  177 }, NULL	/* period */
    },
    {
	 47, 0x002f,  360, PSDRV_AGLGlyphNames + 1167,
		{    9, -106,  502,  742 }, NULL	/* slash */
    },
    {
	 48, 0x0030,  680, PSDRV_AGLGlyphNames + 1253,
		{   87,  -17,  703,  698 }, NULL	/* zero */
    },
    {
	 49, 0x0031,  680, PSDRV_AGLGlyphNames + 1060,
		{  123,    0,  565,  681 }, NULL	/* one */
    },
    {
	 50, 0x0032,  680, PSDRV_AGLGlyphNames + 1206,
		{   67,    0,  674,  698 }, NULL	/* two */
    },
    {
	 51, 0x0033,  680, PSDRV_AGLGlyphNames + 1188,
		{   72,  -17,  683,  698 }, NULL	/* three */
    },
    {
	 52, 0x0034,  680, PSDRV_AGLGlyphNames +  930,
		{   63,    0,  708,  681 }, NULL	/* four */
    },
    {
	 53, 0x0035,  680, PSDRV_AGLGlyphNames +  922,
		{   78,  -17,  669,  681 }, NULL	/* five */
    },
    {
	 54, 0x0036,  680, PSDRV_AGLGlyphNames + 1163,
		{   88,  -17,  704,  698 }, NULL	/* six */
    },
    {
	 55, 0x0037,  680, PSDRV_AGLGlyphNames + 1154,
		{  123,    0,  739,  681 }, NULL	/* seven */
    },
    {
	 56, 0x0038,  680, PSDRV_AGLGlyphNames +  886,
		{   68,  -17,  686,  698 }, NULL	/* eight */
    },
    {
	 57, 0x0039,  680, PSDRV_AGLGlyphNames + 1032,
		{   71,  -17,  712,  698 }, NULL	/* nine */
    },
    {
	 58, 0x003a,  340, PSDRV_AGLGlyphNames +  833,
		{  106,   -8,  356,  515 }, NULL	/* colon */
    },
    {
	 59, 0x003b,  340, PSDRV_AGLGlyphNames + 1153,
		{  100, -124,  352,  515 }, NULL	/* semicolon */
    },
    {
	 60, 0x003c,  620, PSDRV_AGLGlyphNames + 1003,
		{   79,   -9,  588,  540 }, NULL	/* less */
    },
    {
	 61, 0x003d,  600, PSDRV_AGLGlyphNames +  900,
		{   91,  109,  595,  421 }, NULL	/* equal */
    },
    {
	 62, 0x003e,  620, PSDRV_AGLGlyphNames +  948,
		{   89,   -9,  598,  540 }, NULL	/* greater */
    },
    {
	 63, 0x003f,  620, PSDRV_AGLGlyphNames + 1114,
		{  145,   -8,  668,  698 }, NULL	/* question */
    },
    {
	 64, 0x0040,  780, PSDRV_AGLGlyphNames +  785,
		{   80,  -17,  790,  698 }, NULL	/* at */
    },
    {
	 65, 0x0041,  720, PSDRV_AGLGlyphNames +    0,
		{  -27,    0,  769,  681 }, NULL	/* A */
    },
    {
	 66, 0x0042,  720, PSDRV_AGLGlyphNames +   25,
		{   14,    0,  762,  681 }, NULL	/* B */
    },
    {
	 67, 0x0043,  700, PSDRV_AGLGlyphNames +   29,
		{   78,  -17,  754,  698 }, NULL	/* C */
    },
    {
	 68, 0x0044,  760, PSDRV_AGLGlyphNames +   42,
		{   14,    0,  805,  681 }, NULL	/* D */
    },
    {
	 69, 0x0045,  720, PSDRV_AGLGlyphNames +   52,
		{   14,    0,  777,  681 }, NULL	/* E */
    },
    {
	 70, 0x0046,  660, PSDRV_AGLGlyphNames +   75,
		{   14,    0,  763,  681 }, NULL	/* F */
    },
    {
	 71, 0x0047,  760, PSDRV_AGLGlyphNames +   77,
		{   77,  -17,  828,  698 }, NULL	/* G */
    },
    {
	 72, 0x0048,  800, PSDRV_AGLGlyphNames +   87,
		{   14,    0,  910,  681 }, NULL	/* H */
    },
    {
	 73, 0x0049,  380, PSDRV_AGLGlyphNames +   97,
		{   14,    0,  485,  681 }, NULL	/* I */
    },
    {
	 74, 0x004a,  620, PSDRV_AGLGlyphNames +  118,
		{    8,  -17,  721,  681 }, NULL	/* J */
    },
    {
	 75, 0x004b,  780, PSDRV_AGLGlyphNames +  121,
		{   14,    0,  879,  681 }, NULL	/* K */
    },
    {
	 76, 0x004c,  640, PSDRV_AGLGlyphNames +  125,
		{   14,    0,  725,  681 }, NULL	/* L */
    },
    {
	 77, 0x004d,  860, PSDRV_AGLGlyphNames +  135,
		{   14,    0,  970,  681 }, NULL	/* M */
    },
    {
	 78, 0x004e,  740, PSDRV_AGLGlyphNames +  140,
		{   14,    0,  845,  681 }, NULL	/* N */
    },
    {
	 79, 0x004f,  760, PSDRV_AGLGlyphNames +  148,
		{   78,  -17,  806,  698 }, NULL	/* O */
    },
    {
	 80, 0x0050,  640, PSDRV_AGLGlyphNames +  174,
		{   -6,    0,  724,  681 }, NULL	/* P */
    },
    {
	 81, 0x0051,  760, PSDRV_AGLGlyphNames +  179,
		{   37, -213,  805,  698 }, NULL	/* Q */
    },
    {
	 82, 0x0052,  740, PSDRV_AGLGlyphNames +  181,
		{   14,    0,  765,  681 }, NULL	/* R */
    },
    {
	 83, 0x0053,  700, PSDRV_AGLGlyphNames +  189,
		{   59,  -17,  731,  698 }, NULL	/* S */
    },
    {
	 84, 0x0054,  700, PSDRV_AGLGlyphNames +  238,
		{   70,    0,  802,  681 }, NULL	/* T */
    },
    {
	 85, 0x0055,  740, PSDRV_AGLGlyphNames +  248,
		{  112,  -17,  855,  681 }, NULL	/* U */
    },
    {
	 86, 0x0056,  660, PSDRV_AGLGlyphNames +  269,
		{   72,    0,  819,  681 }, NULL	/* V */
    },
    {
	 87, 0x0057, 1000, PSDRV_AGLGlyphNames +  271,
		{   72,    0, 1090,  681 }, NULL	/* W */
    },
    {
	 88, 0x0058,  740, PSDRV_AGLGlyphNames +  277,
		{   -7,    0,  835,  681 }, NULL	/* X */
    },
    {
	 89, 0x0059,  660, PSDRV_AGLGlyphNames +  280,
		{   72,    0,  817,  681 }, NULL	/* Y */
    },
    {
	 90, 0x005a,  680, PSDRV_AGLGlyphNames +  288,
		{   23,    0,  740,  681 }, NULL	/* Z */
    },
    {
	 91, 0x005b,  260, PSDRV_AGLGlyphNames +  801,
		{    9, -118,  374,  741 }, NULL	/* bracketleft */
    },
    {
	 92, 0x005c,  580, PSDRV_AGLGlyphNames +  788,
		{   73,    0,  575,  741 }, NULL	/* backslash */
    },
    {
	 93, 0x005d,  260, PSDRV_AGLGlyphNames +  805,
		{  -18, -118,  347,  741 }, NULL	/* bracketright */
    },
    {
	 94, 0x005e,  620, PSDRV_AGLGlyphNames +  780,
		{   92,  281,  594,  681 }, NULL	/* asciicircum */
    },
    {
	 95, 0x005f,  500, PSDRV_AGLGlyphNames + 1221,
		{    0, -125,  500,  -75 }, NULL	/* underscore */
    },
    {
	193, 0x0060,  380, PSDRV_AGLGlyphNames +  945,
		{  193,  566,  424,  771 }, NULL	/* grave */
    },
    {
	 97, 0x0061,  680, PSDRV_AGLGlyphNames +  295,
		{   84,   -8,  735,  515 }, NULL	/* a */
    },
    {
	 98, 0x0062,  600, PSDRV_AGLGlyphNames +  787,
		{   57,   -8,  633,  732 }, NULL	/* b */
    },
    {
	 99, 0x0063,  560, PSDRV_AGLGlyphNames +  813,
		{   58,   -8,  597,  515 }, NULL	/* c */
    },
    {
	100, 0x0064,  680, PSDRV_AGLGlyphNames +  848,
		{   60,   -8,  714,  732 }, NULL	/* d */
    },
    {
	101, 0x0065,  560, PSDRV_AGLGlyphNames +  878,
		{   59,   -8,  596,  515 }, NULL	/* e */
    },
    {
	102, 0x0066,  420, PSDRV_AGLGlyphNames +  913,
		{ -192, -213,  641,  741 }, NULL	/* f */
    },
    {
	103, 0x0067,  620, PSDRV_AGLGlyphNames +  936,
		{   21, -213,  669,  515 }, NULL	/* g */
    },
    {
	104, 0x0068,  700, PSDRV_AGLGlyphNames +  954,
		{   93,   -8,  736,  732 }, NULL	/* h */
    },
    {
	105, 0x0069,  380, PSDRV_AGLGlyphNames +  964,
		{   83,   -8,  420,  755 }, NULL	/* i */
    },
    {
	106, 0x006a,  320, PSDRV_AGLGlyphNames +  989,
		{ -160, -213,  392,  755 }, NULL	/* j */
    },
    {
	107, 0x006b,  700, PSDRV_AGLGlyphNames +  991,
		{   97,   -8,  732,  732 }, NULL	/* k */
    },
    {
	108, 0x006c,  380, PSDRV_AGLGlyphNames +  995,
		{  109,   -8,  410,  732 }, NULL	/* l */
    },
    {
	109, 0x006d,  960, PSDRV_AGLGlyphNames + 1016,
		{   83,   -8,  996,  515 }, NULL	/* m */
    },
    {
	110, 0x006e,  680, PSDRV_AGLGlyphNames + 1027,
		{   83,   -8,  715,  515 }, NULL	/* n */
    },
    {
	111, 0x006f,  600, PSDRV_AGLGlyphNames + 1044,
		{   59,   -8,  627,  515 }, NULL	/* o */
    },
    {
	112, 0x0070,  660, PSDRV_AGLGlyphNames + 1079,
		{  -24, -213,  682,  515 }, NULL	/* p */
    },
    {
	113, 0x0071,  620, PSDRV_AGLGlyphNames + 1113,
		{   60, -213,  640,  515 }, NULL	/* q */
    },
    {
	114, 0x0072,  500, PSDRV_AGLGlyphNames + 1127,
		{   84,    0,  582,  515 }, NULL	/* r */
    },
    {
	115, 0x0073,  540, PSDRV_AGLGlyphNames + 1145,
		{   32,   -8,  573,  515 }, NULL	/* s */
    },
    {
	116, 0x0074,  440, PSDRV_AGLGlyphNames + 1178,
		{  106,   -8,  488,  658 }, NULL	/* t */
    },
    {
	117, 0x0075,  680, PSDRV_AGLGlyphNames + 1212,
		{   83,   -8,  720,  507 }, NULL	/* u */
    },
    {
	118, 0x0076,  540, PSDRV_AGLGlyphNames + 1234,
		{   56,   -8,  572,  515 }, NULL	/* v */
    },
    {
	119, 0x0077,  860, PSDRV_AGLGlyphNames + 1235,
		{   56,   -8,  891,  515 }, NULL	/* w */
    },
    {
	120, 0x0078,  620, PSDRV_AGLGlyphNames + 1241,
		{   10,   -8,  654,  515 }, NULL	/* x */
    },
    {
	121, 0x0079,  600, PSDRV_AGLGlyphNames + 1243,
		{   25, -213,  642,  507 }, NULL	/* y */
    },
    {
	122, 0x007a,  560, PSDRV_AGLGlyphNames + 1249,
		{   36,   -8,  586,  515 }, NULL	/* z */
    },
    {
	123, 0x007b,  300, PSDRV_AGLGlyphNames +  793,
		{   49, -123,  413,  742 }, NULL	/* braceleft */
    },
    {
	124, 0x007c,  620, PSDRV_AGLGlyphNames +  789,
		{  303, -250,  422,  750 }, NULL	/* bar */
    },
    {
	125, 0x007d,  300, PSDRV_AGLGlyphNames +  797,
		{   -8, -114,  356,  751 }, NULL	/* braceright */
    },
    {
	126, 0x007e,  620, PSDRV_AGLGlyphNames +  781,
		{  101,  162,  605,  368 }, NULL	/* asciitilde */
    },
    {
	161, 0x00a1,  320, PSDRV_AGLGlyphNames +  909,
		{   64, -191,  344,  515 }, NULL	/* exclamdown */
    },
    {
	162, 0x00a2,  680, PSDRV_AGLGlyphNames +  822,
		{  161,   25,  616,  718 }, NULL	/* cent */
    },
    {
	163, 0x00a3,  680, PSDRV_AGLGlyphNames + 1173,
		{    0,  -17,  787,  698 }, NULL	/* sterling */
    },
    {
	168, 0x00a4,  680, PSDRV_AGLGlyphNames +  843,
		{  148,   85,  637,  571 }, NULL	/* currency */
    },
    {
	165, 0x00a5,  680, PSDRV_AGLGlyphNames + 1247,
		{   92,    0,  782,  681 }, NULL	/* yen */
    },
    {
	 -1, 0x00a6,  620, PSDRV_AGLGlyphNames +  810,
		{  303, -175,  422,  675 }, NULL	/* brokenbar */
    },
    {
	167, 0x00a7,  620, PSDRV_AGLGlyphNames + 1152,
		{   46, -137,  638,  698 }, NULL	/* section */
    },
    {
	200, 0x00a8,  520, PSDRV_AGLGlyphNames +  859,
		{  180,  570,  569,  734 }, NULL	/* dieresis */
    },
    {
	 -1, 0x00a9,  780, PSDRV_AGLGlyphNames +  840,
		{   83,  -17,  783,  698 }, NULL	/* copyright */
    },
    {
	227, 0x00aa,  440, PSDRV_AGLGlyphNames + 1071,
		{  118,  400,  495,  685 }, NULL	/* ordfeminine */
    },
    {
	171, 0x00ab,  380, PSDRV_AGLGlyphNames +  950,
		{   62,   84,  406,  503 }, NULL	/* guillemotleft */
    },
    {
	 -1, 0x00ac,  620, PSDRV_AGLGlyphNames + 1009,
		{   81,  129,  585,  421 }, NULL	/* logicalnot */
    },
    {
	 -1, 0x00ae,  780, PSDRV_AGLGlyphNames + 1135,
		{   83,  -17,  783,  698 }, NULL	/* registered */
    },
    {
	 -1, 0x00b0,  400, PSDRV_AGLGlyphNames +  856,
		{  130,  398,  430,  698 }, NULL	/* degree */
    },
    {
	 -1, 0x00b1,  600, PSDRV_AGLGlyphNames + 1106,
		{   91,    0,  595,  514 }, NULL	/* plusminus */
    },
    {
	 -1, 0x00b2,  408, PSDRV_AGLGlyphNames + 1210,
		{   91,  279,  485,  698 }, NULL	/* twosuperior */
    },
    {
	 -1, 0x00b3,  408, PSDRV_AGLGlyphNames + 1194,
		{   86,  269,  483,  698 }, NULL	/* threesuperior */
    },
    {
	194, 0x00b4,  340, PSDRV_AGLGlyphNames +  500,
		{  176,  566,  407,  771 }, NULL	/* acute */
    },
    {
	182, 0x00b6,  680, PSDRV_AGLGlyphNames + 1080,
		{  137,    0,  715,  681 }, NULL	/* paragraph */
    },
    {
	180, 0x00b7,  340, PSDRV_AGLGlyphNames + 1096,
		{  126,  173,  316,  358 }, NULL	/* periodcentered */
    },
    {
	203, 0x00b8,  360, PSDRV_AGLGlyphNames +  821,
		{   68, -220,  289,   -8 }, NULL	/* cedilla */
    },
    {
	 -1, 0x00b9,  408, PSDRV_AGLGlyphNames + 1068,
		{  118,  279,  406,  688 }, NULL	/* onesuperior */
    },
    {
	235, 0x00ba,  440, PSDRV_AGLGlyphNames + 1072,
		{  127,  400,  455,  685 }, NULL	/* ordmasculine */
    },
    {
	187, 0x00bb,  380, PSDRV_AGLGlyphNames +  951,
		{   62,   84,  406,  503 }, NULL	/* guillemotright */
    },
    {
	 -1, 0x00bc, 1020, PSDRV_AGLGlyphNames + 1067,
		{  118,    0, 1054,  681 }, NULL	/* onequarter */
    },
    {
	 -1, 0x00bd, 1020, PSDRV_AGLGlyphNames + 1064,
		{  118,    0, 1036,  681 }, NULL	/* onehalf */
    },
    {
	 -1, 0x00be, 1020, PSDRV_AGLGlyphNames + 1192,
		{   86,    0, 1054,  691 }, NULL	/* threequarters */
    },
    {
	191, 0x00bf,  620, PSDRV_AGLGlyphNames + 1115,
		{   83, -189,  606,  515 }, NULL	/* questiondown */
    },
    {
	 -1, 0x00c0,  720, PSDRV_AGLGlyphNames +   13,
		{  -27,    0,  769,  937 }, NULL	/* Agrave */
    },
    {
	 -1, 0x00c1,  720, PSDRV_AGLGlyphNames +    4,
		{  -27,    0,  769,  937 }, NULL	/* Aacute */
    },
    {
	 -1, 0x00c2,  720, PSDRV_AGLGlyphNames +    7,
		{  -27,    0,  769,  915 }, NULL	/* Acircumflex */
    },
    {
	 -1, 0x00c3,  720, PSDRV_AGLGlyphNames +   23,
		{  -27,    0,  769,  875 }, NULL	/* Atilde */
    },
    {
	 -1, 0x00c4,  720, PSDRV_AGLGlyphNames +   11,
		{  -27,    0,  769,  900 }, NULL	/* Adieresis */
    },
    {
	 -1, 0x00c5,  720, PSDRV_AGLGlyphNames +   19,
		{  -27,    0,  769,  941 }, NULL	/* Aring */
    },
    {
	225, 0x00c6, 1140, PSDRV_AGLGlyphNames +    1,
		{  -27,    0, 1207,  681 }, NULL	/* AE */
    },
    {
	 -1, 0x00c7,  700, PSDRV_AGLGlyphNames +   34,
		{   78, -220,  754,  698 }, NULL	/* Ccedilla */
    },
    {
	 -1, 0x00c8,  720, PSDRV_AGLGlyphNames +   62,
		{   14,    0,  777,  937 }, NULL	/* Egrave */
    },
    {
	 -1, 0x00c9,  720, PSDRV_AGLGlyphNames +   53,
		{   14,    0,  777,  937 }, NULL	/* Eacute */
    },
    {
	 -1, 0x00ca,  720, PSDRV_AGLGlyphNames +   57,
		{   14,    0,  777,  915 }, NULL	/* Ecircumflex */
    },
    {
	 -1, 0x00cb,  720, PSDRV_AGLGlyphNames +   59,
		{   14,    0,  777,  900 }, NULL	/* Edieresis */
    },
    {
	 -1, 0x00cc,  380, PSDRV_AGLGlyphNames +  109,
		{   14,    0,  485,  937 }, NULL	/* Igrave */
    },
    {
	 -1, 0x00cd,  380, PSDRV_AGLGlyphNames +   99,
		{   14,    0,  485,  937 }, NULL	/* Iacute */
    },
    {
	 -1, 0x00ce,  380, PSDRV_AGLGlyphNames +  102,
		{   14,    0,  493,  915 }, NULL	/* Icircumflex */
    },
    {
	 -1, 0x00cf,  380, PSDRV_AGLGlyphNames +  104,
		{   14,    0,  499,  900 }, NULL	/* Idieresis */
    },
    {
	 -1, 0x00d0,  760, PSDRV_AGLGlyphNames +   72,
		{   14,    0,  805,  681 }, NULL	/* Eth */
    },
    {
	 -1, 0x00d1,  740, PSDRV_AGLGlyphNames +  145,
		{   14,    0,  845,  875 }, NULL	/* Ntilde */
    },
    {
	 -1, 0x00d2,  760, PSDRV_AGLGlyphNames +  159,
		{   78,  -17,  806,  937 }, NULL	/* Ograve */
    },
    {
	 -1, 0x00d3,  760, PSDRV_AGLGlyphNames +  151,
		{   78,  -17,  806,  937 }, NULL	/* Oacute */
    },
    {
	 -1, 0x00d4,  760, PSDRV_AGLGlyphNames +  154,
		{   78,  -17,  806,  915 }, NULL	/* Ocircumflex */
    },
    {
	 -1, 0x00d5,  760, PSDRV_AGLGlyphNames +  172,
		{   78,  -17,  806,  875 }, NULL	/* Otilde */
    },
    {
	 -1, 0x00d6,  760, PSDRV_AGLGlyphNames +  156,
		{   78,  -17,  806,  900 }, NULL	/* Odieresis */
    },
    {
	 -1, 0x00d7,  600, PSDRV_AGLGlyphNames + 1024,
		{   91,   10,  595,  514 }, NULL	/* multiply */
    },
    {
	233, 0x00d8,  760, PSDRV_AGLGlyphNames +  168,
		{   21,  -29,  847,  725 }, NULL	/* Oslash */
    },
    {
	 -1, 0x00d9,  740, PSDRV_AGLGlyphNames +  256,
		{  112,  -17,  855,  937 }, NULL	/* Ugrave */
    },
    {
	 -1, 0x00da,  740, PSDRV_AGLGlyphNames +  249,
		{  112,  -17,  855,  937 }, NULL	/* Uacute */
    },
    {
	 -1, 0x00db,  740, PSDRV_AGLGlyphNames +  252,
		{  112,  -17,  855,  915 }, NULL	/* Ucircumflex */
    },
    {
	 -1, 0x00dc,  740, PSDRV_AGLGlyphNames +  254,
		{  112,  -17,  855,  900 }, NULL	/* Udieresis */
    },
    {
	 -1, 0x00dd,  660, PSDRV_AGLGlyphNames +  281,
		{   72,    0,  817,  937 }, NULL	/* Yacute */
    },
    {
	 -1, 0x00de,  640, PSDRV_AGLGlyphNames +  244,
		{   -6,    0,  701,  681 }, NULL	/* Thorn */
    },
    {
	251, 0x00df,  660, PSDRV_AGLGlyphNames +  943,
		{ -231, -213,  702,  741 }, NULL	/* germandbls */
    },
    {
	 -1, 0x00e0,  680, PSDRV_AGLGlyphNames +  750,
		{   84,   -8,  735,  771 }, NULL	/* agrave */
    },
    {
	 -1, 0x00e1,  680, PSDRV_AGLGlyphNames +  497,
		{   84,   -8,  735,  771 }, NULL	/* aacute */
    },
    {
	 -1, 0x00e2,  680, PSDRV_AGLGlyphNames +  499,
		{   84,   -8,  735,  749 }, NULL	/* acircumflex */
    },
    {
	 -1, 0x00e3,  680, PSDRV_AGLGlyphNames +  786,
		{   84,   -8,  735,  709 }, NULL	/* atilde */
    },
    {
	 -1, 0x00e4,  680, PSDRV_AGLGlyphNames +  502,
		{   84,   -8,  735,  734 }, NULL	/* adieresis */
    },
    {
	 -1, 0x00e5,  680, PSDRV_AGLGlyphNames +  764,
		{   84,   -8,  735,  775 }, NULL	/* aring */
    },
    {
	241, 0x00e6,  880, PSDRV_AGLGlyphNames +  503,
		{   39,   -8,  913,  515 }, NULL	/* ae */
    },
    {
	 -1, 0x00e7,  560, PSDRV_AGLGlyphNames +  818,
		{   58, -220,  597,  515 }, NULL	/* ccedilla */
    },
    {
	 -1, 0x00e8,  560, PSDRV_AGLGlyphNames +  885,
		{   59,   -8,  596,  771 }, NULL	/* egrave */
    },
    {
	 -1, 0x00e9,  560, PSDRV_AGLGlyphNames +  879,
		{   59,   -8,  596,  771 }, NULL	/* eacute */
    },
    {
	 -1, 0x00ea,  560, PSDRV_AGLGlyphNames +  882,
		{   59,   -8,  596,  749 }, NULL	/* ecircumflex */
    },
    {
	 -1, 0x00eb,  560, PSDRV_AGLGlyphNames +  883,
		{   59,   -8,  596,  734 }, NULL	/* edieresis */
    },
    {
	 -1, 0x00ec,  380, PSDRV_AGLGlyphNames +  969,
		{   83,   -8,  424,  771 }, NULL	/* igrave */
    },
    {
	 -1, 0x00ed,  380, PSDRV_AGLGlyphNames +  965,
		{   83,   -8,  420,  771 }, NULL	/* iacute */
    },
    {
	 -1, 0x00ee,  380, PSDRV_AGLGlyphNames +  967,
		{   83,   -8,  433,  749 }, NULL	/* icircumflex */
    },
    {
	 -1, 0x00ef,  380, PSDRV_AGLGlyphNames +  968,
		{   83,   -8,  479,  734 }, NULL	/* idieresis */
    },
    {
	 -1, 0x00f0,  600, PSDRV_AGLGlyphNames +  906,
		{   59,   -8,  662,  741 }, NULL	/* eth */
    },
    {
	 -1, 0x00f1,  680, PSDRV_AGLGlyphNames + 1041,
		{   83,   -8,  715,  709 }, NULL	/* ntilde */
    },
    {
	 -1, 0x00f2,  600, PSDRV_AGLGlyphNames + 1051,
		{   59,   -8,  627,  771 }, NULL	/* ograve */
    },
    {
	 -1, 0x00f3,  600, PSDRV_AGLGlyphNames + 1045,
		{   59,   -8,  627,  771 }, NULL	/* oacute */
    },
    {
	 -1, 0x00f4,  600, PSDRV_AGLGlyphNames + 1047,
		{   59,   -8,  627,  749 }, NULL	/* ocircumflex */
    },
    {
	 -1, 0x00f5,  600, PSDRV_AGLGlyphNames + 1077,
		{   59,   -8,  627,  709 }, NULL	/* otilde */
    },
    {
	 -1, 0x00f6,  600, PSDRV_AGLGlyphNames + 1048,
		{   59,   -8,  627,  734 }, NULL	/* odieresis */
    },
    {
	 -1, 0x00f7,  600, PSDRV_AGLGlyphNames +  863,
		{   91,    9,  595,  521 }, NULL	/* divide */
    },
    {
	249, 0x00f8,  600, PSDRV_AGLGlyphNames + 1074,
		{   17,  -54,  661,  571 }, NULL	/* oslash */
    },
    {
	 -1, 0x00f9,  680, PSDRV_AGLGlyphNames + 1217,
		{   83,   -8,  720,  771 }, NULL	/* ugrave */
    },
    {
	 -1, 0x00fa,  680, PSDRV_AGLGlyphNames + 1213,
		{   83,   -8,  720,  771 }, NULL	/* uacute */
    },
    {
	 -1, 0x00fb,  680, PSDRV_AGLGlyphNames + 1215,
		{   83,   -8,  720,  749 }, NULL	/* ucircumflex */
    },
    {
	 -1, 0x00fc,  680, PSDRV_AGLGlyphNames + 1216,
		{   83,   -8,  720,  734 }, NULL	/* udieresis */
    },
    {
	 -1, 0x00fd,  600, PSDRV_AGLGlyphNames + 1244,
		{   25, -213,  642,  771 }, NULL	/* yacute */
    },
    {
	 -1, 0x00fe,  660, PSDRV_AGLGlyphNames + 1187,
		{  -24, -213,  682,  732 }, NULL	/* thorn */
    },
    {
	 -1, 0x00ff,  600, PSDRV_AGLGlyphNames + 1246,
		{   25, -213,  642,  734 }, NULL	/* ydieresis */
    },
    {
	245, 0x0131,  380, PSDRV_AGLGlyphNames +  873,
		{   83,   -8,  420,  507 }, NULL	/* dotlessi */
    },
    {
	232, 0x0141,  640, PSDRV_AGLGlyphNames +  132,
		{   14,    0,  724,  681 }, NULL	/* Lslash */
    },
    {
	248, 0x0142,  380, PSDRV_AGLGlyphNames + 1013,
		{   63,   -8,  412,  732 }, NULL	/* lslash */
    },
    {
	234, 0x0152, 1180, PSDRV_AGLGlyphNames +  149,
		{   94,  -17, 1245,  698 }, NULL	/* OE */
    },
    {
	250, 0x0153,  920, PSDRV_AGLGlyphNames + 1049,
		{   48,   -8,  961,  515 }, NULL	/* oe */
    },
    {
	 -1, 0x0160,  700, PSDRV_AGLGlyphNames +  231,
		{   59,  -17,  731,  915 }, NULL	/* Scaron */
    },
    {
	 -1, 0x0161,  540, PSDRV_AGLGlyphNames + 1147,
		{   32,   -8,  573,  749 }, NULL	/* scaron */
    },
    {
	 -1, 0x0178,  660, PSDRV_AGLGlyphNames +  284,
		{   72,    0,  817,  900 }, NULL	/* Ydieresis */
    },
    {
	 -1, 0x017d,  680, PSDRV_AGLGlyphNames +  290,
		{   23,    0,  740,  915 }, NULL	/* Zcaron */
    },
    {
	 -1, 0x017e,  560, PSDRV_AGLGlyphNames + 1251,
		{   36,   -8,  586,  749 }, NULL	/* zcaron */
    },
    {
	166, 0x0192,  680, PSDRV_AGLGlyphNames +  928,
		{  -28, -199,  743,  741 }, NULL	/* florin */
    },
    {
	195, 0x02c6,  480, PSDRV_AGLGlyphNames +  831,
		{  183,  582,  523,  749 }, NULL	/* circumflex */
    },
    {
	207, 0x02c7,  480, PSDRV_AGLGlyphNames +  815,
		{  183,  582,  523,  749 }, NULL	/* caron */
    },
    {
	197, 0x02c9,  480, PSDRV_AGLGlyphNames + 1017,
		{  177,  603,  531,  691 }, NULL	/* macron */
    },
    {
	198, 0x02d8,  460, PSDRV_AGLGlyphNames +  809,
		{  177,  577,  516,  707 }, NULL	/* breve */
    },
    {
	199, 0x02d9,  380, PSDRV_AGLGlyphNames +  871,
		{  180,  570,  345,  734 }, NULL	/* dotaccent */
    },
    {
	202, 0x02da,  360, PSDRV_AGLGlyphNames + 1141,
		{  185,  558,  406,  775 }, NULL	/* ring */
    },
    {
	206, 0x02db,  320, PSDRV_AGLGlyphNames + 1050,
		{   68, -182,  253,    0 }, NULL	/* ogonek */
    },
    {
	196, 0x02dc,  480, PSDRV_AGLGlyphNames + 1195,
		{  178,  587,  533,  709 }, NULL	/* tilde */
    },
    {
	205, 0x02dd,  560, PSDRV_AGLGlyphNames +  960,
		{  181,  560,  616,  775 }, NULL	/* hungarumlaut */
    },
    {
	 -1, 0x03bc,  680, PSDRV_AGLGlyphNames + 1023,
		{   54, -213,  720,  507 }, NULL	/* mu */
    },
    {
	177, 0x2013,  500, PSDRV_AGLGlyphNames +  895,
		{   40,  219,  573,  311 }, NULL	/* endash */
    },
    {
	208, 0x2014, 1000, PSDRV_AGLGlyphNames +  893,
		{   40,  219, 1073,  311 }, NULL	/* emdash */
    },
    {
	 96, 0x2018,  320, PSDRV_AGLGlyphNames + 1122,
		{  155,  420,  333,  698 }, NULL	/* quoteleft */
    },
    {
	 39, 0x2019,  320, PSDRV_AGLGlyphNames + 1124,
		{  171,  420,  349,  698 }, NULL	/* quoteright */
    },
    {
	184, 0x201a,  300, PSDRV_AGLGlyphNames + 1125,
		{  106, -112,  284,  166 }, NULL	/* quotesinglbase */
    },
    {
	170, 0x201c,  520, PSDRV_AGLGlyphNames + 1120,
		{  156,  420,  545,  698 }, NULL	/* quotedblleft */
    },
    {
	186, 0x201d,  520, PSDRV_AGLGlyphNames + 1121,
		{  171,  420,  560,  698 }, NULL	/* quotedblright */
    },
    {
	185, 0x201e,  520, PSDRV_AGLGlyphNames + 1119,
		{  106, -112,  495,  166 }, NULL	/* quotedblbase */
    },
    {
	178, 0x2020,  420, PSDRV_AGLGlyphNames +  849,
		{   89, -137,  466,  698 }, NULL	/* dagger */
    },
    {
	179, 0x2021,  420, PSDRV_AGLGlyphNames +  850,
		{   79, -137,  486,  698 }, NULL	/* daggerdbl */
    },
    {
	183, 0x2022,  360, PSDRV_AGLGlyphNames +  812,
		{   60,  170,  404,  511 }, NULL	/* bullet */
    },
    {
	188, 0x2026, 1000, PSDRV_AGLGlyphNames +  891,
		{   86,   -8,  942,  177 }, NULL	/* ellipsis */
    },
    {
	189, 0x2030, 1360, PSDRV_AGLGlyphNames + 1100,
		{  106,  -17, 1333,  698 }, NULL	/* perthousand */
    },
    {
	172, 0x2039,  220, PSDRV_AGLGlyphNames +  952,
		{   62,   84,  249,  503 }, NULL	/* guilsinglleft */
    },
    {
	173, 0x203a,  220, PSDRV_AGLGlyphNames +  953,
		{   62,   84,  249,  503 }, NULL	/* guilsinglright */
    },
    {
	 -1, 0x2122,  940, PSDRV_AGLGlyphNames + 1198,
		{   42,  277,  982,  681 }, NULL	/* trademark */
    },
    {
	 -1, 0x2212,  600, PSDRV_AGLGlyphNames + 1020,
		{   91,  207,  595,  323 }, NULL	/* minus */
    },
    {
	164, 0x2215,  120, PSDRV_AGLGlyphNames +  934,
		{ -144,    0,  382,  681 }, NULL	/* fraction */
    },
    {
	174, 0xfb01,  820, PSDRV_AGLGlyphNames +  918,
		{ -191, -213,  850,  741 }, NULL	/* fi */
    },
    {
	175, 0xfb02,  820, PSDRV_AGLGlyphNames +  927,
		{ -191, -213,  850,  741 }, NULL	/* fl */
    }
};


/*
 *  Font metrics
 */

const AFM PSDRV_Bookman_DemiItalic =
{
    "Bookman-DemiItalic",			/* FontName */
    "ITC Bookman Demi Italic",			/* FullName */
    "ITC Bookman",				/* FamilyName */
    "AdobeStandardEncoding",			/* EncodingScheme */
    FW_DEMIBOLD,				/* Weight */
    -10,					/* ItalicAngle */
    FALSE,					/* IsFixedPitch */
    -100,					/* UnderlinePosition */
    50,						/* UnderlineThickness */
    { -231, -250, 1333, 941 },			/* FontBBox */
    681,					/* CapHeight */
    515,					/* XHeight */
    732,					/* Ascender */
    -213,					/* Descender */
    941,					/* FullAscender */
    {
	1000,				/* WinMetrics.usUnitsPerEm */
	942,				/* WinMetrics.sAscender */
	-232,				/* WinMetrics.sDescender */
	0,				/* WinMetrics.sLineGap */
	538,				/* WinMetrics.sAvgCharWidth */
	716,				/* WinMetrics.sTypoAscender */
	-223,				/* WinMetrics.sTypoDescender */
	130,				/* WinMetrics.sTypoLineGap */
	942,				/* WinMetrics.usWinAscent */
	231				/* 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, 340, 320, 380, 680, 680, 	/* CharWidths[30] - CharWidths[36] */
	880, 980, 180, 260, 260, 460, 	/* CharWidths[37] - CharWidths[42] */
	600, 340, 280, 340, 360, 680, 	/* CharWidths[43] - CharWidths[48] */
	680, 680, 680, 680, 680, 680, 	/* CharWidths[49] - CharWidths[54] */
	680, 680, 680, 340, 340, 620, 	/* CharWidths[55] - CharWidths[60] */
	600, 620, 620, 780, 720, 720, 	/* CharWidths[61] - CharWidths[66] */
	700, 760, 720, 660, 760, 800, 	/* CharWidths[67] - CharWidths[72] */
	380, 620, 780, 640, 860, 740, 	/* CharWidths[73] - CharWidths[78] */
	760, 640, 760, 740, 700, 700, 	/* CharWidths[79] - CharWidths[84] */
	740, 660, 1000, 740, 660, 680, 	/* CharWidths[85] - CharWidths[90] */
	260, 580, 260, 620, 500, 380, 	/* CharWidths[91] - CharWidths[96] */
	680, 600, 560, 680, 560, 420, 	/* CharWidths[97] - CharWidths[102] */
	620, 700, 380, 320, 700, 380, 	/* CharWidths[103] - CharWidths[108] */
	960, 680, 600, 660, 620, 500, 	/* CharWidths[109] - CharWidths[114] */
	540, 440, 680, 540, 860, 620, 	/* CharWidths[115] - CharWidths[120] */
	600, 560, 300, 620, 300, 620, 	/* 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, 320, 	/* CharWidths[137] - CharWidths[145] */
	320, 520, 520, 360, 500, 1000, 	/* CharWidths[146] - CharWidths[151] */
	0, 0, 0, 0, 0, 0, 0, 0, 340, 	/* CharWidths[152] - CharWidths[160] */
	320, 680, 680, 680, 680, 620, 	/* CharWidths[161] - CharWidths[166] */
	620, 520, 780, 520, 380, 620, 	/* CharWidths[167] - CharWidths[172] */
	280, 780, 480, 400, 600, 408, 	/* CharWidths[173] - CharWidths[178] */
	408, 340, 0, 680, 340, 360, 	/* CharWidths[179] - CharWidths[184] */
	408, 520, 380, 1020, 1020, 	/* CharWidths[185] - CharWidths[189] */
	1020, 620, 0, 380, 340, 480, 	/* CharWidths[190] - CharWidths[195] */
	480, 480, 460, 380, 520, 0, 	/* CharWidths[196] - CharWidths[201] */
	360, 360, 0, 560, 320, 480, 	/* CharWidths[202] - CharWidths[207] */
	1000, 0, 0, 0, 0, 0, 0, 600, 	/* CharWidths[208] - CharWidths[215] */
	0, 0, 0, 0, 0, 0, 0, 0, 0, 	/* CharWidths[216] - CharWidths[224] */
	1140, 0, 440, 0, 0, 0, 0, 640, 	/* CharWidths[225] - CharWidths[232] */
	760, 1180, 440, 0, 0, 0, 0, 0, 	/* CharWidths[233] - CharWidths[240] */
	880, 0, 0, 0, 380, 0, 600, 	/* CharWidths[241] - CharWidths[247] */
	380, 600, 920, 660, 0, 0, 0, 	/* CharWidths[248] - CharWidths[254] */
	0				/* CharWidths[255] */
    },
    228,					/* NumofMetrics */
    met_Bookman_DemiItalic			/* Metrics */
};
