File: jfm.h

package info (click to toggle)
xdvik-ja 22.84.16-j1.40+t1lib-1
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd, wheezy
  • size: 16,628 kB
  • ctags: 10,310
  • sloc: ansic: 88,999; sh: 5,309; makefile: 1,031; perl: 245; lisp: 244
file content (47 lines) | stat: -rw-r--r-- 1,575 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
/**********************************************
 *  Copyright (C) Atsuo Kawaguchi, 1987.
 *         (atsuo@sanken.osaka-u.junet)
 *  Modified by Y. Hayashi from jxdvi-NEWS
 *	   (hayashi@me.aoyama.ac.jp)
 **********************************************/
#define	J_ID 0		/* id */
#define	J_NT 1		/* number of words in the char_type table */
#define	J_LF 2		/* length of entire file */
#define	J_LH 3		/* length of header */
#define	J_BC 4		/* smallest char_type */
#define	J_EC 5		/* largest char_type */
#define	J_NW 6		/* number of width table */
#define	J_NH 7		/* number of height table */
#define	J_ND 8		/* number of depth table */
#define	J_NI 9		/* number of italic correctiuon table */
#define	J_NL 10		/* number of glue/kern talbe */
#define	J_NK 11
#define	J_NG 12
#define	J_NP 13

struct jfm_char_type {
    unsigned short	code;		/* JIS code */
    unsigned short	index;		/* index to char_info */
};

struct jfm_char_info {
    unsigned char	width_ix;		/* index to width */
    unsigned char	height_depth_ix;	/* index to height & depth */
    unsigned char	italic_ix_tag;		/* index to italic & tag */
    unsigned char	remainder_ix;		/* index to remainder */
};

struct jfm {
    char	*fontname;			/* font name (min10, etc.) */
    short	table[(J_NP+1)];		/* table */
    unsigned long check_sum;			/* header */
    unsigned long design_size;
    struct jfm_char_type *type;
    struct jfm_char_info *info;
    unsigned long *width;
    unsigned long *height;
    unsigned long *depth;
    unsigned long *italic;
};

struct jfm *read_jfm(FILE *fp, char *fontname);