summaryrefslogtreecommitdiff
path: root/src/w32bdf.h
diff options
context:
space:
mode:
authorGeoff Voelker <voelker@cs.washington.edu>1999-03-17 22:03:43 +0000
committerGeoff Voelker <voelker@cs.washington.edu>1999-03-17 22:03:43 +0000
commit865203c3b7dbf3c99be9038089a91b459793a165 (patch)
treee653dbf970b91c1aa0e33c7ca07da149aeb2b394 /src/w32bdf.h
parent4e2ac2d94001156abd05fd411498a98ffc130342 (diff)
downloademacs-865203c3b7dbf3c99be9038089a91b459793a165.tar.gz
Merged patches from Meadow.
Diffstat (limited to 'src/w32bdf.h')
-rw-r--r--src/w32bdf.h32
1 files changed, 31 insertions, 1 deletions
diff --git a/src/w32bdf.h b/src/w32bdf.h
index 41821982cfa..2f08890d97a 100644
--- a/src/w32bdf.h
+++ b/src/w32bdf.h
@@ -29,15 +29,38 @@ Boston, MA 02111-1307, USA. */
#define BDF_SECOND_OFFSET(x) ((x) & 0x7f)
#define BDF_FIRST_OFFSET(x) (((x) >> 8) | (((x) & 0x80) << 1))
+#define BDF_FONT_CACHE_SIZE 5000
+#define BDF_FONT_CLEAR_SIZE 1000
+
/* Structure of glyph information of one character. */
typedef struct
{
int dwidth; /* width in pixels */
int bbw, bbh, bbox, bboy; /* bounding box in pixels */
+} glyph_metric;
+
+typedef struct
+{
+ glyph_metric metric;
int bitmap_size; /* byte lengh of the following slots */
unsigned char *bitmap; /* */
} glyph_struct;
+typedef struct fchar *pfont_char;
+
+typedef struct
+{
+ glyph_metric metric;
+ pfont_char psrc;
+ HBITMAP hbmp;
+} cache_bitmap;
+
+typedef struct fchar
+{
+ unsigned char *offset;
+ cache_bitmap *pcbmp;
+} font_char;
+
typedef struct
{
char *filename;
@@ -46,12 +69,19 @@ typedef struct
unsigned char *font;
unsigned char *seeked;
DWORD size;
- unsigned char **offset[BDF_FIRST_OFFSET_TABLE];
+
+ font_char *chtbl[BDF_FIRST_OFFSET_TABLE];
int llx, lly, urx, ury; /* Font bounding box */
int yoffset;
int relative_compose;
int default_ascent;
+
+ unsigned char *registry;
+ unsigned char *encoding;
+ unsigned char *slant;
+/* unsigned char *width; */
+
int width;
int height;
int pixsz;