Remove redundant data structure from font metrics.
This commit is contained in:
parent
3f46d3d6a4
commit
a9eae850d4
|
@ -231,54 +231,6 @@ static BOOL PSDRV_AFMGetCharMetrics(AFM *afm, FILE *fp)
|
|||
return TRUE;
|
||||
}
|
||||
|
||||
/*******************************************************************************
|
||||
* BuildEncoding
|
||||
*
|
||||
* Builds a custom encoding vector if necessary. Leaves vector in the same
|
||||
* order as the afm->Metrics array; see SortFontMetrics().
|
||||
*
|
||||
*/
|
||||
static BOOL BuildEncoding(AFM *afm)
|
||||
{
|
||||
UNICODEVECTOR *uv;
|
||||
UNICODEGLYPH *ug;
|
||||
int i;
|
||||
|
||||
if (strcmp(afm->EncodingScheme, "FontSpecific") != 0)
|
||||
{
|
||||
afm->Encoding = &PSDRV_AdobeGlyphList;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
uv = HeapAlloc(PSDRV_Heap, 0, sizeof(UNICODEVECTOR) +
|
||||
afm->NumofMetrics * sizeof(UNICODEGLYPH));
|
||||
if (uv == NULL)
|
||||
return FALSE;
|
||||
|
||||
afm->Encoding = uv;
|
||||
ug = (UNICODEGLYPH *)(uv + 1);
|
||||
uv->glyphs = ug;
|
||||
uv->size = afm->NumofMetrics;
|
||||
|
||||
for (i = 0; i < afm->NumofMetrics; ++i)
|
||||
{
|
||||
ug[i].name = afm->Metrics[i].N;
|
||||
|
||||
if (afm->Metrics[i].C < 0) /* unencoded glyph */
|
||||
{
|
||||
WARN("Glyph '%s' in font '%s' has no encoding\n", ug[i].name->sz,
|
||||
afm->FullName);
|
||||
ug[i].UV = -1;
|
||||
}
|
||||
else
|
||||
{
|
||||
ug[i].UV = afm->Metrics[i].C | 0xf000; /* private use area? */
|
||||
}
|
||||
}
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
/***********************************************************
|
||||
*
|
||||
|
@ -500,12 +452,6 @@ static AFM *PSDRV_AFMParse(char const *file)
|
|||
if(afm->Weight == 0)
|
||||
afm->Weight = FW_NORMAL;
|
||||
|
||||
if (BuildEncoding(afm) == FALSE)
|
||||
{
|
||||
FreeAFM(afm);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
return afm;
|
||||
}
|
||||
|
||||
|
@ -698,11 +644,6 @@ static int UnicodeGlyphByNameIndex(const UNICODEGLYPH *a, const UNICODEGLYPH *b)
|
|||
return a->name->index - b->name->index;
|
||||
}
|
||||
|
||||
static int UnicodeGlyphByUV(const UNICODEGLYPH *a, const UNICODEGLYPH *b)
|
||||
{
|
||||
return a->UV - b->UV;
|
||||
}
|
||||
|
||||
static int AFMMetricsByUV(const AFMMETRICS *a, const AFMMETRICS *b)
|
||||
{
|
||||
return a->UV - b->UV;
|
||||
|
@ -722,7 +663,7 @@ static BOOL SortFontMetrics()
|
|||
AFM *afm = afmle->afm; /* should always be valid */
|
||||
INT i;
|
||||
|
||||
if (afm->Encoding == &PSDRV_AdobeGlyphList)
|
||||
if (strcmp(afm->EncodingScheme, "FontSpecific") != 0)
|
||||
{
|
||||
if (aglCopy == NULL) /* do this once, if necessary */
|
||||
{
|
||||
|
@ -761,22 +702,10 @@ static BOOL SortFontMetrics()
|
|||
}
|
||||
}
|
||||
}
|
||||
else /* FontSpecific encoding or TrueType font */
|
||||
else /* FontSpecific encoding */
|
||||
{
|
||||
for (i = 0; i < afm->NumofMetrics; ++i)
|
||||
afm->Metrics[i].UV = afm->Encoding->glyphs[i].UV;
|
||||
|
||||
/* typecast avoids compiler warning */
|
||||
qsort((void *)(afm->Encoding->glyphs), afm->Encoding->size,
|
||||
sizeof(UNICODEGLYPH),
|
||||
(compar_callback_fn)UnicodeGlyphByUV);
|
||||
|
||||
for (i = 0; i < afm->Encoding->size; ++i)
|
||||
if (afm->Encoding->glyphs[i].UV >= 0)
|
||||
break;
|
||||
|
||||
afm->Encoding->size -= i; /* Ignore unencoded glyphs */
|
||||
afm->Encoding->glyphs += i; /* from now on */
|
||||
afm->Metrics[i].UV = afm->Metrics[i].C;
|
||||
}
|
||||
|
||||
qsort(afm->Metrics, afm->NumofMetrics, sizeof(AFMMETRICS),
|
||||
|
@ -786,7 +715,7 @@ static BOOL SortFontMetrics()
|
|||
if (afm->Metrics[i].UV >= 0)
|
||||
break;
|
||||
|
||||
afm->NumofMetrics -= i; /* Ignore unencoded glyphs here too */
|
||||
afm->NumofMetrics -= i; /* Ignore unencoded glyphs */
|
||||
afm->Metrics += i;
|
||||
|
||||
afmle = afmle->next;
|
||||
|
|
|
@ -1014,6 +1014,5 @@ AFM PSDRV_AvantGarde_Book =
|
|||
0 /* CharWidths[255] */
|
||||
},
|
||||
228, /* NumofMetrics */
|
||||
met_AvantGarde_Book, /* Metrics */
|
||||
&PSDRV_AdobeGlyphList /* Encoding */
|
||||
met_AvantGarde_Book /* Metrics */
|
||||
};
|
||||
|
|
|
@ -1014,6 +1014,5 @@ AFM PSDRV_AvantGarde_BookOblique =
|
|||
0 /* CharWidths[255] */
|
||||
},
|
||||
228, /* NumofMetrics */
|
||||
met_AvantGarde_BookOblique, /* Metrics */
|
||||
&PSDRV_AdobeGlyphList /* Encoding */
|
||||
met_AvantGarde_BookOblique /* Metrics */
|
||||
};
|
||||
|
|
|
@ -1014,6 +1014,5 @@ AFM PSDRV_AvantGarde_Demi =
|
|||
0 /* CharWidths[255] */
|
||||
},
|
||||
228, /* NumofMetrics */
|
||||
met_AvantGarde_Demi, /* Metrics */
|
||||
&PSDRV_AdobeGlyphList /* Encoding */
|
||||
met_AvantGarde_Demi /* Metrics */
|
||||
};
|
||||
|
|
|
@ -1015,5 +1015,4 @@ AFM PSDRV_AvantGarde_DemiOblique =
|
|||
},
|
||||
228, /* NumofMetrics */
|
||||
met_AvantGarde_DemiOblique, /* Metrics */
|
||||
&PSDRV_AdobeGlyphList /* Encoding */
|
||||
};
|
||||
|
|
|
@ -1013,6 +1013,5 @@ AFM PSDRV_Bookman_Demi =
|
|||
620, 940, 660, 0, 0, 0, 0 /* CharWidths[249] - CharWidths[255] */
|
||||
},
|
||||
228, /* NumofMetrics */
|
||||
met_Bookman_Demi, /* Metrics */
|
||||
&PSDRV_AdobeGlyphList /* Encoding */
|
||||
met_Bookman_Demi /* Metrics */
|
||||
};
|
||||
|
|
|
@ -1014,6 +1014,5 @@ AFM PSDRV_Bookman_DemiItalic =
|
|||
0 /* CharWidths[255] */
|
||||
},
|
||||
228, /* NumofMetrics */
|
||||
met_Bookman_DemiItalic, /* Metrics */
|
||||
&PSDRV_AdobeGlyphList /* Encoding */
|
||||
met_Bookman_DemiItalic /* Metrics */
|
||||
};
|
||||
|
|
|
@ -1013,6 +1013,5 @@ AFM PSDRV_Bookman_Light =
|
|||
560, 900, 660, 0, 0, 0, 0 /* CharWidths[249] - CharWidths[255] */
|
||||
},
|
||||
228, /* NumofMetrics */
|
||||
met_Bookman_Light, /* Metrics */
|
||||
&PSDRV_AdobeGlyphList /* Encoding */
|
||||
met_Bookman_Light /* Metrics */
|
||||
};
|
||||
|
|
|
@ -1013,6 +1013,5 @@ AFM PSDRV_Bookman_LightItalic =
|
|||
540, 900, 620, 0, 0, 0, 0 /* CharWidths[249] - CharWidths[255] */
|
||||
},
|
||||
228, /* NumofMetrics */
|
||||
met_Bookman_LightItalic, /* Metrics */
|
||||
&PSDRV_AdobeGlyphList /* Encoding */
|
||||
met_Bookman_LightItalic /* Metrics */
|
||||
};
|
||||
|
|
|
@ -1073,6 +1073,5 @@ AFM PSDRV_Courier =
|
|||
600, 0, 0, 0, 0 /* CharWidths[251] - CharWidths[255] */
|
||||
},
|
||||
243, /* NumofMetrics */
|
||||
met_Courier, /* Metrics */
|
||||
&PSDRV_AdobeGlyphList /* Encoding */
|
||||
met_Courier /* Metrics */
|
||||
};
|
||||
|
|
|
@ -1073,6 +1073,5 @@ AFM PSDRV_Courier_Bold =
|
|||
600, 0, 0, 0, 0 /* CharWidths[251] - CharWidths[255] */
|
||||
},
|
||||
243, /* NumofMetrics */
|
||||
met_Courier_Bold, /* Metrics */
|
||||
&PSDRV_AdobeGlyphList /* Encoding */
|
||||
met_Courier_Bold /* Metrics */
|
||||
};
|
||||
|
|
|
@ -1073,6 +1073,5 @@ AFM PSDRV_Courier_BoldOblique =
|
|||
600, 0, 0, 0, 0 /* CharWidths[251] - CharWidths[255] */
|
||||
},
|
||||
243, /* NumofMetrics */
|
||||
met_Courier_BoldOblique, /* Metrics */
|
||||
&PSDRV_AdobeGlyphList /* Encoding */
|
||||
met_Courier_BoldOblique /* Metrics */
|
||||
};
|
||||
|
|
|
@ -1073,6 +1073,5 @@ AFM PSDRV_Courier_Oblique =
|
|||
600, 0, 0, 0, 0 /* CharWidths[251] - CharWidths[255] */
|
||||
},
|
||||
243, /* NumofMetrics */
|
||||
met_Courier_Oblique, /* Metrics */
|
||||
&PSDRV_AdobeGlyphList /* Encoding */
|
||||
met_Courier_Oblique /* Metrics */
|
||||
};
|
||||
|
|
|
@ -1013,6 +1013,5 @@ AFM PSDRV_Helvetica =
|
|||
611, 944, 611, 0, 0, 0, 0 /* CharWidths[249] - CharWidths[255] */
|
||||
},
|
||||
228, /* NumofMetrics */
|
||||
met_Helvetica, /* Metrics */
|
||||
&PSDRV_AdobeGlyphList /* Encoding */
|
||||
met_Helvetica /* Metrics */
|
||||
};
|
||||
|
|
|
@ -1013,6 +1013,5 @@ AFM PSDRV_Helvetica_Bold =
|
|||
611, 944, 611, 0, 0, 0, 0 /* CharWidths[249] - CharWidths[255] */
|
||||
},
|
||||
228, /* NumofMetrics */
|
||||
met_Helvetica_Bold, /* Metrics */
|
||||
&PSDRV_AdobeGlyphList /* Encoding */
|
||||
met_Helvetica_Bold /* Metrics */
|
||||
};
|
||||
|
|
|
@ -1013,6 +1013,5 @@ AFM PSDRV_Helvetica_BoldOblique =
|
|||
611, 944, 611, 0, 0, 0, 0 /* CharWidths[249] - CharWidths[255] */
|
||||
},
|
||||
228, /* NumofMetrics */
|
||||
met_Helvetica_BoldOblique, /* Metrics */
|
||||
&PSDRV_AdobeGlyphList /* Encoding */
|
||||
met_Helvetica_BoldOblique /* Metrics */
|
||||
};
|
||||
|
|
|
@ -1013,6 +1013,5 @@ AFM PSDRV_Helvetica_Narrow =
|
|||
501, 0, 0, 0, 0 /* CharWidths[251] - CharWidths[255] */
|
||||
},
|
||||
228, /* NumofMetrics */
|
||||
met_Helvetica_Narrow, /* Metrics */
|
||||
&PSDRV_AdobeGlyphList /* Encoding */
|
||||
met_Helvetica_Narrow /* Metrics */
|
||||
};
|
||||
|
|
|
@ -1013,6 +1013,5 @@ AFM PSDRV_Helvetica_Narrow_Bold =
|
|||
501, 0, 0, 0, 0 /* CharWidths[251] - CharWidths[255] */
|
||||
},
|
||||
228, /* NumofMetrics */
|
||||
met_Helvetica_Narrow_Bold, /* Metrics */
|
||||
&PSDRV_AdobeGlyphList /* Encoding */
|
||||
met_Helvetica_Narrow_Bold /* Metrics */
|
||||
};
|
||||
|
|
|
@ -1013,6 +1013,5 @@ AFM PSDRV_Helvetica_Narrow_BoldOblique =
|
|||
501, 0, 0, 0, 0 /* CharWidths[251] - CharWidths[255] */
|
||||
},
|
||||
228, /* NumofMetrics */
|
||||
met_Helvetica_Narrow_BoldOblique, /* Metrics */
|
||||
&PSDRV_AdobeGlyphList /* Encoding */
|
||||
met_Helvetica_Narrow_BoldOblique /* Metrics */
|
||||
};
|
||||
|
|
|
@ -1013,6 +1013,5 @@ AFM PSDRV_Helvetica_Narrow_Oblique =
|
|||
501, 0, 0, 0, 0 /* CharWidths[251] - CharWidths[255] */
|
||||
},
|
||||
228, /* NumofMetrics */
|
||||
met_Helvetica_Narrow_Oblique, /* Metrics */
|
||||
&PSDRV_AdobeGlyphList /* Encoding */
|
||||
met_Helvetica_Narrow_Oblique /* Metrics */
|
||||
};
|
||||
|
|
|
@ -1013,6 +1013,5 @@ AFM PSDRV_Helvetica_Oblique =
|
|||
611, 944, 611, 0, 0, 0, 0 /* CharWidths[249] - CharWidths[255] */
|
||||
},
|
||||
228, /* NumofMetrics */
|
||||
met_Helvetica_Oblique, /* Metrics */
|
||||
&PSDRV_AdobeGlyphList /* Encoding */
|
||||
met_Helvetica_Oblique /* Metrics */
|
||||
};
|
||||
|
|
|
@ -1013,6 +1013,5 @@ AFM PSDRV_NewCenturySchlbk_Bold =
|
|||
611, 907, 611, 0, 0, 0, 0 /* CharWidths[249] - CharWidths[255] */
|
||||
},
|
||||
228, /* NumofMetrics */
|
||||
met_NewCenturySchlbk_Bold, /* Metrics */
|
||||
&PSDRV_AdobeGlyphList /* Encoding */
|
||||
met_NewCenturySchlbk_Bold /* Metrics */
|
||||
};
|
||||
|
|
|
@ -1013,6 +1013,5 @@ AFM PSDRV_NewCenturySchlbk_BoldItalic =
|
|||
574, 852, 574, 0, 0, 0, 0 /* CharWidths[249] - CharWidths[255] */
|
||||
},
|
||||
228, /* NumofMetrics */
|
||||
met_NewCenturySchlbk_BoldItalic, /* Metrics */
|
||||
&PSDRV_AdobeGlyphList /* Encoding */
|
||||
met_NewCenturySchlbk_BoldItalic /* Metrics */
|
||||
};
|
||||
|
|
|
@ -1013,6 +1013,5 @@ AFM PSDRV_NewCenturySchlbk_Italic =
|
|||
500, 778, 556, 0, 0, 0, 0 /* CharWidths[249] - CharWidths[255] */
|
||||
},
|
||||
228, /* NumofMetrics */
|
||||
met_NewCenturySchlbk_Italic, /* Metrics */
|
||||
&PSDRV_AdobeGlyphList /* Encoding */
|
||||
met_NewCenturySchlbk_Italic /* Metrics */
|
||||
};
|
||||
|
|
|
@ -1013,6 +1013,5 @@ AFM PSDRV_NewCenturySchlbk_Roman =
|
|||
500, 833, 574, 0, 0, 0, 0 /* CharWidths[249] - CharWidths[255] */
|
||||
},
|
||||
228, /* NumofMetrics */
|
||||
met_NewCenturySchlbk_Roman, /* Metrics */
|
||||
&PSDRV_AdobeGlyphList /* Encoding */
|
||||
met_NewCenturySchlbk_Roman /* Metrics */
|
||||
};
|
||||
|
|
|
@ -1013,6 +1013,5 @@ AFM PSDRV_Palatino_Bold =
|
|||
556, 833, 611, 0, 0, 0, 0 /* CharWidths[249] - CharWidths[255] */
|
||||
},
|
||||
228, /* NumofMetrics */
|
||||
met_Palatino_Bold, /* Metrics */
|
||||
&PSDRV_AdobeGlyphList /* Encoding */
|
||||
met_Palatino_Bold /* Metrics */
|
||||
};
|
||||
|
|
|
@ -1013,6 +1013,5 @@ AFM PSDRV_Palatino_BoldItalic =
|
|||
556, 778, 556, 0, 0, 0, 0 /* CharWidths[249] - CharWidths[255] */
|
||||
},
|
||||
228, /* NumofMetrics */
|
||||
met_Palatino_BoldItalic, /* Metrics */
|
||||
&PSDRV_AdobeGlyphList /* Encoding */
|
||||
met_Palatino_BoldItalic /* Metrics */
|
||||
};
|
||||
|
|
|
@ -1013,6 +1013,5 @@ AFM PSDRV_Palatino_Italic =
|
|||
444, 669, 500, 0, 0, 0, 0 /* CharWidths[249] - CharWidths[255] */
|
||||
},
|
||||
228, /* NumofMetrics */
|
||||
met_Palatino_Italic, /* Metrics */
|
||||
&PSDRV_AdobeGlyphList /* Encoding */
|
||||
met_Palatino_Italic /* Metrics */
|
||||
};
|
||||
|
|
|
@ -1013,6 +1013,5 @@ AFM PSDRV_Palatino_Roman =
|
|||
556, 827, 556, 0, 0, 0, 0 /* CharWidths[249] - CharWidths[255] */
|
||||
},
|
||||
228, /* NumofMetrics */
|
||||
met_Palatino_Roman, /* Metrics */
|
||||
&PSDRV_AdobeGlyphList /* Encoding */
|
||||
met_Palatino_Roman /* Metrics */
|
||||
};
|
||||
|
|
|
@ -19,205 +19,6 @@
|
|||
#include "psdrv.h"
|
||||
|
||||
|
||||
/*
|
||||
* FontSpecific encoding vector
|
||||
*/
|
||||
|
||||
static const UNICODEGLYPH ug_Symbol[188] =
|
||||
{
|
||||
{ 0xf020, PSDRV_AGLGlyphNames + 1169 }, /* space */
|
||||
{ 0xf021, PSDRV_AGLGlyphNames + 907 }, /* exclam */
|
||||
{ 0xf022, PSDRV_AGLGlyphNames + 1224 }, /* universal */
|
||||
{ 0xf023, PSDRV_AGLGlyphNames + 1043 }, /* numbersign */
|
||||
{ 0xf024, PSDRV_AGLGlyphNames + 912 }, /* existential */
|
||||
{ 0xf025, PSDRV_AGLGlyphNames + 1094 }, /* percent */
|
||||
{ 0xf026, PSDRV_AGLGlyphNames + 755 }, /* ampersand */
|
||||
{ 0xf027, PSDRV_AGLGlyphNames + 1175 }, /* suchthat */
|
||||
{ 0xf028, PSDRV_AGLGlyphNames + 1081 }, /* parenleft */
|
||||
{ 0xf029, PSDRV_AGLGlyphNames + 1087 }, /* parenright */
|
||||
{ 0xf02a, PSDRV_AGLGlyphNames + 783 }, /* asteriskmath */
|
||||
{ 0xf02b, PSDRV_AGLGlyphNames + 1105 }, /* plus */
|
||||
{ 0xf02c, PSDRV_AGLGlyphNames + 835 }, /* comma */
|
||||
{ 0xf02d, PSDRV_AGLGlyphNames + 1020 }, /* minus */
|
||||
{ 0xf02e, PSDRV_AGLGlyphNames + 1095 }, /* period */
|
||||
{ 0xf02f, PSDRV_AGLGlyphNames + 1167 }, /* slash */
|
||||
{ 0xf030, PSDRV_AGLGlyphNames + 1253 }, /* zero */
|
||||
{ 0xf031, PSDRV_AGLGlyphNames + 1060 }, /* one */
|
||||
{ 0xf032, PSDRV_AGLGlyphNames + 1206 }, /* two */
|
||||
{ 0xf033, PSDRV_AGLGlyphNames + 1188 }, /* three */
|
||||
{ 0xf034, PSDRV_AGLGlyphNames + 930 }, /* four */
|
||||
{ 0xf035, PSDRV_AGLGlyphNames + 922 }, /* five */
|
||||
{ 0xf036, PSDRV_AGLGlyphNames + 1163 }, /* six */
|
||||
{ 0xf037, PSDRV_AGLGlyphNames + 1154 }, /* seven */
|
||||
{ 0xf038, PSDRV_AGLGlyphNames + 886 }, /* eight */
|
||||
{ 0xf039, PSDRV_AGLGlyphNames + 1032 }, /* nine */
|
||||
{ 0xf03a, PSDRV_AGLGlyphNames + 833 }, /* colon */
|
||||
{ 0xf03b, PSDRV_AGLGlyphNames + 1153 }, /* semicolon */
|
||||
{ 0xf03c, PSDRV_AGLGlyphNames + 1003 }, /* less */
|
||||
{ 0xf03d, PSDRV_AGLGlyphNames + 900 }, /* equal */
|
||||
{ 0xf03e, PSDRV_AGLGlyphNames + 948 }, /* greater */
|
||||
{ 0xf03f, PSDRV_AGLGlyphNames + 1114 }, /* question */
|
||||
{ 0xf040, PSDRV_AGLGlyphNames + 839 }, /* congruent */
|
||||
{ 0xf041, PSDRV_AGLGlyphNames + 15 }, /* Alpha */
|
||||
{ 0xf042, PSDRV_AGLGlyphNames + 26 }, /* Beta */
|
||||
{ 0xf043, PSDRV_AGLGlyphNames + 39 }, /* Chi */
|
||||
{ 0xf044, PSDRV_AGLGlyphNames + 45 }, /* Delta */
|
||||
{ 0xf045, PSDRV_AGLGlyphNames + 67 }, /* Epsilon */
|
||||
{ 0xf046, PSDRV_AGLGlyphNames + 175 }, /* Phi */
|
||||
{ 0xf047, PSDRV_AGLGlyphNames + 78 }, /* Gamma */
|
||||
{ 0xf048, PSDRV_AGLGlyphNames + 70 }, /* Eta */
|
||||
{ 0xf049, PSDRV_AGLGlyphNames + 113 }, /* Iota */
|
||||
{ 0xf04a, PSDRV_AGLGlyphNames + 1186 }, /* theta1 */
|
||||
{ 0xf04b, PSDRV_AGLGlyphNames + 122 }, /* Kappa */
|
||||
{ 0xf04c, PSDRV_AGLGlyphNames + 128 }, /* Lambda */
|
||||
{ 0xf04d, PSDRV_AGLGlyphNames + 139 }, /* Mu */
|
||||
{ 0xf04e, PSDRV_AGLGlyphNames + 147 }, /* Nu */
|
||||
{ 0xf04f, PSDRV_AGLGlyphNames + 166 }, /* Omicron */
|
||||
{ 0xf050, PSDRV_AGLGlyphNames + 176 }, /* Pi */
|
||||
{ 0xf051, PSDRV_AGLGlyphNames + 243 }, /* Theta */
|
||||
{ 0xf052, PSDRV_AGLGlyphNames + 186 }, /* Rho */
|
||||
{ 0xf053, PSDRV_AGLGlyphNames + 236 }, /* Sigma */
|
||||
{ 0xf054, PSDRV_AGLGlyphNames + 239 }, /* Tau */
|
||||
{ 0xf055, PSDRV_AGLGlyphNames + 262 }, /* Upsilon */
|
||||
{ 0xf056, PSDRV_AGLGlyphNames + 1161 }, /* sigma1 */
|
||||
{ 0xf057, PSDRV_AGLGlyphNames + 164 }, /* Omega */
|
||||
{ 0xf058, PSDRV_AGLGlyphNames + 278 }, /* Xi */
|
||||
{ 0xf059, PSDRV_AGLGlyphNames + 177 }, /* Psi */
|
||||
{ 0xf05a, PSDRV_AGLGlyphNames + 293 }, /* Zeta */
|
||||
{ 0xf05b, PSDRV_AGLGlyphNames + 801 }, /* bracketleft */
|
||||
{ 0xf05c, PSDRV_AGLGlyphNames + 1184 }, /* therefore */
|
||||
{ 0xf05d, PSDRV_AGLGlyphNames + 805 }, /* bracketright */
|
||||
{ 0xf05e, PSDRV_AGLGlyphNames + 1099 }, /* perpendicular */
|
||||
{ 0xf05f, PSDRV_AGLGlyphNames + 1221 }, /* underscore */
|
||||
{ 0xf060, PSDRV_AGLGlyphNames + 1130 }, /* radicalex */
|
||||
{ 0xf061, PSDRV_AGLGlyphNames + 752 }, /* alpha */
|
||||
{ 0xf062, PSDRV_AGLGlyphNames + 790 }, /* beta */
|
||||
{ 0xf063, PSDRV_AGLGlyphNames + 827 }, /* chi */
|
||||
{ 0xf064, PSDRV_AGLGlyphNames + 857 }, /* delta */
|
||||
{ 0xf065, PSDRV_AGLGlyphNames + 898 }, /* epsilon */
|
||||
{ 0xf066, PSDRV_AGLGlyphNames + 1102 }, /* phi */
|
||||
{ 0xf067, PSDRV_AGLGlyphNames + 937 }, /* gamma */
|
||||
{ 0xf068, PSDRV_AGLGlyphNames + 904 }, /* eta */
|
||||
{ 0xf069, PSDRV_AGLGlyphNames + 983 }, /* iota */
|
||||
{ 0xf06a, PSDRV_AGLGlyphNames + 1103 }, /* phi1 */
|
||||
{ 0xf06b, PSDRV_AGLGlyphNames + 992 }, /* kappa */
|
||||
{ 0xf06c, PSDRV_AGLGlyphNames + 997 }, /* lambda */
|
||||
{ 0xf06d, PSDRV_AGLGlyphNames + 1023 }, /* mu */
|
||||
{ 0xf06e, PSDRV_AGLGlyphNames + 1042 }, /* nu */
|
||||
{ 0xf06f, PSDRV_AGLGlyphNames + 1058 }, /* omicron */
|
||||
{ 0xf070, PSDRV_AGLGlyphNames + 1104 }, /* pi */
|
||||
{ 0xf071, PSDRV_AGLGlyphNames + 1185 }, /* theta */
|
||||
{ 0xf072, PSDRV_AGLGlyphNames + 1140 }, /* rho */
|
||||
{ 0xf073, PSDRV_AGLGlyphNames + 1160 }, /* sigma */
|
||||
{ 0xf074, PSDRV_AGLGlyphNames + 1180 }, /* tau */
|
||||
{ 0xf075, PSDRV_AGLGlyphNames + 1228 }, /* upsilon */
|
||||
{ 0xf076, PSDRV_AGLGlyphNames + 1056 }, /* omega1 */
|
||||
{ 0xf077, PSDRV_AGLGlyphNames + 1055 }, /* omega */
|
||||
{ 0xf078, PSDRV_AGLGlyphNames + 1242 }, /* xi */
|
||||
{ 0xf079, PSDRV_AGLGlyphNames + 1112 }, /* psi */
|
||||
{ 0xf07a, PSDRV_AGLGlyphNames + 1257 }, /* zeta */
|
||||
{ 0xf07b, PSDRV_AGLGlyphNames + 793 }, /* braceleft */
|
||||
{ 0xf07c, PSDRV_AGLGlyphNames + 789 }, /* bar */
|
||||
{ 0xf07d, PSDRV_AGLGlyphNames + 797 }, /* braceright */
|
||||
{ 0xf07e, PSDRV_AGLGlyphNames + 1162 }, /* similar */
|
||||
{ 0xf0a1, PSDRV_AGLGlyphNames + 263 }, /* Upsilon1 */
|
||||
{ 0xf0a2, PSDRV_AGLGlyphNames + 1021 }, /* minute */
|
||||
{ 0xf0a3, PSDRV_AGLGlyphNames + 1004 }, /* lessequal */
|
||||
{ 0xf0a4, PSDRV_AGLGlyphNames + 934 }, /* fraction */
|
||||
{ 0xf0a5, PSDRV_AGLGlyphNames + 973 }, /* infinity */
|
||||
{ 0xf0a6, PSDRV_AGLGlyphNames + 928 }, /* florin */
|
||||
{ 0xf0a7, PSDRV_AGLGlyphNames + 832 }, /* club */
|
||||
{ 0xf0a8, PSDRV_AGLGlyphNames + 858 }, /* diamond */
|
||||
{ 0xf0a9, PSDRV_AGLGlyphNames + 957 }, /* heart */
|
||||
{ 0xf0aa, PSDRV_AGLGlyphNames + 1170 }, /* spade */
|
||||
{ 0xf0ab, PSDRV_AGLGlyphNames + 766 }, /* arrowboth */
|
||||
{ 0xf0ac, PSDRV_AGLGlyphNames + 774 }, /* arrowleft */
|
||||
{ 0xf0ad, PSDRV_AGLGlyphNames + 776 }, /* arrowup */
|
||||
{ 0xf0ae, PSDRV_AGLGlyphNames + 775 }, /* arrowright */
|
||||
{ 0xf0af, PSDRV_AGLGlyphNames + 772 }, /* arrowdown */
|
||||
{ 0xf0b0, PSDRV_AGLGlyphNames + 856 }, /* degree */
|
||||
{ 0xf0b1, PSDRV_AGLGlyphNames + 1106 }, /* plusminus */
|
||||
{ 0xf0b2, PSDRV_AGLGlyphNames + 1151 }, /* second */
|
||||
{ 0xf0b3, PSDRV_AGLGlyphNames + 949 }, /* greaterequal */
|
||||
{ 0xf0b4, PSDRV_AGLGlyphNames + 1024 }, /* multiply */
|
||||
{ 0xf0b5, PSDRV_AGLGlyphNames + 1111 }, /* proportional */
|
||||
{ 0xf0b6, PSDRV_AGLGlyphNames + 1093 }, /* partialdiff */
|
||||
{ 0xf0b7, PSDRV_AGLGlyphNames + 812 }, /* bullet */
|
||||
{ 0xf0b8, PSDRV_AGLGlyphNames + 863 }, /* divide */
|
||||
{ 0xf0b9, PSDRV_AGLGlyphNames + 1038 }, /* notequal */
|
||||
{ 0xf0ba, PSDRV_AGLGlyphNames + 901 }, /* equivalence */
|
||||
{ 0xf0bb, PSDRV_AGLGlyphNames + 763 }, /* approxequal */
|
||||
{ 0xf0bc, PSDRV_AGLGlyphNames + 891 }, /* ellipsis */
|
||||
{ 0xf0bd, PSDRV_AGLGlyphNames + 779 }, /* arrowvertex */
|
||||
{ 0xf0be, PSDRV_AGLGlyphNames + 773 }, /* arrowhorizex */
|
||||
{ 0xf0bf, PSDRV_AGLGlyphNames + 816 }, /* carriagereturn */
|
||||
{ 0xf0c0, PSDRV_AGLGlyphNames + 751 }, /* aleph */
|
||||
{ 0xf0c1, PSDRV_AGLGlyphNames + 108 }, /* Ifraktur */
|
||||
{ 0xf0c2, PSDRV_AGLGlyphNames + 185 }, /* Rfraktur */
|
||||
{ 0xf0c3, PSDRV_AGLGlyphNames + 1239 }, /* weierstrass */
|
||||
{ 0xf0c4, PSDRV_AGLGlyphNames + 829 }, /* circlemultiply */
|
||||
{ 0xf0c5, PSDRV_AGLGlyphNames + 830 }, /* circleplus */
|
||||
{ 0xf0c6, PSDRV_AGLGlyphNames + 894 }, /* emptyset */
|
||||
{ 0xf0c7, PSDRV_AGLGlyphNames + 978 }, /* intersection */
|
||||
{ 0xf0c8, PSDRV_AGLGlyphNames + 1223 }, /* union */
|
||||
{ 0xf0c9, PSDRV_AGLGlyphNames + 1110 }, /* propersuperset */
|
||||
{ 0xf0ca, PSDRV_AGLGlyphNames + 1134 }, /* reflexsuperset */
|
||||
{ 0xf0cb, PSDRV_AGLGlyphNames + 1039 }, /* notsubset */
|
||||
{ 0xf0cc, PSDRV_AGLGlyphNames + 1109 }, /* propersubset */
|
||||
{ 0xf0cd, PSDRV_AGLGlyphNames + 1133 }, /* reflexsubset */
|
||||
{ 0xf0ce, PSDRV_AGLGlyphNames + 890 }, /* element */
|
||||
{ 0xf0cf, PSDRV_AGLGlyphNames + 1037 }, /* notelement */
|
||||
{ 0xf0d0, PSDRV_AGLGlyphNames + 757 }, /* angle */
|
||||
{ 0xf0d1, PSDRV_AGLGlyphNames + 944 }, /* gradient */
|
||||
{ 0xf0d2, PSDRV_AGLGlyphNames + 1137 }, /* registerserif */
|
||||
{ 0xf0d3, PSDRV_AGLGlyphNames + 842 }, /* copyrightserif */
|
||||
{ 0xf0d4, PSDRV_AGLGlyphNames + 1200 }, /* trademarkserif */
|
||||
{ 0xf0d5, PSDRV_AGLGlyphNames + 1108 }, /* product */
|
||||
{ 0xf0d6, PSDRV_AGLGlyphNames + 1129 }, /* radical */
|
||||
{ 0xf0d7, PSDRV_AGLGlyphNames + 875 }, /* dotmath */
|
||||
{ 0xf0d8, PSDRV_AGLGlyphNames + 1009 }, /* logicalnot */
|
||||
{ 0xf0d9, PSDRV_AGLGlyphNames + 1008 }, /* logicaland */
|
||||
{ 0xf0da, PSDRV_AGLGlyphNames + 1010 }, /* logicalor */
|
||||
{ 0xf0db, PSDRV_AGLGlyphNames + 767 }, /* arrowdblboth */
|
||||
{ 0xf0dc, PSDRV_AGLGlyphNames + 769 }, /* arrowdblleft */
|
||||
{ 0xf0dd, PSDRV_AGLGlyphNames + 771 }, /* arrowdblup */
|
||||
{ 0xf0de, PSDRV_AGLGlyphNames + 770 }, /* arrowdblright */
|
||||
{ 0xf0df, PSDRV_AGLGlyphNames + 768 }, /* arrowdbldown */
|
||||
{ 0xf0e0, PSDRV_AGLGlyphNames + 1012 }, /* lozenge */
|
||||
{ 0xf0e1, PSDRV_AGLGlyphNames + 758 }, /* angleleft */
|
||||
{ 0xf0e2, PSDRV_AGLGlyphNames + 1136 }, /* registersans */
|
||||
{ 0xf0e3, PSDRV_AGLGlyphNames + 841 }, /* copyrightsans */
|
||||
{ 0xf0e4, PSDRV_AGLGlyphNames + 1199 }, /* trademarksans */
|
||||
{ 0xf0e5, PSDRV_AGLGlyphNames + 1176 }, /* summation */
|
||||
{ 0xf0e6, PSDRV_AGLGlyphNames + 1086 }, /* parenlefttp */
|
||||
{ 0xf0e7, PSDRV_AGLGlyphNames + 1083 }, /* parenleftex */
|
||||
{ 0xf0e8, PSDRV_AGLGlyphNames + 1082 }, /* parenleftbt */
|
||||
{ 0xf0e9, PSDRV_AGLGlyphNames + 804 }, /* bracketlefttp */
|
||||
{ 0xf0ea, PSDRV_AGLGlyphNames + 803 }, /* bracketleftex */
|
||||
{ 0xf0eb, PSDRV_AGLGlyphNames + 802 }, /* bracketleftbt */
|
||||
{ 0xf0ec, PSDRV_AGLGlyphNames + 796 }, /* bracelefttp */
|
||||
{ 0xf0ed, PSDRV_AGLGlyphNames + 795 }, /* braceleftmid */
|
||||
{ 0xf0ee, PSDRV_AGLGlyphNames + 794 }, /* braceleftbt */
|
||||
{ 0xf0ef, PSDRV_AGLGlyphNames + 792 }, /* braceex */
|
||||
{ 0xf0f1, PSDRV_AGLGlyphNames + 759 }, /* angleright */
|
||||
{ 0xf0f2, PSDRV_AGLGlyphNames + 974 }, /* integral */
|
||||
{ 0xf0f3, PSDRV_AGLGlyphNames + 977 }, /* integraltp */
|
||||
{ 0xf0f4, PSDRV_AGLGlyphNames + 976 }, /* integralex */
|
||||
{ 0xf0f5, PSDRV_AGLGlyphNames + 975 }, /* integralbt */
|
||||
{ 0xf0f6, PSDRV_AGLGlyphNames + 1092 }, /* parenrighttp */
|
||||
{ 0xf0f7, PSDRV_AGLGlyphNames + 1089 }, /* parenrightex */
|
||||
{ 0xf0f8, PSDRV_AGLGlyphNames + 1088 }, /* parenrightbt */
|
||||
{ 0xf0f9, PSDRV_AGLGlyphNames + 808 }, /* bracketrighttp */
|
||||
{ 0xf0fa, PSDRV_AGLGlyphNames + 807 }, /* bracketrightex */
|
||||
{ 0xf0fb, PSDRV_AGLGlyphNames + 806 }, /* bracketrightbt */
|
||||
{ 0xf0fc, PSDRV_AGLGlyphNames + 800 }, /* bracerighttp */
|
||||
{ 0xf0fd, PSDRV_AGLGlyphNames + 799 }, /* bracerightmid */
|
||||
{ 0xf0fe, PSDRV_AGLGlyphNames + 798 } /* bracerightbt */
|
||||
};
|
||||
|
||||
static UNICODEVECTOR enc_Symbol = { 188, ug_Symbol };
|
||||
|
||||
|
||||
/*
|
||||
* Glyph metrics
|
||||
*/
|
||||
|
@ -1054,6 +855,5 @@ AFM PSDRV_Symbol =
|
|||
494, 494, 0 /* CharWidths[253] - CharWidths[255] */
|
||||
},
|
||||
188, /* NumofMetrics */
|
||||
met_Symbol, /* Metrics */
|
||||
&enc_Symbol /* Encoding */
|
||||
met_Symbol /* Metrics */
|
||||
};
|
||||
|
|
|
@ -1013,6 +1013,5 @@ AFM PSDRV_Times_Bold =
|
|||
500, 722, 556, 0, 0, 0, 0 /* CharWidths[249] - CharWidths[255] */
|
||||
},
|
||||
228, /* NumofMetrics */
|
||||
met_Times_Bold, /* Metrics */
|
||||
&PSDRV_AdobeGlyphList /* Encoding */
|
||||
met_Times_Bold /* Metrics */
|
||||
};
|
||||
|
|
|
@ -1013,6 +1013,5 @@ AFM PSDRV_Times_BoldItalic =
|
|||
500, 722, 500, 0, 0, 0, 0 /* CharWidths[249] - CharWidths[255] */
|
||||
},
|
||||
228, /* NumofMetrics */
|
||||
met_Times_BoldItalic, /* Metrics */
|
||||
&PSDRV_AdobeGlyphList /* Encoding */
|
||||
met_Times_BoldItalic /* Metrics */
|
||||
};
|
||||
|
|
|
@ -1013,6 +1013,5 @@ AFM PSDRV_Times_Italic =
|
|||
500, 0, 0, 0, 0 /* CharWidths[251] - CharWidths[255] */
|
||||
},
|
||||
228, /* NumofMetrics */
|
||||
met_Times_Italic, /* Metrics */
|
||||
&PSDRV_AdobeGlyphList /* Encoding */
|
||||
met_Times_Italic /* Metrics */
|
||||
};
|
||||
|
|
|
@ -1013,6 +1013,5 @@ AFM PSDRV_Times_Roman =
|
|||
500, 722, 500, 0, 0, 0, 0 /* CharWidths[249] - CharWidths[255] */
|
||||
},
|
||||
228, /* NumofMetrics */
|
||||
met_Times_Roman, /* Metrics */
|
||||
&PSDRV_AdobeGlyphList /* Encoding */
|
||||
met_Times_Roman /* Metrics */
|
||||
};
|
||||
|
|
|
@ -1013,6 +1013,5 @@ AFM PSDRV_ZapfChancery_MediumItalic =
|
|||
440, 560, 420, 0, 0, 0, 0 /* CharWidths[249] - CharWidths[255] */
|
||||
},
|
||||
228, /* NumofMetrics */
|
||||
met_ZapfChancery_MediumItalic, /* Metrics */
|
||||
&PSDRV_AdobeGlyphList /* Encoding */
|
||||
met_ZapfChancery_MediumItalic /* Metrics */
|
||||
};
|
||||
|
|
|
@ -19,205 +19,6 @@
|
|||
#include "psdrv.h"
|
||||
|
||||
|
||||
/*
|
||||
* FontSpecific encoding vector
|
||||
*/
|
||||
|
||||
static const UNICODEGLYPH ug_ZapfDingbats[188] =
|
||||
{
|
||||
{ 0xf020, PSDRV_AGLGlyphNames + 1169 }, /* space */
|
||||
{ 0xf021, PSDRV_AGLGlyphNames + 296 }, /* a1 */
|
||||
{ 0xf022, PSDRV_AGLGlyphNames + 403 }, /* a2 */
|
||||
{ 0xf023, PSDRV_AGLGlyphNames + 407 }, /* a202 */
|
||||
{ 0xf024, PSDRV_AGLGlyphNames + 421 }, /* a3 */
|
||||
{ 0xf025, PSDRV_AGLGlyphNames + 432 }, /* a4 */
|
||||
{ 0xf026, PSDRV_AGLGlyphNames + 443 }, /* a5 */
|
||||
{ 0xf027, PSDRV_AGLGlyphNames + 314 }, /* a119 */
|
||||
{ 0xf028, PSDRV_AGLGlyphNames + 313 }, /* a118 */
|
||||
{ 0xf029, PSDRV_AGLGlyphNames + 312 }, /* a117 */
|
||||
{ 0xf02a, PSDRV_AGLGlyphNames + 308 }, /* a11 */
|
||||
{ 0xf02b, PSDRV_AGLGlyphNames + 315 }, /* a12 */
|
||||
{ 0xf02c, PSDRV_AGLGlyphNames + 326 }, /* a13 */
|
||||
{ 0xf02d, PSDRV_AGLGlyphNames + 337 }, /* a14 */
|
||||
{ 0xf02e, PSDRV_AGLGlyphNames + 348 }, /* a15 */
|
||||
{ 0xf02f, PSDRV_AGLGlyphNames + 359 }, /* a16 */
|
||||
{ 0xf030, PSDRV_AGLGlyphNames + 303 }, /* a105 */
|
||||
{ 0xf031, PSDRV_AGLGlyphNames + 370 }, /* a17 */
|
||||
{ 0xf032, PSDRV_AGLGlyphNames + 381 }, /* a18 */
|
||||
{ 0xf033, PSDRV_AGLGlyphNames + 392 }, /* a19 */
|
||||
{ 0xf034, PSDRV_AGLGlyphNames + 404 }, /* a20 */
|
||||
{ 0xf035, PSDRV_AGLGlyphNames + 412 }, /* a21 */
|
||||
{ 0xf036, PSDRV_AGLGlyphNames + 413 }, /* a22 */
|
||||
{ 0xf037, PSDRV_AGLGlyphNames + 414 }, /* a23 */
|
||||
{ 0xf038, PSDRV_AGLGlyphNames + 415 }, /* a24 */
|
||||
{ 0xf039, PSDRV_AGLGlyphNames + 416 }, /* a25 */
|
||||
{ 0xf03a, PSDRV_AGLGlyphNames + 417 }, /* a26 */
|
||||
{ 0xf03b, PSDRV_AGLGlyphNames + 418 }, /* a27 */
|
||||
{ 0xf03c, PSDRV_AGLGlyphNames + 419 }, /* a28 */
|
||||
{ 0xf03d, PSDRV_AGLGlyphNames + 454 }, /* a6 */
|
||||
{ 0xf03e, PSDRV_AGLGlyphNames + 465 }, /* a7 */
|
||||
{ 0xf03f, PSDRV_AGLGlyphNames + 476 }, /* a8 */
|
||||
{ 0xf040, PSDRV_AGLGlyphNames + 486 }, /* a9 */
|
||||
{ 0xf041, PSDRV_AGLGlyphNames + 297 }, /* a10 */
|
||||
{ 0xf042, PSDRV_AGLGlyphNames + 420 }, /* a29 */
|
||||
{ 0xf043, PSDRV_AGLGlyphNames + 422 }, /* a30 */
|
||||
{ 0xf044, PSDRV_AGLGlyphNames + 423 }, /* a31 */
|
||||
{ 0xf045, PSDRV_AGLGlyphNames + 424 }, /* a32 */
|
||||
{ 0xf046, PSDRV_AGLGlyphNames + 425 }, /* a33 */
|
||||
{ 0xf047, PSDRV_AGLGlyphNames + 426 }, /* a34 */
|
||||
{ 0xf048, PSDRV_AGLGlyphNames + 427 }, /* a35 */
|
||||
{ 0xf049, PSDRV_AGLGlyphNames + 428 }, /* a36 */
|
||||
{ 0xf04a, PSDRV_AGLGlyphNames + 429 }, /* a37 */
|
||||
{ 0xf04b, PSDRV_AGLGlyphNames + 430 }, /* a38 */
|
||||
{ 0xf04c, PSDRV_AGLGlyphNames + 431 }, /* a39 */
|
||||
{ 0xf04d, PSDRV_AGLGlyphNames + 433 }, /* a40 */
|
||||
{ 0xf04e, PSDRV_AGLGlyphNames + 434 }, /* a41 */
|
||||
{ 0xf04f, PSDRV_AGLGlyphNames + 435 }, /* a42 */
|
||||
{ 0xf050, PSDRV_AGLGlyphNames + 436 }, /* a43 */
|
||||
{ 0xf051, PSDRV_AGLGlyphNames + 437 }, /* a44 */
|
||||
{ 0xf052, PSDRV_AGLGlyphNames + 438 }, /* a45 */
|
||||
{ 0xf053, PSDRV_AGLGlyphNames + 439 }, /* a46 */
|
||||
{ 0xf054, PSDRV_AGLGlyphNames + 440 }, /* a47 */
|
||||
{ 0xf055, PSDRV_AGLGlyphNames + 441 }, /* a48 */
|
||||
{ 0xf056, PSDRV_AGLGlyphNames + 442 }, /* a49 */
|
||||
{ 0xf057, PSDRV_AGLGlyphNames + 444 }, /* a50 */
|
||||
{ 0xf058, PSDRV_AGLGlyphNames + 445 }, /* a51 */
|
||||
{ 0xf059, PSDRV_AGLGlyphNames + 446 }, /* a52 */
|
||||
{ 0xf05a, PSDRV_AGLGlyphNames + 447 }, /* a53 */
|
||||
{ 0xf05b, PSDRV_AGLGlyphNames + 448 }, /* a54 */
|
||||
{ 0xf05c, PSDRV_AGLGlyphNames + 449 }, /* a55 */
|
||||
{ 0xf05d, PSDRV_AGLGlyphNames + 450 }, /* a56 */
|
||||
{ 0xf05e, PSDRV_AGLGlyphNames + 451 }, /* a57 */
|
||||
{ 0xf05f, PSDRV_AGLGlyphNames + 452 }, /* a58 */
|
||||
{ 0xf060, PSDRV_AGLGlyphNames + 453 }, /* a59 */
|
||||
{ 0xf061, PSDRV_AGLGlyphNames + 455 }, /* a60 */
|
||||
{ 0xf062, PSDRV_AGLGlyphNames + 456 }, /* a61 */
|
||||
{ 0xf063, PSDRV_AGLGlyphNames + 457 }, /* a62 */
|
||||
{ 0xf064, PSDRV_AGLGlyphNames + 458 }, /* a63 */
|
||||
{ 0xf065, PSDRV_AGLGlyphNames + 459 }, /* a64 */
|
||||
{ 0xf066, PSDRV_AGLGlyphNames + 460 }, /* a65 */
|
||||
{ 0xf067, PSDRV_AGLGlyphNames + 461 }, /* a66 */
|
||||
{ 0xf068, PSDRV_AGLGlyphNames + 462 }, /* a67 */
|
||||
{ 0xf069, PSDRV_AGLGlyphNames + 463 }, /* a68 */
|
||||
{ 0xf06a, PSDRV_AGLGlyphNames + 464 }, /* a69 */
|
||||
{ 0xf06b, PSDRV_AGLGlyphNames + 466 }, /* a70 */
|
||||
{ 0xf06c, PSDRV_AGLGlyphNames + 467 }, /* a71 */
|
||||
{ 0xf06d, PSDRV_AGLGlyphNames + 468 }, /* a72 */
|
||||
{ 0xf06e, PSDRV_AGLGlyphNames + 469 }, /* a73 */
|
||||
{ 0xf06f, PSDRV_AGLGlyphNames + 470 }, /* a74 */
|
||||
{ 0xf070, PSDRV_AGLGlyphNames + 408 }, /* a203 */
|
||||
{ 0xf071, PSDRV_AGLGlyphNames + 471 }, /* a75 */
|
||||
{ 0xf072, PSDRV_AGLGlyphNames + 409 }, /* a204 */
|
||||
{ 0xf073, PSDRV_AGLGlyphNames + 472 }, /* a76 */
|
||||
{ 0xf074, PSDRV_AGLGlyphNames + 473 }, /* a77 */
|
||||
{ 0xf075, PSDRV_AGLGlyphNames + 474 }, /* a78 */
|
||||
{ 0xf076, PSDRV_AGLGlyphNames + 475 }, /* a79 */
|
||||
{ 0xf077, PSDRV_AGLGlyphNames + 477 }, /* a81 */
|
||||
{ 0xf078, PSDRV_AGLGlyphNames + 478 }, /* a82 */
|
||||
{ 0xf079, PSDRV_AGLGlyphNames + 479 }, /* a83 */
|
||||
{ 0xf07a, PSDRV_AGLGlyphNames + 480 }, /* a84 */
|
||||
{ 0xf07b, PSDRV_AGLGlyphNames + 494 }, /* a97 */
|
||||
{ 0xf07c, PSDRV_AGLGlyphNames + 495 }, /* a98 */
|
||||
{ 0xf07d, PSDRV_AGLGlyphNames + 496 }, /* a99 */
|
||||
{ 0xf07e, PSDRV_AGLGlyphNames + 298 }, /* a100 */
|
||||
{ 0xf0a1, PSDRV_AGLGlyphNames + 299 }, /* a101 */
|
||||
{ 0xf0a2, PSDRV_AGLGlyphNames + 300 }, /* a102 */
|
||||
{ 0xf0a3, PSDRV_AGLGlyphNames + 301 }, /* a103 */
|
||||
{ 0xf0a4, PSDRV_AGLGlyphNames + 302 }, /* a104 */
|
||||
{ 0xf0a5, PSDRV_AGLGlyphNames + 304 }, /* a106 */
|
||||
{ 0xf0a6, PSDRV_AGLGlyphNames + 305 }, /* a107 */
|
||||
{ 0xf0a7, PSDRV_AGLGlyphNames + 306 }, /* a108 */
|
||||
{ 0xf0a8, PSDRV_AGLGlyphNames + 311 }, /* a112 */
|
||||
{ 0xf0a9, PSDRV_AGLGlyphNames + 310 }, /* a111 */
|
||||
{ 0xf0aa, PSDRV_AGLGlyphNames + 309 }, /* a110 */
|
||||
{ 0xf0ab, PSDRV_AGLGlyphNames + 307 }, /* a109 */
|
||||
{ 0xf0ac, PSDRV_AGLGlyphNames + 316 }, /* a120 */
|
||||
{ 0xf0ad, PSDRV_AGLGlyphNames + 317 }, /* a121 */
|
||||
{ 0xf0ae, PSDRV_AGLGlyphNames + 318 }, /* a122 */
|
||||
{ 0xf0af, PSDRV_AGLGlyphNames + 319 }, /* a123 */
|
||||
{ 0xf0b0, PSDRV_AGLGlyphNames + 320 }, /* a124 */
|
||||
{ 0xf0b1, PSDRV_AGLGlyphNames + 321 }, /* a125 */
|
||||
{ 0xf0b2, PSDRV_AGLGlyphNames + 322 }, /* a126 */
|
||||
{ 0xf0b3, PSDRV_AGLGlyphNames + 323 }, /* a127 */
|
||||
{ 0xf0b4, PSDRV_AGLGlyphNames + 324 }, /* a128 */
|
||||
{ 0xf0b5, PSDRV_AGLGlyphNames + 325 }, /* a129 */
|
||||
{ 0xf0b6, PSDRV_AGLGlyphNames + 327 }, /* a130 */
|
||||
{ 0xf0b7, PSDRV_AGLGlyphNames + 328 }, /* a131 */
|
||||
{ 0xf0b8, PSDRV_AGLGlyphNames + 329 }, /* a132 */
|
||||
{ 0xf0b9, PSDRV_AGLGlyphNames + 330 }, /* a133 */
|
||||
{ 0xf0ba, PSDRV_AGLGlyphNames + 331 }, /* a134 */
|
||||
{ 0xf0bb, PSDRV_AGLGlyphNames + 332 }, /* a135 */
|
||||
{ 0xf0bc, PSDRV_AGLGlyphNames + 333 }, /* a136 */
|
||||
{ 0xf0bd, PSDRV_AGLGlyphNames + 334 }, /* a137 */
|
||||
{ 0xf0be, PSDRV_AGLGlyphNames + 335 }, /* a138 */
|
||||
{ 0xf0bf, PSDRV_AGLGlyphNames + 336 }, /* a139 */
|
||||
{ 0xf0c0, PSDRV_AGLGlyphNames + 338 }, /* a140 */
|
||||
{ 0xf0c1, PSDRV_AGLGlyphNames + 339 }, /* a141 */
|
||||
{ 0xf0c2, PSDRV_AGLGlyphNames + 340 }, /* a142 */
|
||||
{ 0xf0c3, PSDRV_AGLGlyphNames + 341 }, /* a143 */
|
||||
{ 0xf0c4, PSDRV_AGLGlyphNames + 342 }, /* a144 */
|
||||
{ 0xf0c5, PSDRV_AGLGlyphNames + 343 }, /* a145 */
|
||||
{ 0xf0c6, PSDRV_AGLGlyphNames + 344 }, /* a146 */
|
||||
{ 0xf0c7, PSDRV_AGLGlyphNames + 345 }, /* a147 */
|
||||
{ 0xf0c8, PSDRV_AGLGlyphNames + 346 }, /* a148 */
|
||||
{ 0xf0c9, PSDRV_AGLGlyphNames + 347 }, /* a149 */
|
||||
{ 0xf0ca, PSDRV_AGLGlyphNames + 349 }, /* a150 */
|
||||
{ 0xf0cb, PSDRV_AGLGlyphNames + 350 }, /* a151 */
|
||||
{ 0xf0cc, PSDRV_AGLGlyphNames + 351 }, /* a152 */
|
||||
{ 0xf0cd, PSDRV_AGLGlyphNames + 352 }, /* a153 */
|
||||
{ 0xf0ce, PSDRV_AGLGlyphNames + 353 }, /* a154 */
|
||||
{ 0xf0cf, PSDRV_AGLGlyphNames + 354 }, /* a155 */
|
||||
{ 0xf0d0, PSDRV_AGLGlyphNames + 355 }, /* a156 */
|
||||
{ 0xf0d1, PSDRV_AGLGlyphNames + 356 }, /* a157 */
|
||||
{ 0xf0d2, PSDRV_AGLGlyphNames + 357 }, /* a158 */
|
||||
{ 0xf0d3, PSDRV_AGLGlyphNames + 358 }, /* a159 */
|
||||
{ 0xf0d4, PSDRV_AGLGlyphNames + 360 }, /* a160 */
|
||||
{ 0xf0d5, PSDRV_AGLGlyphNames + 361 }, /* a161 */
|
||||
{ 0xf0d6, PSDRV_AGLGlyphNames + 363 }, /* a163 */
|
||||
{ 0xf0d7, PSDRV_AGLGlyphNames + 364 }, /* a164 */
|
||||
{ 0xf0d8, PSDRV_AGLGlyphNames + 399 }, /* a196 */
|
||||
{ 0xf0d9, PSDRV_AGLGlyphNames + 365 }, /* a165 */
|
||||
{ 0xf0da, PSDRV_AGLGlyphNames + 395 }, /* a192 */
|
||||
{ 0xf0db, PSDRV_AGLGlyphNames + 366 }, /* a166 */
|
||||
{ 0xf0dc, PSDRV_AGLGlyphNames + 367 }, /* a167 */
|
||||
{ 0xf0dd, PSDRV_AGLGlyphNames + 368 }, /* a168 */
|
||||
{ 0xf0de, PSDRV_AGLGlyphNames + 369 }, /* a169 */
|
||||
{ 0xf0df, PSDRV_AGLGlyphNames + 371 }, /* a170 */
|
||||
{ 0xf0e0, PSDRV_AGLGlyphNames + 372 }, /* a171 */
|
||||
{ 0xf0e1, PSDRV_AGLGlyphNames + 373 }, /* a172 */
|
||||
{ 0xf0e2, PSDRV_AGLGlyphNames + 374 }, /* a173 */
|
||||
{ 0xf0e3, PSDRV_AGLGlyphNames + 362 }, /* a162 */
|
||||
{ 0xf0e4, PSDRV_AGLGlyphNames + 375 }, /* a174 */
|
||||
{ 0xf0e5, PSDRV_AGLGlyphNames + 376 }, /* a175 */
|
||||
{ 0xf0e6, PSDRV_AGLGlyphNames + 377 }, /* a176 */
|
||||
{ 0xf0e7, PSDRV_AGLGlyphNames + 378 }, /* a177 */
|
||||
{ 0xf0e8, PSDRV_AGLGlyphNames + 379 }, /* a178 */
|
||||
{ 0xf0e9, PSDRV_AGLGlyphNames + 380 }, /* a179 */
|
||||
{ 0xf0ea, PSDRV_AGLGlyphNames + 396 }, /* a193 */
|
||||
{ 0xf0eb, PSDRV_AGLGlyphNames + 382 }, /* a180 */
|
||||
{ 0xf0ec, PSDRV_AGLGlyphNames + 402 }, /* a199 */
|
||||
{ 0xf0ed, PSDRV_AGLGlyphNames + 383 }, /* a181 */
|
||||
{ 0xf0ee, PSDRV_AGLGlyphNames + 405 }, /* a200 */
|
||||
{ 0xf0ef, PSDRV_AGLGlyphNames + 384 }, /* a182 */
|
||||
{ 0xf0f1, PSDRV_AGLGlyphNames + 406 }, /* a201 */
|
||||
{ 0xf0f2, PSDRV_AGLGlyphNames + 385 }, /* a183 */
|
||||
{ 0xf0f3, PSDRV_AGLGlyphNames + 386 }, /* a184 */
|
||||
{ 0xf0f4, PSDRV_AGLGlyphNames + 400 }, /* a197 */
|
||||
{ 0xf0f5, PSDRV_AGLGlyphNames + 387 }, /* a185 */
|
||||
{ 0xf0f6, PSDRV_AGLGlyphNames + 397 }, /* a194 */
|
||||
{ 0xf0f7, PSDRV_AGLGlyphNames + 401 }, /* a198 */
|
||||
{ 0xf0f8, PSDRV_AGLGlyphNames + 388 }, /* a186 */
|
||||
{ 0xf0f9, PSDRV_AGLGlyphNames + 398 }, /* a195 */
|
||||
{ 0xf0fa, PSDRV_AGLGlyphNames + 389 }, /* a187 */
|
||||
{ 0xf0fb, PSDRV_AGLGlyphNames + 390 }, /* a188 */
|
||||
{ 0xf0fc, PSDRV_AGLGlyphNames + 391 }, /* a189 */
|
||||
{ 0xf0fd, PSDRV_AGLGlyphNames + 393 }, /* a190 */
|
||||
{ 0xf0fe, PSDRV_AGLGlyphNames + 394 } /* a191 */
|
||||
};
|
||||
|
||||
static UNICODEVECTOR enc_ZapfDingbats = { 188, ug_ZapfDingbats };
|
||||
|
||||
|
||||
/*
|
||||
* Glyph metrics
|
||||
*/
|
||||
|
@ -1054,6 +855,5 @@ AFM PSDRV_ZapfDingbats =
|
|||
918, 0 /* CharWidths[254] - CharWidths[255] */
|
||||
},
|
||||
188, /* NumofMetrics */
|
||||
met_ZapfDingbats, /* Metrics */
|
||||
&enc_ZapfDingbats /* Encoding */
|
||||
met_ZapfDingbats /* Metrics */
|
||||
};
|
||||
|
|
|
@ -85,7 +85,6 @@ typedef struct _tagAFM {
|
|||
float CharWidths[256];
|
||||
int NumofMetrics;
|
||||
AFMMETRICS *Metrics;
|
||||
UNICODEVECTOR *Encoding;
|
||||
} AFM; /* CharWidths is a shortcut to the WX values of numbered glyphs */
|
||||
|
||||
/* Note no 'next' in AFM. Use AFMLISTENTRY as a container. This allow more than
|
||||
|
|
|
@ -267,8 +267,6 @@ static void FreeAFM(AFM *afm)
|
|||
HeapFree(PSDRV_Heap, 0, afm->EncodingScheme);
|
||||
if (afm->Metrics != NULL)
|
||||
HeapFree(PSDRV_Heap, 0, afm->Metrics);
|
||||
if (afm->Encoding != NULL)
|
||||
HeapFree(PSDRV_Heap, 0, afm->Encoding);
|
||||
|
||||
HeapFree(PSDRV_Heap, 0, afm);
|
||||
}
|
||||
|
@ -339,14 +337,12 @@ static BOOL ReadMetricsTables(AFM *afm)
|
|||
*
|
||||
* Reads metrics for each glyph in a TrueType font. Since FreeAFM will try to
|
||||
* free afm->Metrics and afm->Encoding if they are non-NULL, don't free them
|
||||
* in the event of an error. (FreeAFM depends on the fact that afm->Encoding
|
||||
* and its associated array of UNICODEGLYPHs are allocated as a single object.)
|
||||
* in the event of an error.
|
||||
*
|
||||
*/
|
||||
static BOOL ReadCharMetrics(AFM *afm)
|
||||
{
|
||||
FT_ULong charcode, index;
|
||||
UNICODEGLYPH *glyphs;
|
||||
|
||||
/*
|
||||
* There does not seem to be an easy way to get the number of characters
|
||||
|
@ -361,15 +357,9 @@ static BOOL ReadCharMetrics(AFM *afm)
|
|||
afm->NumofMetrics = index;
|
||||
|
||||
afm->Metrics = HeapAlloc(PSDRV_Heap, 0, index * sizeof(AFMMETRICS));
|
||||
afm->Encoding = HeapAlloc(PSDRV_Heap, 0, sizeof(UNICODEVECTOR) +
|
||||
index * sizeof(UNICODEGLYPH));
|
||||
if (afm->Metrics == NULL || afm->Encoding == NULL)
|
||||
if (afm->Metrics == NULL)
|
||||
return FALSE;
|
||||
|
||||
glyphs = (UNICODEGLYPH *)(afm->Encoding + 1);
|
||||
afm->Encoding->size = index;
|
||||
afm->Encoding->glyphs = glyphs;
|
||||
|
||||
for (charcode = 0, index = 0; charcode <= 65536; ++charcode)
|
||||
{
|
||||
FT_UInt glyph_index = FT_Get_Char_Index(face, charcode);
|
||||
|
@ -423,9 +413,6 @@ static BOOL ReadCharMetrics(AFM *afm)
|
|||
afm->Metrics[index].B.llx, afm->Metrics[index].B.lly,
|
||||
afm->Metrics[index].B.urx, afm->Metrics[index].B.ury);
|
||||
|
||||
glyphs[index].UV = charcode;
|
||||
glyphs[index].name = afm->Metrics[index].N;
|
||||
|
||||
if (charcode == 0x0048) /* 'H' */
|
||||
afm->CapHeight = PSUnits(bbox.yMax);
|
||||
if (charcode == 0x0078) /* 'x' */
|
||||
|
@ -535,7 +522,7 @@ static BOOL ReadTrueTypeFile(LPCSTR filename)
|
|||
return FALSE;
|
||||
}
|
||||
|
||||
if (afm->Encoding == NULL) /* last element to be set */
|
||||
if (afm->Metrics == NULL) /* last element to be set */
|
||||
{
|
||||
FreeAFM(afm);
|
||||
return TRUE;
|
||||
|
|
Loading…
Reference in New Issue