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 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190
|
#define LASTTFMCHAR 255
#define NTFMCHARS 256
struct tfmchar_entry { /* character entry */
short dev_font, dev_char;
int tfmw; /* TFM width */
};
struct tfmfntinfo {
struct bifont *tfm_bf;
int lastfntchar;
struct tfmchar_entry ch[NTFMCHARS]; /* character information */
};
#ifdef ANSI
#define tfmfinfo(fe) (*(struct tfmfntinfo **)&(fe->finfo))
#else
#define tfmfinfo(fe) ((struct tfmfntinfo *)(fe->finfo))
#endif
struct jstfmchar_entry { /* character entry */
unsigned short dev_ku, dev_ten;
int tfmw; /* TFM width */
};
struct jstfmfntinfo {
struct bifont *js_bf; /* = js_share->jss_bf */
int lastfntchar;
struct jstfmchar_entry ch[LASTTFMCHAR+1]; /* character information */
short jsubfont;
short dev_font; /* = js_share->jss_dev_font */
struct jssinfo *js_info; /* = js_share->jss_info */
struct jsubshare *js_share;
};
#ifdef ANSI
#define jstfmfinfo(fe) (*(struct jstfmfntinfo **)&(fe->finfo))
#else
#define jstfmfinfo(fe) ((struct jstfmfntinfo *)(fe->finfo))
#endif
#define JFM_ID 11
#define TJFM_ID 9
struct jfmtype_entry { /* character type entry */
int jfm_code;
int jfm_type;
};
struct jfmchar_entry { /* character entry */
int tfmw; /* TFM width */
};
struct jfmfntinfo {
struct bifont *jfm_bf;
int nctype;
struct jfmtype_entry *ctype; /* character type information */
int lasttypecode;
struct jfmchar_entry *ch; /* character information indexed by type */
};
#ifdef ANSI
#define jfmfinfo(fe) (*(struct jfmfntinfo **)&(fe->finfo))
#else
#define jfmfinfo(fe) ((struct jfmfntinfo *)(fe->finfo))
#endif
#ifdef UNDEF
struct wlchar_entry { /* character entry */
short dev_font, dev_char;
int tfmw; /* TFM width */
};
struct wlfntinfo {
struct bifont *wl_bf;
int nfntchars;
struct wlchar_entry ch[1]; /* character information */
};
#ifdef ANSI
#define wlfinfo(fe) (*(struct wlfntinfo **)&(fe->finfo))
#else
#define wlfinfo(fe) ((struct wlfntinfo *)(fe->finfo))
#endif
#ifdef ANSI
#define jswlfinfo(jsfi) (*(struct wlfntinfo **)&(jsfi->js_info))
#else
#define jswlfinfo(jsfi) ((struct wlfntinfo *)(jsfi->js_info))
#endif
#define jftchar_entry wlchar_entry
struct jftfntinfo {
struct bifont *jft_bf;
int nfntchars;
int width;
int height;
int depth;
struct jftchar_entry ch[1]; /* character information */
};
#ifdef ANSI
#define jftfinfo(fe) (*(struct jftfntinfo **)&(fe->finfo))
#else
#define jftfinfo(fe) ((struct jftfntinfo *)(fe->finfo))
#endif
#ifdef ANSI
#define jsftfinfo(jsfi) (*(struct jftfntinfo **)&(jsfi->js_info))
#else
#define jsftfinfo(jsfi) ((struct jftfntinfo *)(jsfi->js_info))
#endif
#define vflfntinfo jftfntinfo
#define vfl_bf jft_bf
#define vflchar_entry jftchar_entry
#ifdef ANSI
#define vflfinfo(fe) (*(struct vflfntinfo **)&(fe->finfo))
#else
#define vflfinfo(fe) ((struct vflfntinfo *)(fe->finfo))
#endif
#ifdef ANSI
#define jsvflfinfo(jsfi) (*(struct vflfntinfo **)&(jsfi->js_info))
#else
#define jsvflfinfo(jsfi) ((struct vflfntinfo *)(jsfi->js_info))
#endif
#endif
/* struct to share subfont information
*/
#define JSS_CLOSED 0
#define JSS_INIT 1
#define JSS_READ 2
struct jsubshare {
int jss_stat;
struct bifont *jss_bf;
int jss_s;
int jss_dev_font; /* jstfm */
struct jssinfo *jss_info; /* jstfm wadalab */
struct jsubshare *jss_next;
};
/* used to pass information from access to initfontinfo */
struct biaccessinfo {
struct bifont *bf;
short jsubf;
};
/* used to pass marking information from initfontinfo to readfontinfo */
struct biinitfontinfo {
struct bifont *bf;
int maxc;
Boolean mark[1];
};
#ifdef ANSI
#define biaccinfo(fe) (*(struct biaccessinfo **)&(fe->finfo))
#define biinifinfo(fe) (*(struct biinitfontinfo **)&(fe->finfo))
#define bfinfo(fe) (*(struct bifont **)&(fe->finfo))
#else
#define biaccinfo(fe) ((struct biaccessinfo *)(fe->finfo))
#define biinifinfo(fe) ((struct biinitfontinfo *)(fe->finfo))
#define bfinfo(fe) ((struct bifont *)(fe->finfo))
#endif
struct biinitfontinfo *alloc_biinif();
/*
* Interface with device driver (only `non-standard' ones are listed)
*/
/* psbi.c */
int dev_is_tfm();
int dev_is_jstfm();
int dev_jstfm_kind();
int dev_getjsubfont();
int dev_is_jfm();
int dev_jfm_kind();
|