[0001] [0002] [0003] [0004] [0005] [0006] [0007] [0008] [0009] [0010] [0011] [0012] [0013] [0014] [0015] [0016] [0017] [0018] [0019] [0020] [0021] [0022] [0023] [0024] [0025] [0026] [0027] [0028] [0029] [0030] [0031]
/* * routines for handling text subrecords and font information. */ struct bktxt_font_def { int fontno; /* font number */ char *name; /* asciz name of font */ /* Following are for Parse out versions for fields in name */ char *foundry; /* Font designer (ADOBE) */ char *typeface; /* Typeface family (Helvtica, Courier, etc */ char *weight; /* (Book, Demi, Medium, Bold) */ char *style; /* 'R'oman, 'I'talic, 'O'blique */ char *width; /* Normal, Wide, Double Wide */ char *id; /* ??? */ int pixel_size; /* -1 indicates "*" */ int point_size; /* 100, 120, 140, 180 */ int res_x, res_y; /* Dot/inch */ char *spacing; /* 'P'proportional, 'M'onospace, 'C'har-cell */ int average_width; /* Average width of characters (-1 means unknown) */ char *encoding; /* ISO8859-1 is LATIN1 */ }; typedef struct bktxt_font_def *bktxt_fntptr; int bkt_read_font_map ( void* bkfctx, /* bki_open file context */ bktxt_fntptr *fontdef, /* return array of structs */ int *count ); /* size of returned array */ /* * Scan record by setting offset to 0 and calling repeatedly * until offset greater or equal to reclen (length of record). */ int bkt_text3_scan ( int reclen, char *rec, int *offset, char substring[256], int *stringlength, int *glue );