/*******************************************************************************
 *
 *	Font metric data for ITC Avant Garde Gothic Demi Oblique
 *
 *	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 Gothic Bold Italic, which is
 *  	Copyright 1990-1991 The Monotype Corporation plc/Type Solutions Inc.
 *
 */

#include "psdrv.h"


/*
 *  Glyph metrics
 */

static const AFMMETRICS met_AvantGarde_DemiOblique[228] = 
{
    {
	 32, 0x0020,  280, PSDRV_AGLGlyphNames + 1169,
		{    0,    0,    0,    0 }, NULL	/* space */
    },
    {
	 33, 0x0021,  280, PSDRV_AGLGlyphNames +  907,
		{   73,    0,  343,  740 }, NULL	/* exclam */
    },
    {
	 34, 0x0022,  360, PSDRV_AGLGlyphNames + 1118,
		{  127,  444,  478,  740 }, NULL	/* quotedbl */
    },
    {
	 35, 0x0023,  560, PSDRV_AGLGlyphNames + 1043,
		{   66,    0,  618,  700 }, NULL	/* numbersign */
    },
    {
	 36, 0x0024,  560, PSDRV_AGLGlyphNames +  866,
		{   99,  -86,  582,  857 }, NULL	/* dollar */
    },
    {
	 37, 0x0025,  860, PSDRV_AGLGlyphNames + 1094,
		{  139,  -15,  856,  755 }, NULL	/* percent */
    },
    {
	 38, 0x0026,  680, PSDRV_AGLGlyphNames +  755,
		{   71,  -15,  742,  755 }, NULL	/* ampersand */
    },
    {
	169, 0x0027,  220, PSDRV_AGLGlyphNames + 1126,
		{  152,  444,  314,  740 }, NULL	/* quotesingle */
    },
    {
	 40, 0x0028,  380, PSDRV_AGLGlyphNames + 1081,
		{  120, -157,  490,  754 }, NULL	/* parenleft */
    },
    {
	 41, 0x0029,  380, PSDRV_AGLGlyphNames + 1087,
		{    8, -157,  378,  754 }, NULL	/* parenright */
    },
    {
	 42, 0x002a,  440, PSDRV_AGLGlyphNames +  782,
		{  174,  457,  492,  755 }, NULL	/* asterisk */
    },
    {
	 43, 0x002b,  600, PSDRV_AGLGlyphNames + 1105,
		{   84,    0,  610,  506 }, NULL	/* plus */
    },
    {
	 44, 0x002c,  280, PSDRV_AGLGlyphNames +  835,
		{   48, -141,  231,  133 }, NULL	/* comma */
    },
    {
	 45, 0x002d,  420, PSDRV_AGLGlyphNames +  961,
		{  114,  230,  413,  348 }, NULL	/* hyphen */
    },
    {
	 46, 0x002e,  280, PSDRV_AGLGlyphNames + 1095,
		{   73,    0,  231,  133 }, NULL	/* period */
    },
    {
	 47, 0x002f,  460, PSDRV_AGLGlyphNames + 1167,
		{  -13, -100,  591,  740 }, NULL	/* slash */
    },
    {
	 48, 0x0030,  560, PSDRV_AGLGlyphNames + 1253,
		{   70,  -15,  628,  755 }, NULL	/* zero */
    },
    {
	 49, 0x0031,  560, PSDRV_AGLGlyphNames + 1060,
		{  230,    0,  500,  740 }, NULL	/* one */
    },
    {
	 50, 0x0032,  560, PSDRV_AGLGlyphNames + 1206,
		{   44,    0,  622,  755 }, NULL	/* two */
    },
    {
	 51, 0x0033,  560, PSDRV_AGLGlyphNames + 1188,
		{   67,  -15,  585,  755 }, NULL	/* three */
    },
    {
	 52, 0x0034,  560, PSDRV_AGLGlyphNames +  930,
		{   36,    0,  604,  740 }, NULL	/* four */
    },
    {
	 53, 0x0035,  560, PSDRV_AGLGlyphNames +  922,
		{   64,  -15,  600,  740 }, NULL	/* five */
    },
    {
	 54, 0x0036,  560, PSDRV_AGLGlyphNames + 1163,
		{   64,  -15,  587,  739 }, NULL	/* six */
    },
    {
	 55, 0x0037,  560, PSDRV_AGLGlyphNames + 1154,
		{   83,    0,  635,  740 }, NULL	/* seven */
    },
    {
	 56, 0x0038,  560, PSDRV_AGLGlyphNames +  886,
		{   71,  -15,  590,  755 }, NULL	/* eight */
    },
    {
	 57, 0x0039,  560, PSDRV_AGLGlyphNames + 1032,
		{  110,    0,  633,  754 }, NULL	/* nine */
    },
    {
	 58, 0x003a,  280, PSDRV_AGLGlyphNames +  833,
		{   73,    0,  309,  555 }, NULL	/* colon */
    },
    {
	 59, 0x003b,  280, PSDRV_AGLGlyphNames + 1153,
		{   48, -141,  309,  555 }, NULL	/* semicolon */
    },
    {
	 60, 0x003c,  600, PSDRV_AGLGlyphNames + 1003,
		{   84,   -8,  649,  514 }, NULL	/* less */
    },
    {
	 61, 0x003d,  600, PSDRV_AGLGlyphNames +  900,
		{   63,   81,  631,  425 }, NULL	/* equal */
    },
    {
	 62, 0x003e,  600, PSDRV_AGLGlyphNames +  948,
		{   45,   -8,  610,  514 }, NULL	/* greater */
    },
    {
	 63, 0x003f,  560, PSDRV_AGLGlyphNames + 1114,
		{  135,    0,  593,  755 }, NULL	/* question */
    },
    {
	 64, 0x0040,  740, PSDRV_AGLGlyphNames +  785,
		{  109,  -12,  832,  712 }, NULL	/* at */
    },
    {
	 65, 0x0041,  740, PSDRV_AGLGlyphNames +    0,
		{    7,    0,  732,  740 }, NULL	/* A */
    },
    {
	 66, 0x0042,  580, PSDRV_AGLGlyphNames +   25,
		{   70,    0,  610,  740 }, NULL	/* B */
    },
    {
	 67, 0x0043,  780, PSDRV_AGLGlyphNames +   29,
		{   97,  -15,  864,  755 }, NULL	/* C */
    },
    {
	 68, 0x0044,  700, PSDRV_AGLGlyphNames +   42,
		{   63,    0,  732,  740 }, NULL	/* D */
    },
    {
	 69, 0x0045,  520, PSDRV_AGLGlyphNames +   52,
		{   61,    0,  596,  740 }, NULL	/* E */
    },
    {
	 70, 0x0046,  480, PSDRV_AGLGlyphNames +   75,
		{   61,    0,  575,  740 }, NULL	/* F */
    },
    {
	 71, 0x0047,  840, PSDRV_AGLGlyphNames +   77,
		{   89,  -15,  887,  755 }, NULL	/* G */
    },
    {
	 72, 0x0048,  680, PSDRV_AGLGlyphNames +   87,
		{   71,    0,  747,  740 }, NULL	/* H */
    },
    {
	 73, 0x0049,  280, PSDRV_AGLGlyphNames +   97,
		{   72,    0,  346,  740 }, NULL	/* I */
    },
    {
	 74, 0x004a,  480, PSDRV_AGLGlyphNames +  118,
		{   34,  -15,  546,  740 }, NULL	/* J */
    },
    {
	 75, 0x004b,  620, PSDRV_AGLGlyphNames +  121,
		{   89,    0,  757,  740 }, NULL	/* K */
    },
    {
	 76, 0x004c,  440, PSDRV_AGLGlyphNames +  125,
		{   72,    0,  459,  740 }, NULL	/* L */
    },
    {
	 77, 0x004d,  900, PSDRV_AGLGlyphNames +  135,
		{   63,    0,  974,  740 }, NULL	/* M */
    },
    {
	 78, 0x004e,  740, PSDRV_AGLGlyphNames +  140,
		{   70,    0,  808,  740 }, NULL	/* N */
    },
    {
	 79, 0x004f,  840, PSDRV_AGLGlyphNames +  148,
		{   95,  -15,  882,  755 }, NULL	/* O */
    },
    {
	 80, 0x0050,  560, PSDRV_AGLGlyphNames +  174,
		{   72,    0,  645,  740 }, NULL	/* P */
    },
    {
	 81, 0x0051,  840, PSDRV_AGLGlyphNames +  179,
		{   94,  -15,  882,  755 }, NULL	/* Q */
    },
    {
	 82, 0x0052,  580, PSDRV_AGLGlyphNames +  181,
		{   64,    0,  656,  740 }, NULL	/* R */
    },
    {
	 83, 0x0053,  520, PSDRV_AGLGlyphNames +  189,
		{   49,  -15,  578,  755 }, NULL	/* S */
    },
    {
	 84, 0x0054,  420, PSDRV_AGLGlyphNames +  238,
		{  119,    0,  555,  740 }, NULL	/* T */
    },
    {
	 85, 0x0055,  640, PSDRV_AGLGlyphNames +  248,
		{   97,  -15,  722,  740 }, NULL	/* U */
    },
    {
	 86, 0x0056,  700, PSDRV_AGLGlyphNames +  269,
		{  145,    0,  832,  740 }, NULL	/* V */
    },
    {
	 87, 0x0057,  900, PSDRV_AGLGlyphNames +  271,
		{  144,    0, 1036,  740 }, NULL	/* W */
    },
    {
	 88, 0x0058,  680, PSDRV_AGLGlyphNames +  277,
		{    4,    0,  813,  740 }, NULL	/* X */
    },
    {
	 89, 0x0059,  620, PSDRV_AGLGlyphNames +  280,
		{  135,    0,  759,  740 }, NULL	/* Y */
    },
    {
	 90, 0x005a,  500, PSDRV_AGLGlyphNames +  288,
		{   19,    0,  599,  740 }, NULL	/* Z */
    },
    {
	 91, 0x005b,  320, PSDRV_AGLGlyphNames +  801,
		{   89, -157,  424,  754 }, NULL	/* bracketleft */
    },
    {
	 92, 0x005c,  640, PSDRV_AGLGlyphNames +  788,
		{  233, -100,  525,  740 }, NULL	/* backslash */
    },
    {
	 93, 0x005d,  320, PSDRV_AGLGlyphNames +  805,
		{    7, -157,  342,  754 }, NULL	/* bracketright */
    },
    {
	 94, 0x005e,  600, PSDRV_AGLGlyphNames +  780,
		{  142,  375,  596,  740 }, NULL	/* asciicircum */
    },
    {
	 95, 0x005f,  500, PSDRV_AGLGlyphNames + 1221,
		{  -23, -125,  486,  -75 }, NULL	/* underscore */
    },
    {
	193, 0x0060,  420, PSDRV_AGLGlyphNames +  945,
		{  189,  624,  462,  851 }, NULL	/* grave */
    },
    {
	 97, 0x0061,  660, PSDRV_AGLGlyphNames +  295,
		{   73,  -18,  716,  574 }, NULL	/* a */
    },
    {
	 98, 0x0062,  660, PSDRV_AGLGlyphNames +  787,
		{   47,  -18,  689,  740 }, NULL	/* b */
    },
    {
	 99, 0x0063,  640, PSDRV_AGLGlyphNames +  813,
		{   84,  -18,  679,  574 }, NULL	/* c */
    },
    {
	100, 0x0064,  660, PSDRV_AGLGlyphNames +  848,
		{   80,  -18,  755,  740 }, NULL	/* d */
    },
    {
	101, 0x0065,  640, PSDRV_AGLGlyphNames +  878,
		{   77,  -18,  667,  577 }, NULL	/* e */
    },
    {
	102, 0x0066,  280, PSDRV_AGLGlyphNames +  913,
		{   62,    0,  420,  755 }, NULL	/* f */
    },
    {
	103, 0x0067,  660, PSDRV_AGLGlyphNames +  936,
		{   33, -226,  726,  574 }, NULL	/* g */
    },
    {
	104, 0x0068,  600, PSDRV_AGLGlyphNames +  954,
		{   54,    0,  614,  740 }, NULL	/* h */
    },
    {
	105, 0x0069,  240, PSDRV_AGLGlyphNames +  964,
		{   53,    0,  323,  740 }, NULL	/* i */
    },
    {
	106, 0x006a,  260, PSDRV_AGLGlyphNames +  989,
		{  -18, -185,  342,  740 }, NULL	/* j */
    },
    {
	107, 0x006b,  580, PSDRV_AGLGlyphNames +  991,
		{   80,    0,  648,  740 }, NULL	/* k */
    },
    {
	108, 0x006c,  240, PSDRV_AGLGlyphNames +  995,
		{   54,    0,  324,  740 }, NULL	/* l */
    },
    {
	109, 0x006d,  940, PSDRV_AGLGlyphNames + 1016,
		{   54,    0,  954,  574 }, NULL	/* m */
    },
    {
	110, 0x006e,  600, PSDRV_AGLGlyphNames + 1027,
		{   54,    0,  613,  574 }, NULL	/* n */
    },
    {
	111, 0x006f,  640, PSDRV_AGLGlyphNames + 1044,
		{   71,  -18,  672,  574 }, NULL	/* o */
    },
    {
	112, 0x0070,  660, PSDRV_AGLGlyphNames + 1079,
		{   13, -185,  686,  574 }, NULL	/* p */
    },
    {
	113, 0x0071,  660, PSDRV_AGLGlyphNames + 1113,
		{   78, -185,  716,  574 }, NULL	/* q */
    },
    {
	114, 0x0072,  320, PSDRV_AGLGlyphNames + 1127,
		{   63,    0,  423,  574 }, NULL	/* r */
    },
    {
	115, 0x0073,  440, PSDRV_AGLGlyphNames + 1145,
		{   49,  -18,  483,  574 }, NULL	/* s */
    },
    {
	116, 0x0074,  300, PSDRV_AGLGlyphNames + 1178,
		{   86,    0,  402,  740 }, NULL	/* t */
    },
    {
	117, 0x0075,  600, PSDRV_AGLGlyphNames + 1212,
		{   87,  -18,  647,  555 }, NULL	/* u */
    },
    {
	118, 0x0076,  560, PSDRV_AGLGlyphNames + 1234,
		{  106,    0,  659,  555 }, NULL	/* v */
    },
    {
	119, 0x0077,  800, PSDRV_AGLGlyphNames + 1235,
		{  114,    0,  892,  555 }, NULL	/* w */
    },
    {
	120, 0x0078,  560, PSDRV_AGLGlyphNames + 1241,
		{    3,    0,  632,  555 }, NULL	/* x */
    },
    {
	121, 0x0079,  580, PSDRV_AGLGlyphNames + 1243,
		{   75, -185,  674,  555 }, NULL	/* y */
    },
    {
	122, 0x007a,  460, PSDRV_AGLGlyphNames + 1249,
		{   20,    0,  528,  555 }, NULL	/* z */
    },
    {
	123, 0x007b,  340, PSDRV_AGLGlyphNames +  793,
		{   40, -191,  455,  747 }, NULL	/* braceleft */
    },
    {
	124, 0x007c,  600, PSDRV_AGLGlyphNames +  789,
		{  214, -100,  503,  740 }, NULL	/* bar */
    },
    {
	125, 0x007d,  340, PSDRV_AGLGlyphNames +  797,
		{  -12, -191,  405,  747 }, NULL	/* braceright */
    },
    {
	126, 0x007e,  600, PSDRV_AGLGlyphNames +  781,
		{  114,  160,  579,  347 }, NULL	/* asciitilde */
    },
    {
	161, 0x00a1,  280, PSDRV_AGLGlyphNames +  909,
		{   40, -185,  310,  555 }, NULL	/* exclamdown */
    },
    {
	162, 0x00a2,  560, PSDRV_AGLGlyphNames +  822,
		{  110,   39,  599,  715 }, NULL	/* cent */
    },
    {
	163, 0x00a3,  560, PSDRV_AGLGlyphNames + 1173,
		{   38,    0,  615,  755 }, NULL	/* sterling */
    },
    {
	168, 0x00a4,  560, PSDRV_AGLGlyphNames +  843,
		{   53,   69,  628,  577 }, NULL	/* currency */
    },
    {
	165, 0x00a5,  560, PSDRV_AGLGlyphNames + 1247,
		{   83,    0,  707,  740 }, NULL	/* yen */
    },
    {
	 -1, 0x00a6,  600, PSDRV_AGLGlyphNames +  810,
		{  214, -100,  503,  740 }, NULL	/* brokenbar */
    },
    {
	167, 0x00a7,  560, PSDRV_AGLGlyphNames + 1152,
		{   65, -158,  602,  755 }, NULL	/* section */
    },
    {
	200, 0x00a8,  500, PSDRV_AGLGlyphNames +  859,
		{  196,  636,  565,  769 }, NULL	/* dieresis */
    },
    {
	 -1, 0x00a9,  740, PSDRV_AGLGlyphNames +  840,
		{   50,  -12,  827,  752 }, NULL	/* copyright */
    },
    {
	227, 0x00aa,  360, PSDRV_AGLGlyphNames + 1071,
		{  127,  438,  472,  755 }, NULL	/* ordfeminine */
    },
    {
	171, 0x00ab,  460, PSDRV_AGLGlyphNames +  950,
		{  105,  108,  487,  469 }, NULL	/* guillemotleft */
    },
    {
	 -1, 0x00ac,  600, PSDRV_AGLGlyphNames + 1009,
		{  105,  108,  631,  425 }, NULL	/* logicalnot */
    },
    {
	 -1, 0x00ae,  740, PSDRV_AGLGlyphNames + 1135,
		{   50,  -12,  827,  752 }, NULL	/* registered */
    },
    {
	 -1, 0x00b0,  400, PSDRV_AGLGlyphNames +  856,
		{  160,  426,  451,  712 }, NULL	/* degree */
    },
    {
	 -1, 0x00b1,  600, PSDRV_AGLGlyphNames + 1106,
		{   37,  -62,  626,  556 }, NULL	/* plusminus */
    },
    {
	 -1, 0x00b2,  336, PSDRV_AGLGlyphNames + 1210,
		{   73,  296,  436,  749 }, NULL	/* twosuperior */
    },
    {
	 -1, 0x00b3,  336, PSDRV_AGLGlyphNames + 1194,
		{   87,  287,  413,  749 }, NULL	/* threesuperior */
    },
    {
	194, 0x00b4,  420, PSDRV_AGLGlyphNames +  500,
		{  224,  624,  508,  849 }, NULL	/* acute */
    },
    {
	182, 0x00b6,  600, PSDRV_AGLGlyphNames + 1080,
		{   90, -103,  744,  740 }, NULL	/* paragraph */
    },
    {
	180, 0x00b7,  280, PSDRV_AGLGlyphNames + 1096,
		{  108,  187,  265,  320 }, NULL	/* periodcentered */
    },
    {
	203, 0x00b8,  340, PSDRV_AGLGlyphNames +  821,
		{   67, -251,  272,    6 }, NULL	/* cedilla */
    },
    {
	 -1, 0x00b9,  336, PSDRV_AGLGlyphNames + 1068,
		{  182,  296,  360,  740 }, NULL	/* onesuperior */
    },
    {
	235, 0x00ba,  360, PSDRV_AGLGlyphNames + 1072,
		{  131,  438,  451,  755 }, NULL	/* ordmasculine */
    },
    {
	187, 0x00bb,  460, PSDRV_AGLGlyphNames +  951,
		{   81,  108,  463,  469 }, NULL	/* guillemotright */
    },
    {
	 -1, 0x00bc,  840, PSDRV_AGLGlyphNames + 1067,
		{  187,    0,  779,  740 }, NULL	/* onequarter */
    },
    {
	 -1, 0x00bd,  840, PSDRV_AGLGlyphNames + 1064,
		{  157,    0,  830,  740 }, NULL	/* onehalf */
    },
    {
	 -1, 0x00be,  840, PSDRV_AGLGlyphNames + 1192,
		{   97,    0,  836,  749 }, NULL	/* threequarters */
    },
    {
	191, 0x00bf,  560, PSDRV_AGLGlyphNames + 1115,
		{   69, -200,  527,  555 }, NULL	/* questiondown */
    },
    {
	 -1, 0x00c0,  740, PSDRV_AGLGlyphNames +   13,
		{    7,    0,  732, 1021 }, NULL	/* Agrave */
    },
    {
	 -1, 0x00c1,  740, PSDRV_AGLGlyphNames +    4,
		{    7,    0,  732, 1019 }, NULL	/* Aacute */
    },
    {
	 -1, 0x00c2,  740, PSDRV_AGLGlyphNames +    7,
		{    7,    0,  732,  944 }, NULL	/* Acircumflex */
    },
    {
	 -1, 0x00c3,  740, PSDRV_AGLGlyphNames +   23,
		{    7,    0,  732,  937 }, NULL	/* Atilde */
    },
    {
	 -1, 0x00c4,  740, PSDRV_AGLGlyphNames +   11,
		{    7,    0,  732,  939 }, NULL	/* Adieresis */
    },
    {
	 -1, 0x00c5,  740, PSDRV_AGLGlyphNames +   19,
		{    7,    0,  732,  969 }, NULL	/* Aring */
    },
    {
	225, 0x00c6,  900, PSDRV_AGLGlyphNames +    1,
		{   -5,    0,  961,  740 }, NULL	/* AE */
    },
    {
	 -1, 0x00c7,  780, PSDRV_AGLGlyphNames +   34,
		{   97, -251,  864,  755 }, NULL	/* Ccedilla */
    },
    {
	 -1, 0x00c8,  520, PSDRV_AGLGlyphNames +   62,
		{   61,    0,  596, 1021 }, NULL	/* Egrave */
    },
    {
	 -1, 0x00c9,  520, PSDRV_AGLGlyphNames +   53,
		{   61,    0,  596, 1019 }, NULL	/* Eacute */
    },
    {
	 -1, 0x00ca,  520, PSDRV_AGLGlyphNames +   57,
		{   61,    0,  609,  944 }, NULL	/* Ecircumflex */
    },
    {
	 -1, 0x00cb,  520, PSDRV_AGLGlyphNames +   59,
		{   61,    0,  606,  939 }, NULL	/* Edieresis */
    },
    {
	 -1, 0x00cc,  280, PSDRV_AGLGlyphNames +  109,
		{   72,    0,  398, 1021 }, NULL	/* Igrave */
    },
    {
	 -1, 0x00cd,  280, PSDRV_AGLGlyphNames +   99,
		{   72,    0,  494, 1019 }, NULL	/* Iacute */
    },
    {
	 -1, 0x00ce,  280, PSDRV_AGLGlyphNames +  102,
		{   72,    0,  489,  944 }, NULL	/* Icircumflex */
    },
    {
	 -1, 0x00cf,  280, PSDRV_AGLGlyphNames +  104,
		{   72,    0,  486,  939 }, NULL	/* Idieresis */
    },
    {
	 -1, 0x00d0,  742, PSDRV_AGLGlyphNames +   72,
		{   83,    0,  766,  740 }, NULL	/* Eth */
    },
    {
	 -1, 0x00d1,  740, PSDRV_AGLGlyphNames +  145,
		{   70,    0,  808,  937 }, NULL	/* Ntilde */
    },
    {
	 -1, 0x00d2,  840, PSDRV_AGLGlyphNames +  159,
		{   95,  -15,  882, 1021 }, NULL	/* Ograve */
    },
    {
	 -1, 0x00d3,  840, PSDRV_AGLGlyphNames +  151,
		{   95,  -15,  882, 1019 }, NULL	/* Oacute */
    },
    {
	 -1, 0x00d4,  840, PSDRV_AGLGlyphNames +  154,
		{   95,  -15,  882,  944 }, NULL	/* Ocircumflex */
    },
    {
	 -1, 0x00d5,  840, PSDRV_AGLGlyphNames +  172,
		{   95,  -15,  882,  937 }, NULL	/* Otilde */
    },
    {
	 -1, 0x00d6,  840, PSDRV_AGLGlyphNames +  156,
		{   95,  -15,  882,  939 }, NULL	/* Odieresis */
    },
    {
	 -1, 0x00d7,  600, PSDRV_AGLGlyphNames + 1024,
		{   76,   12,  617,  494 }, NULL	/* multiply */
    },
    {
	233, 0x00d8,  840, PSDRV_AGLGlyphNames +  168,
		{   94,  -71,  891,  814 }, NULL	/* Oslash */
    },
    {
	 -1, 0x00d9,  640, PSDRV_AGLGlyphNames +  256,
		{   97,  -15,  722, 1021 }, NULL	/* Ugrave */
    },
    {
	 -1, 0x00da,  640, PSDRV_AGLGlyphNames +  249,
		{   97,  -15,  722, 1019 }, NULL	/* Uacute */
    },
    {
	 -1, 0x00db,  640, PSDRV_AGLGlyphNames +  252,
		{   97,  -15,  722,  944 }, NULL	/* Ucircumflex */
    },
    {
	 -1, 0x00dc,  640, PSDRV_AGLGlyphNames +  254,
		{   97,  -15,  722,  939 }, NULL	/* Udieresis */
    },
    {
	 -1, 0x00dd,  620, PSDRV_AGLGlyphNames +  281,
		{  135,    0,  759, 1019 }, NULL	/* Yacute */
    },
    {
	 -1, 0x00de,  560, PSDRV_AGLGlyphNames +  244,
		{   72,    0,  619,  740 }, NULL	/* Thorn */
    },
    {
	251, 0x00df,  600, PSDRV_AGLGlyphNames +  943,
		{   51,  -18,  629,  755 }, NULL	/* germandbls */
    },
    {
	 -1, 0x00e0,  660, PSDRV_AGLGlyphNames +  750,
		{   73,  -18,  716,  851 }, NULL	/* agrave */
    },
    {
	 -1, 0x00e1,  660, PSDRV_AGLGlyphNames +  497,
		{   73,  -18,  716,  849 }, NULL	/* aacute */
    },
    {
	 -1, 0x00e2,  660, PSDRV_AGLGlyphNames +  499,
		{   73,  -18,  716,  774 }, NULL	/* acircumflex */
    },
    {
	 -1, 0x00e3,  660, PSDRV_AGLGlyphNames +  786,
		{   73,  -18,  716,  767 }, NULL	/* atilde */
    },
    {
	 -1, 0x00e4,  660, PSDRV_AGLGlyphNames +  502,
		{   73,  -18,  716,  769 }, NULL	/* adieresis */
    },
    {
	 -1, 0x00e5,  660, PSDRV_AGLGlyphNames +  764,
		{   73,  -18,  716,  834 }, NULL	/* aring */
    },
    {
	241, 0x00e6, 1080, PSDRV_AGLGlyphNames +  503,
		{   75,  -18, 1105,  574 }, NULL	/* ae */
    },
    {
	 -1, 0x00e7,  640, PSDRV_AGLGlyphNames +  818,
		{   83, -251,  679,  574 }, NULL	/* ccedilla */
    },
    {
	 -1, 0x00e8,  640, PSDRV_AGLGlyphNames +  885,
		{   77,  -18,  667,  851 }, NULL	/* egrave */
    },
    {
	 -1, 0x00e9,  640, PSDRV_AGLGlyphNames +  879,
		{   77,  -18,  667,  849 }, NULL	/* eacute */
    },
    {
	 -1, 0x00ea,  640, PSDRV_AGLGlyphNames +  882,
		{   77,  -18,  667,  774 }, NULL	/* ecircumflex */
    },
    {
	 -1, 0x00eb,  640, PSDRV_AGLGlyphNames +  883,
		{   77,  -18,  667,  769 }, NULL	/* edieresis */
    },
    {
	 -1, 0x00ec,  240, PSDRV_AGLGlyphNames +  969,
		{   53,    0,  347,  851 }, NULL	/* igrave */
    },
    {
	 -1, 0x00ed,  240, PSDRV_AGLGlyphNames +  965,
		{   53,    0,  443,  849 }, NULL	/* iacute */
    },
    {
	 -1, 0x00ee,  240, PSDRV_AGLGlyphNames +  967,
		{   39,    0,  438,  774 }, NULL	/* icircumflex */
    },
    {
	 -1, 0x00ef,  240, PSDRV_AGLGlyphNames +  968,
		{   53,    0,  435,  769 }, NULL	/* idieresis */
    },
    {
	 -1, 0x00f0,  640, PSDRV_AGLGlyphNames +  906,
		{   73,  -18,  699,  754 }, NULL	/* eth */
    },
    {
	 -1, 0x00f1,  600, PSDRV_AGLGlyphNames + 1041,
		{   54,    0,  624,  767 }, NULL	/* ntilde */
    },
    {
	 -1, 0x00f2,  640, PSDRV_AGLGlyphNames + 1051,
		{   71,  -18,  672,  851 }, NULL	/* ograve */
    },
    {
	 -1, 0x00f3,  640, PSDRV_AGLGlyphNames + 1045,
		{   71,  -18,  672,  849 }, NULL	/* oacute */
    },
    {
	 -1, 0x00f4,  640, PSDRV_AGLGlyphNames + 1047,
		{   71,  -18,  672,  774 }, NULL	/* ocircumflex */
    },
    {
	 -1, 0x00f5,  640, PSDRV_AGLGlyphNames + 1077,
		{   71,  -18,  672,  767 }, NULL	/* otilde */
    },
    {
	 -1, 0x00f6,  640, PSDRV_AGLGlyphNames + 1048,
		{   71,  -18,  672,  769 }, NULL	/* odieresis */
    },
    {
	 -1, 0x00f7,  600, PSDRV_AGLGlyphNames +  863,
		{   84,  -20,  610,  526 }, NULL	/* divide */
    },
    {
	249, 0x00f8,  660, PSDRV_AGLGlyphNames + 1074,
		{   81,  -50,  685,  608 }, NULL	/* oslash */
    },
    {
	 -1, 0x00f9,  600, PSDRV_AGLGlyphNames + 1217,
		{   87,  -18,  647,  851 }, NULL	/* ugrave */
    },
    {
	 -1, 0x00fa,  600, PSDRV_AGLGlyphNames + 1213,
		{   87,  -18,  647,  849 }, NULL	/* uacute */
    },
    {
	 -1, 0x00fb,  600, PSDRV_AGLGlyphNames + 1215,
		{   87,  -18,  647,  774 }, NULL	/* ucircumflex */
    },
    {
	 -1, 0x00fc,  600, PSDRV_AGLGlyphNames + 1216,
		{   87,  -18,  647,  769 }, NULL	/* udieresis */
    },
    {
	 -1, 0x00fd,  580, PSDRV_AGLGlyphNames + 1244,
		{   75, -185,  674,  849 }, NULL	/* yacute */
    },
    {
	 -1, 0x00fe,  660, PSDRV_AGLGlyphNames + 1187,
		{   13, -185,  686,  740 }, NULL	/* thorn */
    },
    {
	 -1, 0x00ff,  580, PSDRV_AGLGlyphNames + 1246,
		{   75, -185,  674,  769 }, NULL	/* ydieresis */
    },
    {
	245, 0x0131,  240, PSDRV_AGLGlyphNames +  873,
		{   53,    0,  289,  555 }, NULL	/* dotlessi */
    },
    {
	232, 0x0141,  480, PSDRV_AGLGlyphNames +  132,
		{   68,    0,  484,  740 }, NULL	/* Lslash */
    },
    {
	248, 0x0142,  320, PSDRV_AGLGlyphNames + 1013,
		{   74,    0,  404,  740 }, NULL	/* lslash */
    },
    {
	234, 0x0152, 1060, PSDRV_AGLGlyphNames +  149,
		{   98,  -15, 1144,  755 }, NULL	/* OE */
    },
    {
	250, 0x0153, 1080, PSDRV_AGLGlyphNames + 1049,
		{   76,  -18, 1108,  574 }, NULL	/* oe */
    },
    {
	 -1, 0x0160,  520, PSDRV_AGLGlyphNames +  231,
		{   49,  -15,  635,  944 }, NULL	/* Scaron */
    },
    {
	 -1, 0x0161,  440, PSDRV_AGLGlyphNames + 1147,
		{   49,  -18,  563,  774 }, NULL	/* scaron */
    },
    {
	 -1, 0x0178,  620, PSDRV_AGLGlyphNames +  284,
		{  135,    0,  759,  939 }, NULL	/* Ydieresis */
    },
    {
	 -1, 0x017d,  500, PSDRV_AGLGlyphNames +  290,
		{   19,    0,  650,  944 }, NULL	/* Zcaron */
    },
    {
	 -1, 0x017e,  460, PSDRV_AGLGlyphNames + 1251,
		{   20,    0,  598,  774 }, NULL	/* zcaron */
    },
    {
	166, 0x0192,  560, PSDRV_AGLGlyphNames +  928,
		{  -27, -151,  664,  824 }, NULL	/* florin */
    },
    {
	195, 0x02c6,  540, PSDRV_AGLGlyphNames +  831,
		{  189,  636,  588,  774 }, NULL	/* circumflex */
    },
    {
	207, 0x02c7,  540, PSDRV_AGLGlyphNames +  815,
		{  214,  636,  613,  774 }, NULL	/* caron */
    },
    {
	197, 0x02c9,  420, PSDRV_AGLGlyphNames + 1017,
		{  192,  648,  490,  759 }, NULL	/* macron */
    },
    {
	198, 0x02d8,  480, PSDRV_AGLGlyphNames +  809,
		{  185,  633,  582,  770 }, NULL	/* breve */
    },
    {
	199, 0x02d9,  280, PSDRV_AGLGlyphNames +  871,
		{  192,  636,  350,  769 }, NULL	/* dotaccent */
    },
    {
	202, 0x02da,  360, PSDRV_AGLGlyphNames + 1141,
		{  206,  619,  424,  834 }, NULL	/* ring */
    },
    {
	206, 0x02db,  340, PSDRV_AGLGlyphNames + 1050,
		{   59, -195,  243,    9 }, NULL	/* ogonek */
    },
    {
	196, 0x02dc,  480, PSDRV_AGLGlyphNames + 1195,
		{  178,  636,  564,  767 }, NULL	/* tilde */
    },
    {
	205, 0x02dd,  700, PSDRV_AGLGlyphNames +  960,
		{  258,  610,  754,  862 }, NULL	/* hungarumlaut */
    },
    {
	 -1, 0x03bc,  576, PSDRV_AGLGlyphNames + 1023,
		{    3, -187,  642,  555 }, NULL	/* mu */
    },
    {
	177, 0x2013,  500, PSDRV_AGLGlyphNames +  895,
		{   78,  230,  529,  348 }, NULL	/* endash */
    },
    {
	208, 0x2014, 1000, PSDRV_AGLGlyphNames +  893,
		{   78,  230, 1029,  348 }, NULL	/* emdash */
    },
    {
	 96, 0x2018,  280, PSDRV_AGLGlyphNames + 1122,
		{  158,  466,  341,  740 }, NULL	/* quoteleft */
    },
    {
	 39, 0x2019,  280, PSDRV_AGLGlyphNames + 1124,
		{  159,  466,  342,  740 }, NULL	/* quoteright */
    },
    {
	184, 0x201a,  280, PSDRV_AGLGlyphNames + 1125,
		{   47, -141,  230,  133 }, NULL	/* quotesinglbase */
    },
    {
	170, 0x201c,  480, PSDRV_AGLGlyphNames + 1120,
		{  156,  466,  546,  740 }, NULL	/* quotedblleft */
    },
    {
	186, 0x201d,  480, PSDRV_AGLGlyphNames + 1121,
		{  157,  466,  547,  740 }, NULL	/* quotedblright */
    },
    {
	185, 0x201e,  480, PSDRV_AGLGlyphNames + 1119,
		{   45, -141,  435,  133 }, NULL	/* quotedblbase */
    },
    {
	178, 0x2020,  560, PSDRV_AGLGlyphNames +  849,
		{  133, -142,  612,  740 }, NULL	/* dagger */
    },
    {
	179, 0x2021,  560, PSDRV_AGLGlyphNames +  850,
		{   63, -142,  618,  740 }, NULL	/* daggerdbl */
    },
    {
	183, 0x2022,  600, PSDRV_AGLGlyphNames +  812,
		{  215,  222,  526,  532 }, NULL	/* bullet */
    },
    {
	188, 0x2026, 1000, PSDRV_AGLGlyphNames +  891,
		{  100,    0,  924,  133 }, NULL	/* ellipsis */
    },
    {
	189, 0x2030, 1280, PSDRV_AGLGlyphNames + 1100,
		{  139,  -15, 1256,  755 }, NULL	/* perthousand */
    },
    {
	172, 0x2039,  240, PSDRV_AGLGlyphNames +  952,
		{   94,  108,  277,  469 }, NULL	/* guilsinglleft */
    },
    {
	173, 0x203a,  240, PSDRV_AGLGlyphNames +  953,
		{   70,  108,  253,  469 }, NULL	/* guilsinglright */
    },
    {
	 -1, 0x2122, 1000, PSDRV_AGLGlyphNames + 1198,
		{  131,  296,  958,  740 }, NULL	/* trademark */
    },
    {
	 -1, 0x2212,  600, PSDRV_AGLGlyphNames + 1020,
		{   84,  193,  610,  313 }, NULL	/* minus */
    },
    {
	164, 0x2215,  160, PSDRV_AGLGlyphNames +  934,
		{ -123,    0,  419,  740 }, NULL	/* fraction */
    },
    {
	174, 0xfb01,  520, PSDRV_AGLGlyphNames +  918,
		{   72,    0,  598,  755 }, NULL	/* fi */
    },
    {
	175, 0xfb02,  520, PSDRV_AGLGlyphNames +  927,
		{   72,    0,  598,  755 }, NULL	/* fl */
    }
};


/*
 *  Font metrics
 */

const AFM PSDRV_AvantGarde_DemiOblique =
{
    "AvantGarde-DemiOblique",			/* FontName */
    "ITC Avant Garde Gothic Demi Oblique",	/* FullName */
    "ITC Avant Garde Gothic",			/* FamilyName */
    "AdobeStandardEncoding",			/* EncodingScheme */
    FW_BOLD,					/* Weight */
    -10.5,					/* ItalicAngle */
    FALSE,					/* IsFixedPitch */
    -100,					/* UnderlinePosition */
    50,						/* UnderlineThickness */
    { -123, -251, 1256, 1021 },			/* FontBBox */
    740,					/* CapHeight */
    555,					/* XHeight */
    740,					/* Ascender */
    -185,					/* Descender */
    969,					/* FullAscender */
    {
	1000,				/* WinMetrics.usUnitsPerEm */
	1006,				/* WinMetrics.sAscender */
	-220,				/* WinMetrics.sDescender */
	0,				/* WinMetrics.sLineGap */
	485,				/* WinMetrics.sAvgCharWidth */
	750,				/* WinMetrics.sTypoAscender */
	-208,				/* WinMetrics.sTypoDescender */
	112,				/* WinMetrics.sTypoLineGap */
	1006,				/* WinMetrics.usWinAscent */
	220				/* 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, 280, 280, 360, 560, 560, 	/* CharWidths[30] - CharWidths[36] */
	860, 680, 220, 380, 380, 440, 	/* CharWidths[37] - CharWidths[42] */
	600, 280, 420, 280, 460, 560, 	/* CharWidths[43] - CharWidths[48] */
	560, 560, 560, 560, 560, 560, 	/* CharWidths[49] - CharWidths[54] */
	560, 560, 560, 280, 280, 600, 	/* CharWidths[55] - CharWidths[60] */
	600, 600, 560, 740, 740, 580, 	/* CharWidths[61] - CharWidths[66] */
	780, 700, 520, 480, 840, 680, 	/* CharWidths[67] - CharWidths[72] */
	280, 480, 620, 440, 900, 740, 	/* CharWidths[73] - CharWidths[78] */
	840, 560, 840, 580, 520, 420, 	/* CharWidths[79] - CharWidths[84] */
	640, 700, 900, 680, 620, 500, 	/* CharWidths[85] - CharWidths[90] */
	320, 640, 320, 600, 500, 420, 	/* CharWidths[91] - CharWidths[96] */
	660, 660, 640, 660, 640, 280, 	/* CharWidths[97] - CharWidths[102] */
	660, 600, 240, 260, 580, 240, 	/* CharWidths[103] - CharWidths[108] */
	940, 600, 640, 660, 660, 320, 	/* CharWidths[109] - CharWidths[114] */
	440, 300, 600, 560, 800, 560, 	/* CharWidths[115] - CharWidths[120] */
	580, 460, 340, 600, 340, 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, 280, 	/* CharWidths[137] - CharWidths[145] */
	280, 480, 480, 600, 500, 1000, 	/* CharWidths[146] - CharWidths[151] */
	0, 0, 0, 0, 0, 0, 0, 0, 280, 	/* CharWidths[152] - CharWidths[160] */
	280, 560, 560, 560, 560, 600, 	/* CharWidths[161] - CharWidths[166] */
	560, 500, 740, 480, 460, 600, 	/* CharWidths[167] - CharWidths[172] */
	420, 740, 420, 400, 600, 336, 	/* CharWidths[173] - CharWidths[178] */
	336, 420, 0, 600, 280, 340, 	/* CharWidths[179] - CharWidths[184] */
	336, 480, 460, 840, 840, 840, 	/* CharWidths[185] - CharWidths[190] */
	560, 0, 420, 420, 540, 480, 	/* CharWidths[191] - CharWidths[196] */
	420, 480, 280, 500, 0, 360, 	/* CharWidths[197] - CharWidths[202] */
	340, 0, 700, 340, 540, 1000, 	/* CharWidths[203] - CharWidths[208] */
	0, 0, 0, 0, 0, 0, 600, 0, 0, 	/* CharWidths[209] - CharWidths[217] */
	0, 0, 0, 0, 0, 0, 0, 900, 0, 	/* CharWidths[218] - CharWidths[226] */
	360, 0, 0, 0, 0, 480, 840, 	/* CharWidths[227] - CharWidths[233] */
	1060, 360, 0, 0, 0, 0, 0, 	/* CharWidths[234] - CharWidths[240] */
	1080, 0, 0, 0, 240, 0, 600, 	/* CharWidths[241] - CharWidths[247] */
	320, 660, 1080, 600, 0, 0, 0, 	/* CharWidths[248] - CharWidths[254] */
	0				/* CharWidths[255] */
    },
    228,					/* NumofMetrics */
    met_AvantGarde_DemiOblique,			/* Metrics */
};
