102 |
#define TEXT_METRICS_Y_ADVANCE 5 |
#define TEXT_METRICS_Y_ADVANCE 5 |
103 |
#define NUM_TEXT_METRICS 6 |
#define NUM_TEXT_METRICS 6 |
104 |
|
|
105 |
|
#define NUM_GLYPH_METRICS 10 |
106 |
|
|
107 |
|
#define GLYPH_LOG_X(i) (NUM_GLYPH_METRICS * (i) ) |
108 |
|
#define GLYPH_LOG_Y(i) (NUM_GLYPH_METRICS * (i) + 1) |
109 |
|
#define GLYPH_LOG_WIDTH(i) (NUM_GLYPH_METRICS * (i) + 2) |
110 |
|
#define GLYPH_LOG_HEIGHT(i) (NUM_GLYPH_METRICS * (i) + 3) |
111 |
|
|
112 |
|
#define GLYPH_INK_X(i) (NUM_GLYPH_METRICS * (i) + 4) |
113 |
|
#define GLYPH_INK_Y(i) (NUM_GLYPH_METRICS * (i) + 5) |
114 |
|
#define GLYPH_INK_WIDTH(i) (NUM_GLYPH_METRICS * (i) + 6) |
115 |
|
#define GLYPH_INK_HEIGHT(i) (NUM_GLYPH_METRICS * (i) + 7) |
116 |
|
|
117 |
|
#define GLYPH_POS_X(i) (NUM_GLYPH_METRICS * (i) + 8) |
118 |
|
#define GLYPH_POS_Y(i) (NUM_GLYPH_METRICS * (i) + 9) |
119 |
|
|
120 |
struct peerfont |
struct peerfont |
121 |
{ |
{ |
122 |
PangoFont *font; |
PangoFont *font; |
134 |
void *graphics_resource; |
void *graphics_resource; |
135 |
}; |
}; |
136 |
|
|
|
struct glyphvec |
|
|
{ |
|
|
/* the GList is list of PangoGlyphItems, each of which is a pair of 1 |
|
|
PangoItem and 1 PangoGlyphString. */ |
|
|
GList *glyphitems; |
|
|
PangoFontDescription *desc; |
|
|
PangoFont *font; |
|
|
PangoContext *ctx; |
|
|
}; |
|
|
|
|
137 |
struct textlayout |
struct textlayout |
138 |
{ |
{ |
139 |
PangoLayout *pango_layout; |
PangoLayout *pango_layout; |