w32tex
About: TeX Live provides a comprehensive TeX system including all the major TeX-related programs, macro packages, and fonts that are free software. Windows sources.
  Fossies Dox: w32tex-src.tar.xz  ("unofficial" and yet experimental doxygen-generated source code documentation)  

bifont.h
Go to the documentation of this file.
1 #define LASTTFMCHAR 255
2 #define NTFMCHARS 256
3 
4 struct tfmchar_entry { /* character entry */
5  short dev_font, dev_char;
6  int tfmw; /* TFM width */
7 };
8 
9 struct tfmfntinfo {
10  struct bifont *tfm_bf;
12  struct tfmchar_entry ch[NTFMCHARS]; /* character information */
13 };
14 
15 #ifdef ANSI
16 #define tfmfinfo(fe) (*(struct tfmfntinfo **)&(fe->finfo))
17 #else
18 #define tfmfinfo(fe) ((struct tfmfntinfo *)(fe->finfo))
19 #endif
20 
21 
22 struct jstfmchar_entry { /* character entry */
23  unsigned short dev_ku, dev_ten;
24  int tfmw; /* TFM width */
25 };
26 
27 struct jstfmfntinfo {
28  struct bifont *js_bf; /* = js_share->jss_bf */
30  struct jstfmchar_entry ch[LASTTFMCHAR+1]; /* character information */
31  short jsubfont;
32  short dev_font; /* = js_share->jss_dev_font */
33  struct jssinfo *js_info; /* = js_share->jss_info */
35 };
36 
37 #ifdef ANSI
38 #define jstfmfinfo(fe) (*(struct jstfmfntinfo **)&(fe->finfo))
39 #else
40 #define jstfmfinfo(fe) ((struct jstfmfntinfo *)(fe->finfo))
41 #endif
42 
43 
44 #define JFM_ID 11
45 #define TJFM_ID 9
46 
47 struct jfmtype_entry { /* character type entry */
48  int jfm_code;
49  int jfm_type;
50 };
51 
52 struct jfmchar_entry { /* character entry */
53  int tfmw; /* TFM width */
54 };
55 
56 struct jfmfntinfo {
57  struct bifont *jfm_bf;
58  int nctype;
59  struct jfmtype_entry *ctype; /* character type information */
61  struct jfmchar_entry *ch; /* character information indexed by type */
62 };
63 
64 #ifdef ANSI
65 #define jfmfinfo(fe) (*(struct jfmfntinfo **)&(fe->finfo))
66 #else
67 #define jfmfinfo(fe) ((struct jfmfntinfo *)(fe->finfo))
68 #endif
69 
70 
71 #ifdef UNDEF
72 struct wlchar_entry { /* character entry */
73  short dev_font, dev_char;
74  int tfmw; /* TFM width */
75 };
76 
77 struct wlfntinfo {
78  struct bifont *wl_bf;
79  int nfntchars;
80  struct wlchar_entry ch[1]; /* character information */
81 };
82 
83 #ifdef ANSI
84 #define wlfinfo(fe) (*(struct wlfntinfo **)&(fe->finfo))
85 #else
86 #define wlfinfo(fe) ((struct wlfntinfo *)(fe->finfo))
87 #endif
88 
89 #ifdef ANSI
90 #define jswlfinfo(jsfi) (*(struct wlfntinfo **)&(jsfi->js_info))
91 #else
92 #define jswlfinfo(jsfi) ((struct wlfntinfo *)(jsfi->js_info))
93 #endif
94 
95 
96 #define jftchar_entry wlchar_entry
97 
98 struct jftfntinfo {
99  struct bifont *jft_bf;
100  int nfntchars;
101  int width;
102  int height;
103  int depth;
104  struct jftchar_entry ch[1]; /* character information */
105 };
106 
107 #ifdef ANSI
108 #define jftfinfo(fe) (*(struct jftfntinfo **)&(fe->finfo))
109 #else
110 #define jftfinfo(fe) ((struct jftfntinfo *)(fe->finfo))
111 #endif
112 
113 #ifdef ANSI
114 #define jsftfinfo(jsfi) (*(struct jftfntinfo **)&(jsfi->js_info))
115 #else
116 #define jsftfinfo(jsfi) ((struct jftfntinfo *)(jsfi->js_info))
117 #endif
118 
119 
120 #define vflfntinfo jftfntinfo
121 #define vfl_bf jft_bf
122 #define vflchar_entry jftchar_entry
123 
124 #ifdef ANSI
125 #define vflfinfo(fe) (*(struct vflfntinfo **)&(fe->finfo))
126 #else
127 #define vflfinfo(fe) ((struct vflfntinfo *)(fe->finfo))
128 #endif
129 
130 #ifdef ANSI
131 #define jsvflfinfo(jsfi) (*(struct vflfntinfo **)&(jsfi->js_info))
132 #else
133 #define jsvflfinfo(jsfi) ((struct vflfntinfo *)(jsfi->js_info))
134 #endif
135 #endif
136 
137 
138 /* struct to share subfont information
139  */
140 #define JSS_CLOSED 0
141 #define JSS_INIT 1
142 #define JSS_READ 2
143 
144 struct jsubshare {
145  int jss_stat;
146  struct bifont *jss_bf;
147  int jss_s;
148  int jss_dev_font; /* jstfm */
149  struct jssinfo *jss_info; /* jstfm wadalab */
151 };
152 
153 
154 /* used to pass information from access to initfontinfo */
155 struct biaccessinfo {
156  struct bifont *bf;
157  short jsubf;
158 };
159 
160 /* used to pass marking information from initfontinfo to readfontinfo */
162  struct bifont *bf;
163  int maxc;
165 };
166 
167 #ifdef ANSI
168 #define biaccinfo(fe) (*(struct biaccessinfo **)&(fe->finfo))
169 #define biinifinfo(fe) (*(struct biinitfontinfo **)&(fe->finfo))
170 #define bfinfo(fe) (*(struct bifont **)&(fe->finfo))
171 #else
172 #define biaccinfo(fe) ((struct biaccessinfo *)(fe->finfo))
173 #define biinifinfo(fe) ((struct biinitfontinfo *)(fe->finfo))
174 #define bfinfo(fe) ((struct bifont *)(fe->finfo))
175 #endif
176 
177 
179 
180 
181 /*
182  * Interface with device driver (only `non-standard' ones are listed)
183  */
184 /* psbi.c */
#define LASTTFMCHAR
Definition: bifont.h:1
int dev_is_jfm()
struct biinitfontinfo * alloc_biinif()
#define NTFMCHARS
Definition: bifont.h:2
int dev_jfm_kind()
int dev_is_jstfm()
int dev_jstfm_kind()
int dev_getjsubfont()
int dev_is_tfm()
#define jftchar_entry
Definition: bifont.h:98
int Boolean
Definition: pgmcrater.c:64
short jsubf
Definition: bifont.h:157
struct bifont * bf
Definition: bifont.h:156
Definition: psbi.c:77
struct bifont * bf
Definition: bifont.h:162
Boolean mark[1]
Definition: bifont.h:164
Definition: bifont.h:52
int tfmw
Definition: bifont.h:53
int nctype
Definition: bifont.h:58
struct bifont * jfm_bf
Definition: bifont.h:57
struct jfmchar_entry * ch
Definition: bifont.h:61
struct jfmtype_entry * ctype
Definition: bifont.h:59
int lasttypecode
Definition: bifont.h:60
Definition: bifont.h:47
int jfm_code
Definition: bifont.h:48
int jfm_type
Definition: bifont.h:49
int height
Definition: bifont.h:104
struct bifont * jft_bf
Definition: bifont.h:101
int width
Definition: bifont.h:103
int nfntchars
Definition: bifont.h:102
struct wlchar_entry ch[1]
Definition: bifont.h:106
int depth
Definition: bifont.h:105
Definition: bifont.h:22
int tfmw
Definition: bifont.h:24
unsigned short dev_ten
Definition: bifont.h:23
unsigned short dev_ku
Definition: bifont.h:23
short jsubfont
Definition: bifont.h:31
struct jstfmchar_entry ch[255+1]
Definition: bifont.h:30
short dev_font
Definition: bifont.h:32
struct bifont * js_bf
Definition: bifont.h:28
struct jsubshare * js_share
Definition: bifont.h:34
struct jssinfo * js_info
Definition: bifont.h:33
int lastfntchar
Definition: bifont.h:29
struct jsubshare * jss_next
Definition: bifont.h:150
struct bifont * jss_bf
Definition: bifont.h:146
int jss_s
Definition: bifont.h:147
struct jssinfo * jss_info
Definition: bifont.h:149
int jss_dev_font
Definition: bifont.h:148
int jss_stat
Definition: bifont.h:145
Definition: bifont.h:4
short dev_char
Definition: bifont.h:5
int tfmw
Definition: bifont.h:6
short dev_font
Definition: bifont.h:5
int lastfntchar
Definition: bifont.h:11
struct bifont * tfm_bf
Definition: bifont.h:10
struct tfmchar_entry ch[256]
Definition: bifont.h:12
Definition: bifont.h:74
int tfmw
Definition: bifont.h:76
short dev_font
Definition: bifont.h:75
short dev_char
Definition: bifont.h:75
struct wlchar_entry ch[1]
Definition: bifont.h:82
int nfntchars
Definition: bifont.h:81
struct bifont * wl_bf
Definition: bifont.h:80