wineps.drv: Replace inline static with static inline.
[wine] / dlls / wineps.drv / data / Helvetica.c
1 /*******************************************************************************
2  *
3  *      Font metric data for Helvetica
4  *
5  *      Copyright 2001 Ian Pilcher
6  *
7  *
8  *      See dlls/wineps/data/COPYRIGHTS for font copyright information.
9  *
10  */
11
12 #include "psdrv.h"
13 #include "data/agl.h"
14
15
16 /*
17  *  Glyph metrics
18  */
19
20 static const AFMMETRICS metrics[228] =
21 {
22     {  32, 0x0020,  278, GN_space },
23     {  33, 0x0021,  278, GN_exclam },
24     {  34, 0x0022,  355, GN_quotedbl },
25     {  35, 0x0023,  556, GN_numbersign },
26     {  36, 0x0024,  556, GN_dollar },
27     {  37, 0x0025,  889, GN_percent },
28     {  38, 0x0026,  667, GN_ampersand },
29     { 169, 0x0027,  191, GN_quotesingle },
30     {  40, 0x0028,  333, GN_parenleft },
31     {  41, 0x0029,  333, GN_parenright },
32     {  42, 0x002a,  389, GN_asterisk },
33     {  43, 0x002b,  584, GN_plus },
34     {  44, 0x002c,  278, GN_comma },
35     {  45, 0x002d,  333, GN_hyphen },
36     {  46, 0x002e,  278, GN_period },
37     {  47, 0x002f,  278, GN_slash },
38     {  48, 0x0030,  556, GN_zero },
39     {  49, 0x0031,  556, GN_one },
40     {  50, 0x0032,  556, GN_two },
41     {  51, 0x0033,  556, GN_three },
42     {  52, 0x0034,  556, GN_four },
43     {  53, 0x0035,  556, GN_five },
44     {  54, 0x0036,  556, GN_six },
45     {  55, 0x0037,  556, GN_seven },
46     {  56, 0x0038,  556, GN_eight },
47     {  57, 0x0039,  556, GN_nine },
48     {  58, 0x003a,  278, GN_colon },
49     {  59, 0x003b,  278, GN_semicolon },
50     {  60, 0x003c,  584, GN_less },
51     {  61, 0x003d,  584, GN_equal },
52     {  62, 0x003e,  584, GN_greater },
53     {  63, 0x003f,  556, GN_question },
54     {  64, 0x0040, 1015, GN_at },
55     {  65, 0x0041,  667, GN_A },
56     {  66, 0x0042,  667, GN_B },
57     {  67, 0x0043,  722, GN_C },
58     {  68, 0x0044,  722, GN_D },
59     {  69, 0x0045,  667, GN_E },
60     {  70, 0x0046,  611, GN_F },
61     {  71, 0x0047,  778, GN_G },
62     {  72, 0x0048,  722, GN_H },
63     {  73, 0x0049,  278, GN_I },
64     {  74, 0x004a,  500, GN_J },
65     {  75, 0x004b,  667, GN_K },
66     {  76, 0x004c,  556, GN_L },
67     {  77, 0x004d,  833, GN_M },
68     {  78, 0x004e,  722, GN_N },
69     {  79, 0x004f,  778, GN_O },
70     {  80, 0x0050,  667, GN_P },
71     {  81, 0x0051,  778, GN_Q },
72     {  82, 0x0052,  722, GN_R },
73     {  83, 0x0053,  667, GN_S },
74     {  84, 0x0054,  611, GN_T },
75     {  85, 0x0055,  722, GN_U },
76     {  86, 0x0056,  667, GN_V },
77     {  87, 0x0057,  944, GN_W },
78     {  88, 0x0058,  667, GN_X },
79     {  89, 0x0059,  667, GN_Y },
80     {  90, 0x005a,  611, GN_Z },
81     {  91, 0x005b,  278, GN_bracketleft },
82     {  92, 0x005c,  278, GN_backslash },
83     {  93, 0x005d,  278, GN_bracketright },
84     {  94, 0x005e,  469, GN_asciicircum },
85     {  95, 0x005f,  556, GN_underscore },
86     { 193, 0x0060,  333, GN_grave },
87     {  97, 0x0061,  556, GN_a },
88     {  98, 0x0062,  556, GN_b },
89     {  99, 0x0063,  500, GN_c },
90     { 100, 0x0064,  556, GN_d },
91     { 101, 0x0065,  556, GN_e },
92     { 102, 0x0066,  278, GN_f },
93     { 103, 0x0067,  556, GN_g },
94     { 104, 0x0068,  556, GN_h },
95     { 105, 0x0069,  222, GN_i },
96     { 106, 0x006a,  222, GN_j },
97     { 107, 0x006b,  500, GN_k },
98     { 108, 0x006c,  222, GN_l },
99     { 109, 0x006d,  833, GN_m },
100     { 110, 0x006e,  556, GN_n },
101     { 111, 0x006f,  556, GN_o },
102     { 112, 0x0070,  556, GN_p },
103     { 113, 0x0071,  556, GN_q },
104     { 114, 0x0072,  333, GN_r },
105     { 115, 0x0073,  500, GN_s },
106     { 116, 0x0074,  278, GN_t },
107     { 117, 0x0075,  556, GN_u },
108     { 118, 0x0076,  500, GN_v },
109     { 119, 0x0077,  722, GN_w },
110     { 120, 0x0078,  500, GN_x },
111     { 121, 0x0079,  500, GN_y },
112     { 122, 0x007a,  500, GN_z },
113     { 123, 0x007b,  334, GN_braceleft },
114     { 124, 0x007c,  260, GN_bar },
115     { 125, 0x007d,  334, GN_braceright },
116     { 126, 0x007e,  584, GN_asciitilde },
117     { 161, 0x00a1,  333, GN_exclamdown },
118     { 162, 0x00a2,  556, GN_cent },
119     { 163, 0x00a3,  556, GN_sterling },
120     { 168, 0x00a4,  556, GN_currency },
121     { 165, 0x00a5,  556, GN_yen },
122     {  -1, 0x00a6,  260, GN_brokenbar },
123     { 167, 0x00a7,  556, GN_section },
124     { 200, 0x00a8,  333, GN_dieresis },
125     {  -1, 0x00a9,  737, GN_copyright },
126     { 227, 0x00aa,  370, GN_ordfeminine },
127     { 171, 0x00ab,  556, GN_guillemotleft },
128     {  -1, 0x00ac,  584, GN_logicalnot },
129     {  -1, 0x00ae,  737, GN_registered },
130     {  -1, 0x00b0,  400, GN_degree },
131     {  -1, 0x00b1,  584, GN_plusminus },
132     {  -1, 0x00b2,  333, GN_twosuperior },
133     {  -1, 0x00b3,  333, GN_threesuperior },
134     { 194, 0x00b4,  333, GN_acute },
135     { 182, 0x00b6,  537, GN_paragraph },
136     { 180, 0x00b7,  278, GN_periodcentered },
137     { 203, 0x00b8,  333, GN_cedilla },
138     {  -1, 0x00b9,  333, GN_onesuperior },
139     { 235, 0x00ba,  365, GN_ordmasculine },
140     { 187, 0x00bb,  556, GN_guillemotright },
141     {  -1, 0x00bc,  834, GN_onequarter },
142     {  -1, 0x00bd,  834, GN_onehalf },
143     {  -1, 0x00be,  834, GN_threequarters },
144     { 191, 0x00bf,  611, GN_questiondown },
145     {  -1, 0x00c0,  667, GN_Agrave },
146     {  -1, 0x00c1,  667, GN_Aacute },
147     {  -1, 0x00c2,  667, GN_Acircumflex },
148     {  -1, 0x00c3,  667, GN_Atilde },
149     {  -1, 0x00c4,  667, GN_Adieresis },
150     {  -1, 0x00c5,  667, GN_Aring },
151     { 225, 0x00c6, 1000, GN_AE },
152     {  -1, 0x00c7,  722, GN_Ccedilla },
153     {  -1, 0x00c8,  667, GN_Egrave },
154     {  -1, 0x00c9,  667, GN_Eacute },
155     {  -1, 0x00ca,  667, GN_Ecircumflex },
156     {  -1, 0x00cb,  667, GN_Edieresis },
157     {  -1, 0x00cc,  278, GN_Igrave },
158     {  -1, 0x00cd,  278, GN_Iacute },
159     {  -1, 0x00ce,  278, GN_Icircumflex },
160     {  -1, 0x00cf,  278, GN_Idieresis },
161     {  -1, 0x00d0,  722, GN_Eth },
162     {  -1, 0x00d1,  722, GN_Ntilde },
163     {  -1, 0x00d2,  778, GN_Ograve },
164     {  -1, 0x00d3,  778, GN_Oacute },
165     {  -1, 0x00d4,  778, GN_Ocircumflex },
166     {  -1, 0x00d5,  778, GN_Otilde },
167     {  -1, 0x00d6,  778, GN_Odieresis },
168     {  -1, 0x00d7,  584, GN_multiply },
169     { 233, 0x00d8,  778, GN_Oslash },
170     {  -1, 0x00d9,  722, GN_Ugrave },
171     {  -1, 0x00da,  722, GN_Uacute },
172     {  -1, 0x00db,  722, GN_Ucircumflex },
173     {  -1, 0x00dc,  722, GN_Udieresis },
174     {  -1, 0x00dd,  667, GN_Yacute },
175     {  -1, 0x00de,  667, GN_Thorn },
176     { 251, 0x00df,  611, GN_germandbls },
177     {  -1, 0x00e0,  556, GN_agrave },
178     {  -1, 0x00e1,  556, GN_aacute },
179     {  -1, 0x00e2,  556, GN_acircumflex },
180     {  -1, 0x00e3,  556, GN_atilde },
181     {  -1, 0x00e4,  556, GN_adieresis },
182     {  -1, 0x00e5,  556, GN_aring },
183     { 241, 0x00e6,  889, GN_ae },
184     {  -1, 0x00e7,  500, GN_ccedilla },
185     {  -1, 0x00e8,  556, GN_egrave },
186     {  -1, 0x00e9,  556, GN_eacute },
187     {  -1, 0x00ea,  556, GN_ecircumflex },
188     {  -1, 0x00eb,  556, GN_edieresis },
189     {  -1, 0x00ec,  278, GN_igrave },
190     {  -1, 0x00ed,  278, GN_iacute },
191     {  -1, 0x00ee,  278, GN_icircumflex },
192     {  -1, 0x00ef,  278, GN_idieresis },
193     {  -1, 0x00f0,  556, GN_eth },
194     {  -1, 0x00f1,  556, GN_ntilde },
195     {  -1, 0x00f2,  556, GN_ograve },
196     {  -1, 0x00f3,  556, GN_oacute },
197     {  -1, 0x00f4,  556, GN_ocircumflex },
198     {  -1, 0x00f5,  556, GN_otilde },
199     {  -1, 0x00f6,  556, GN_odieresis },
200     {  -1, 0x00f7,  584, GN_divide },
201     { 249, 0x00f8,  611, GN_oslash },
202     {  -1, 0x00f9,  556, GN_ugrave },
203     {  -1, 0x00fa,  556, GN_uacute },
204     {  -1, 0x00fb,  556, GN_ucircumflex },
205     {  -1, 0x00fc,  556, GN_udieresis },
206     {  -1, 0x00fd,  500, GN_yacute },
207     {  -1, 0x00fe,  556, GN_thorn },
208     {  -1, 0x00ff,  500, GN_ydieresis },
209     { 245, 0x0131,  278, GN_dotlessi },
210     { 232, 0x0141,  556, GN_Lslash },
211     { 248, 0x0142,  222, GN_lslash },
212     { 234, 0x0152, 1000, GN_OE },
213     { 250, 0x0153,  944, GN_oe },
214     {  -1, 0x0160,  667, GN_Scaron },
215     {  -1, 0x0161,  500, GN_scaron },
216     {  -1, 0x0178,  667, GN_Ydieresis },
217     {  -1, 0x017d,  611, GN_Zcaron },
218     {  -1, 0x017e,  500, GN_zcaron },
219     { 166, 0x0192,  556, GN_florin },
220     { 195, 0x02c6,  333, GN_circumflex },
221     { 207, 0x02c7,  333, GN_caron },
222     { 197, 0x02c9,  333, GN_macron },
223     { 198, 0x02d8,  333, GN_breve },
224     { 199, 0x02d9,  333, GN_dotaccent },
225     { 202, 0x02da,  333, GN_ring },
226     { 206, 0x02db,  333, GN_ogonek },
227     { 196, 0x02dc,  333, GN_tilde },
228     { 205, 0x02dd,  333, GN_hungarumlaut },
229     {  -1, 0x03bc,  556, GN_mu },
230     { 177, 0x2013,  556, GN_endash },
231     { 208, 0x2014, 1000, GN_emdash },
232     {  96, 0x2018,  222, GN_quoteleft },
233     {  39, 0x2019,  222, GN_quoteright },
234     { 184, 0x201a,  222, GN_quotesinglbase },
235     { 170, 0x201c,  333, GN_quotedblleft },
236     { 186, 0x201d,  333, GN_quotedblright },
237     { 185, 0x201e,  333, GN_quotedblbase },
238     { 178, 0x2020,  556, GN_dagger },
239     { 179, 0x2021,  556, GN_daggerdbl },
240     { 183, 0x2022,  350, GN_bullet },
241     { 188, 0x2026, 1000, GN_ellipsis },
242     { 189, 0x2030, 1000, GN_perthousand },
243     { 172, 0x2039,  333, GN_guilsinglleft },
244     { 173, 0x203a,  333, GN_guilsinglright },
245     {  -1, 0x2122, 1000, GN_trademark },
246     {  -1, 0x2212,  584, GN_minus },
247     { 164, 0x2215,  167, GN_fraction },
248     { 174, 0xfb01,  500, GN_fi },
249     { 175, 0xfb02,  500, GN_fl }
250 };
251
252
253 /*
254  *  Font metrics
255  */
256
257 const AFM PSDRV_Helvetica =
258 {
259     "Helvetica",                            /* FontName */
260     "Helvetica",                            /* FullName */
261     "Helvetica",                            /* FamilyName */
262     "AdobeStandardEncoding",                /* EncodingScheme */
263     FW_NORMAL,                              /* Weight */
264     0,                                      /* ItalicAngle */
265     FALSE,                                  /* IsFixedPitch */
266     -100,                                   /* UnderlinePosition */
267     50,                                     /* UnderlineThickness */
268     { -166, -225, 1000, 931 },              /* FontBBox */
269     718,                                    /* Ascender */
270     -207,                                   /* Descender */
271     {
272         1000,                               /* WinMetrics.usUnitsPerEm */
273         905,                                /* WinMetrics.sAscender */
274         -212,                               /* WinMetrics.sDescender */
275         33,                                 /* WinMetrics.sLineGap */
276         441,                                /* WinMetrics.sAvgCharWidth */
277         728,                                /* WinMetrics.sTypoAscender */
278         -210,                               /* WinMetrics.sTypoDescender */
279         150,                                /* WinMetrics.sTypoLineGap */
280         905,                                /* WinMetrics.usWinAscent */
281         212                                 /* WinMetrics.usWinDescent */
282     },
283     228,                                    /* NumofMetrics */
284     metrics                                 /* Metrics */
285 };