File: rastfont.h

package info (click to toggle)
dvi2ps 3.2j-9
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 1,344 kB
  • ctags: 1,896
  • sloc: ansic: 12,767; sh: 938; makefile: 269
file content (63 lines) | stat: -rw-r--r-- 1,622 bytes parent folder | download | duplicates (13)
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
#define	MAXMARKCHAR	255	/* >= 255 */
#define	NONEXISTANT	-1	/* offset for raster files not found */

struct rastchar_entry {		/* character entry */
    unsigned short width, height;/* width and height in pixels */
    short xoffset, yoffset;	/* x offset and y offset in pixels */
    short dev_font, dev_char;
    unsigned short nbpl;	/* # of bytes per pixel data line */
    union {
	unsigned int fileoffset;
	char *pixptr;
    } where;
    int tfmw;			/* TFM width */
};

struct rastfntinfo {
    float corrfact;
    int nfntchars;
    int dictform;	/* form of dev_font dictionary		*/
    struct rastchar_entry ch[1];	/* character information	*/
};

/* form of dictionary */
#define	PACK		0
#define	DVI		1

#ifdef ANSI
#define	rastfinfo(fe)	(*(struct rastfntinfo **)&(fe->finfo))
#else
#define	rastfinfo(fe)	((struct rastfntinfo *)(fe->finfo))
#endif

/* used to pass information from access to initfontinfo */
struct rastaccessinfo {
    /* int font_mag; */
    float corrfact;
};

/* used to pass information from initfontinfo to readfontinfo
   and to pass marking information */
struct rastinitfontinfo {
    float corrfact;
    int maxc;
    Boolean mark[1];
};

#ifdef ANSI
#define	rastaccinfo(fe)		(*(struct rastaccessinfo **)&(fe->finfo))
#define	rastinifinfo(fe)	(*(struct rastinitfontinfo **)&(fe->finfo))
#else
#define	rastaccinfo(fe)		((struct rastaccessinfo *)(fe->finfo))
#define	rastinifinfo(fe)	((struct rastinitfontinfo *)(fe->finfo))
#endif

struct rastfntinfo *alloc_rastfinfo();
DEV_FONT rast_fontdict();


/*
 * Interface with device driver
 */
void dev_rast_initfe();
void dev_rast_initfontdict();