2211 {
2212 unsigned long lineno = 0;
2214
2217
2218
2221
2226 p->memory = extmemory;
2227
2229
2231 (
void *)
p, &lineno );
2234
2236 {
2237
2238
2239
2241 p->font->monowidth =
p->font->bbx.width;
2242
2243
2244
2245 if (
p->cnt !=
p->font->glyphs_used +
p->font->unencoded_used )
2246 {
2248 p->font->glyphs_used +
p->font->unencoded_used ));
2249 p->font->modified = 1;
2250 }
2251
2252
2253
2254 if (
p->opts->correct_metrics != 0 &&
2255 (
p->font->glyphs_used > 0 ||
p->font->unencoded_used > 0 ) )
2256 {
2257 if (
p->maxrb -
p->minlb !=
p->font->bbx.width )
2258 {
2260 p->font->bbx.width,
p->maxrb -
p->minlb ));
2261 p->font->bbx.width = (
unsigned short)(
p->maxrb -
p->minlb );
2262 p->font->modified = 1;
2263 }
2264
2265 if (
p->font->bbx.x_offset !=
p->minlb )
2266 {
2268 p->font->bbx.x_offset,
p->minlb ));
2269 p->font->bbx.x_offset =
p->minlb;
2270 p->font->modified = 1;
2271 }
2272
2273 if (
p->font->bbx.ascent !=
p->maxas )
2274 {
2276 p->font->bbx.ascent,
p->maxas ));
2277 p->font->bbx.ascent =
p->maxas;
2278 p->font->modified = 1;
2279 }
2280
2281 if (
p->font->bbx.descent !=
p->maxds )
2282 {
2284 p->font->bbx.descent,
p->maxds ));
2285 p->font->bbx.descent =
p->maxds;
2286 p->font->bbx.y_offset = (
short)( -
p->maxds );
2287 p->font->modified = 1;
2288 }
2289
2290 if (
p->maxas +
p->maxds !=
p->font->bbx.height )
2291 {
2293 p->font->bbx.height,
p->maxas +
p->maxds ));
2294 p->font->bbx.height = (
unsigned short)(
p->maxas +
p->maxds );
2295 }
2296
2299 }
2300 }
2301
2303 {
2304
2306 {
2307
2311 }
2312 else
2313 {
2314
2318 }
2319 }
2320
2322 {
2323
2325
2326 if (
p->font->comments_len > 0 )
2327 {
2329 p->font->comments_len,
2330 p->font->comments_len + 1 ) )
2332
2333 p->font->comments[
p->font->comments_len] = 0;
2334 }
2335 }
2338
2340
2343 {
2345
2347
2350 }
2351
2353
2356
2358
2360
2362 }
static void _bdf_list_init(_bdf_list_t *list, FT_Memory memory)
static const bdf_options_t _bdf_opts
static FT_Error _bdf_readstream(FT_Stream stream, _bdf_line_func_t callback, void *client_data, unsigned long *lno)
static FT_Error _bdf_parse_start(char *line, unsigned long linelen, unsigned long lineno, void *call_data, void *client_data)
static void _bdf_list_done(_bdf_list_t *list)
bdf_free_font(bdf_font_t *font)
unsigned short(__cdecl typeof(TIFFCurrentDirectory))(struct tiff *)
#define FT_ERROR(varformat)
#define FT_TRACE2(varformat)
#define FT_RENEW_ARRAY(ptr, curcnt, newcnt)