85 { 634, 12, 15, -2, 1},
102 { 880, 9, 14, -1, 1},
104 { 906, 9, 14, -1, 1},
105 { 922, 10, 10, 3, 1},
106 { 935, 7, 14, -1, 1},
108 { 964, 8, 14, -1, 1},
109 { 978, 2, 14, -1, 1},
110 { 982, 4, 18, -1, 1},
111 { 991, 8, 14, -1, 1},
112 {1005, 2, 14, -1, 1},
113 {1009, 14, 10, 3, 1},
115 {1037, 10, 10, 3, 1},
122 {1119, 10, 10, 3, 0},
123 {1132, 13, 10, 3, 1},
124 {1149, 10, 10, 3, 1},
125 {1162, 10, 14, 3, 1},
127 {1190, 8, 17, -1, 1},
128 {1207, 2, 18, -1, 1},
129 {1212, 8, 17, -1, 1},
130 {1229, 11, 3, 5, 1}};
135 {255, 255, 195, 192, 207, 60, 243, 204, 4, 64, 68, 12, 192, 200, 127,
136 247, 255, 9, 129, 144, 255, 239, 254, 19, 3, 48, 50, 2, 32, 8, 4, 15,
137 143, 238, 150, 67, 224, 252, 31, 4, 194, 113, 127, 243, 240, 32, 16, 8,
138 0, 120, 17, 152, 67, 49, 134, 98, 12, 200, 25, 144, 30, 79, 1, 51, 2,
139 102, 8, 204, 49, 152, 67, 49, 3, 192, 15, 1, 248, 48, 131, 0, 56, 3, 192,
140 110, 108, 118, 195, 204, 24, 225, 199, 254, 62, 112, 255, 192, 50, 102,
141 76, 204, 204, 196, 102, 35, 196, 102, 35, 51, 51, 50, 102, 76, 17, 37,
142 81, 195, 138, 164, 136, 6, 0, 96, 6, 0, 96, 6, 15, 255, 255, 240, 96, 6,
143 0, 96, 6, 0, 96, 109, 64, 255, 192, 240, 12, 49, 134, 24, 227, 12, 49,
144 198, 24, 99, 12, 0, 62, 63, 152, 216, 60, 30, 15, 7, 131, 193, 224, 216,
145 207, 227, 224, 56, 248, 216, 24, 24, 24, 24, 24, 24, 24, 24, 255, 255,
146 124, 254, 135, 3, 3, 7, 6, 12, 24, 48, 96, 255, 255, 126, 127, 160, 224,
147 48, 57, 248, 252, 7, 1, 128, 224, 255, 231, 224, 7, 1, 192, 176, 108, 19,
148 8, 198, 49, 12, 255, 255, 240, 48, 12, 3, 0, 126, 126, 96, 96, 124, 126,
149 71, 3, 3, 3, 135, 254, 124, 30, 31, 156, 92, 12, 6, 243, 253, 199, 193,
150 224, 216, 239, 227, 224, 255, 255, 6, 6, 6, 14, 12, 12, 28, 24, 24, 56,
151 48, 62, 63, 184, 248, 62, 59, 249, 253, 199, 193, 224, 248, 239, 227,
152 224, 62, 63, 184, 216, 60, 31, 29, 254, 123, 1, 129, 209, 207, 195, 192,
153 240, 3, 192, 108, 0, 3, 106, 0, 0, 32, 60, 31, 31, 15, 129, 240, 15, 128,
154 62, 1, 224, 4, 255, 255, 252, 0, 0, 15, 255, 255, 192, 128, 30, 1, 240,
155 7, 192, 62, 7, 195, 227, 224, 240, 16, 0, 121, 254, 24, 48, 97, 134, 24,
156 48, 96, 1, 131, 0, 7, 224, 31, 248, 60, 28, 112, 6, 96, 3, 227, 99, 199,
157 227, 198, 99, 198, 102, 199, 252, 227, 112, 96, 0, 112, 0, 56, 16, 31,
158 240, 7, 192, 6, 0, 96, 15, 0, 240, 25, 129, 152, 25, 131, 12, 63, 199,
159 254, 96, 102, 6, 192, 48, 254, 127, 176, 216, 108, 55, 243, 249, 134,
160 193, 224, 240, 255, 239, 224, 15, 199, 253, 192, 176, 12, 1, 128, 48, 6,
161 0, 192, 12, 1, 192, 159, 240, 252, 254, 31, 243, 7, 96, 124, 7, 128, 240,
162 30, 3, 192, 120, 31, 7, 127, 207, 224, 255, 255, 192, 192, 192, 255, 255,
163 192, 192, 192, 192, 255, 255, 255, 255, 192, 192, 192, 254, 254, 192,
164 192, 192, 192, 192, 192, 15, 199, 253, 192, 176, 12, 1, 135, 240, 254, 3,
165 192, 108, 13, 193, 159, 225, 248, 192, 240, 60, 15, 3, 192, 255, 255,
166 255, 3, 192, 240, 60, 15, 3, 192, 192, 255, 255, 255, 192, 24, 198, 49,
167 140, 99, 24, 198, 49, 140, 254, 224, 193, 176, 204, 99, 48, 216, 60, 15,
168 3, 96, 204, 49, 140, 51, 6, 192, 192, 192, 192, 192, 192, 192, 192, 192,
169 192, 192, 192, 192, 255, 255, 224, 127, 15, 240, 253, 139, 217, 189, 155,
170 207, 60, 243, 198, 60, 99, 192, 60, 3, 192, 48, 224, 248, 63, 15, 195,
171 216, 246, 60, 207, 27, 198, 240, 252, 63, 7, 193, 192, 31, 131, 252, 112,
172 230, 6, 192, 60, 3, 192, 60, 3, 192, 54, 6, 112, 227, 252, 31, 128, 252,
173 254, 199, 195, 195, 199, 254, 252, 192, 192, 192, 192, 192, 31, 131, 252,
174 112, 230, 6, 192, 60, 3, 192, 60, 3, 192, 54, 6, 112, 227, 252, 31, 128,
175 24, 0, 192, 252, 63, 140, 115, 12, 195, 49, 207, 227, 240, 198, 48, 204,
176 51, 6, 193, 192, 62, 63, 184, 88, 12, 3, 224, 252, 7, 1, 128, 224, 255,
177 231, 224, 255, 255, 255, 6, 0, 96, 6, 0, 96, 6, 0, 96, 6, 0, 96, 6, 0,
178 96, 6, 0, 192, 240, 60, 15, 3, 192, 240, 60, 15, 3, 192, 240, 54, 25,
179 254, 63, 0, 192, 54, 6, 96, 102, 6, 48, 195, 12, 25, 129, 152, 25, 128,
180 240, 15, 0, 96, 6, 0, 193, 193, 224, 224, 216, 216, 204, 108, 102, 54,
181 51, 27, 24, 216, 216, 108, 108, 54, 54, 27, 27, 7, 7, 3, 131, 129, 193,
182 192, 112, 230, 24, 230, 13, 192, 240, 28, 3, 128, 120, 27, 7, 48, 199,
183 48, 110, 14, 224, 118, 6, 48, 193, 152, 25, 128, 240, 6, 0, 96, 6, 0, 96,
184 6, 0, 96, 6, 0, 255, 255, 252, 7, 1, 192, 48, 14, 3, 128, 224, 24, 6, 1,
185 192, 127, 255, 254, 255, 204, 204, 204, 204, 204, 204, 255, 195, 6, 24,
186 97, 195, 12, 48, 225, 134, 24, 48, 192, 255, 51, 51, 51, 51, 51, 51, 255,
187 14, 3, 96, 198, 48, 108, 6, 255, 255, 192, 198, 48, 60, 126, 71, 3, 63,
188 255, 195, 199, 255, 123, 192, 96, 48, 24, 13, 231, 251, 143, 131, 193,
189 224, 240, 124, 127, 246, 240, 30, 127, 97, 192, 192, 192, 192, 97, 127,
190 30, 1, 128, 192, 96, 51, 219, 255, 143, 131, 193, 224, 240, 124, 119,
191 249, 236, 31, 31, 230, 31, 3, 255, 255, 252, 1, 129, 127, 199, 224, 30,
192 124, 193, 143, 255, 204, 24, 48, 96, 193, 131, 6, 0, 61, 191, 248, 248,
193 60, 30, 15, 7, 199, 127, 158, 192, 104, 103, 241, 240, 192, 192, 192,
194 192, 222, 254, 231, 195, 195, 195, 195, 195, 195, 195, 240, 255, 255,
195 240, 51, 0, 51, 51, 51, 51, 51, 51, 254, 192, 192, 192, 192, 195, 198,
196 204, 216, 240, 240, 216, 204, 198, 195, 255, 255, 255, 240, 222, 123,
197 251, 238, 56, 240, 195, 195, 15, 12, 60, 48, 240, 195, 195, 15, 12, 48,
198 222, 254, 231, 195, 195, 195, 195, 195, 195, 195, 30, 31, 230, 27, 3,
199 192, 240, 60, 13, 134, 127, 135, 128, 222, 127, 184, 248, 60, 30, 15, 7,
200 199, 255, 111, 48, 24, 12, 6, 0, 61, 191, 248, 248, 60, 30, 15, 7, 199,
201 127, 158, 192, 96, 48, 24, 12, 223, 254, 48, 195, 12, 48, 195, 0, 125,
202 255, 15, 7, 195, 193, 195, 254, 248, 97, 134, 63, 253, 134, 24, 97, 134,
203 31, 60, 195, 195, 195, 195, 195, 195, 195, 231, 127, 123, 192, 240, 54,
204 25, 134, 51, 12, 195, 48, 120, 30, 3, 0, 199, 30, 56, 241, 70, 219, 102,
205 219, 54, 217, 162, 199, 28, 56, 225, 199, 0, 225, 216, 99, 48, 204, 30,
206 7, 131, 48, 204, 97, 184, 112, 192, 240, 54, 25, 134, 51, 12, 193, 224,
207 120, 12, 3, 0, 192, 96, 120, 28, 0, 255, 255, 6, 12, 28, 56, 48, 112,
208 255, 255, 15, 31, 24, 24, 24, 24, 24, 240, 240, 56, 24, 24, 24, 24, 24,
209 31, 15, 255, 255, 255, 255, 240, 240, 248, 24, 24, 24, 24, 24, 15, 15,
210 28, 24, 24, 24, 24, 24, 248, 240, 124, 63, 254, 31, 0};
214 static void PutPixel(
unsigned char *Image,
int Width,
int Height,
215 int x,
int y,
unsigned char Value)
217 if(0 <= x && x < Width && 0 <= y && y < Height)
218 Image[x + Width*y] = Value;
231 static void DrawGlyph(
unsigned char *Image,
int Width,
int Height,
232 const unsigned char *Glyph,
int GlyphWidth,
int GlyphHeight,
233 int x0,
int y0,
unsigned Value)
235 unsigned int Packed, Mask;
242 for(Mask = 0x80, Packed = *Glyph; Mask; Mask >>= 1)
245 PutPixel(Image, Width, Height, x0 + x, y0 + y, Value);
247 if(++x >= GlyphWidth)
251 if(++y >= GlyphHeight)
269 while((c = *(Text++)))
271 if(!(32 <= c && c <= 126))
291 void DrawText(
unsigned char *Image,
int Width,
int Height,
292 int x0,
int y0,
unsigned char Value,
const char *Text)
299 while((c = *(Text++)))
301 if(!(32 <= c && c <= 126))
307 FontInfo[c].Width, FontInfo[c].Height,
308 x0, y0 + FontInfo[c].YShift, Value);