summaryrefslogtreecommitdiff
path: root/pango/pango-hbfont-private.h
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2022-01-27 00:46:15 -0500
committerMatthias Clasen <mclasen@redhat.com>2022-01-28 18:43:39 -0500
commit73effe2d038f05fb9b107eb9189068acb3e68415 (patch)
treea9b76ca845ace8ea25442496f7352e0ca61c3950 /pango/pango-hbfont-private.h
parent71a597754cd977186a6c9541366a3c893c6ddfc2 (diff)
downloadpango-73effe2d038f05fb9b107eb9189068acb3e68415.tar.gz
Introduce user fonts
Add a way to create callback-based faces and fonts. The cairo implementation of this uses cairos user fonts. New APIs: PangoUserFace and PangoUserFont
Diffstat (limited to 'pango/pango-hbfont-private.h')
-rw-r--r--pango/pango-hbfont-private.h23
1 files changed, 20 insertions, 3 deletions
diff --git a/pango/pango-hbfont-private.h b/pango/pango-hbfont-private.h
index fea6162f..e24f8889 100644
--- a/pango/pango-hbfont-private.h
+++ b/pango/pango-hbfont-private.h
@@ -38,19 +38,36 @@ struct _HexBoxInfo
double box_height;
};
+typedef struct _CommonFont CommonFont;
+struct _CommonFont
+{
+ PangoFont parent_instance;
+
+ int size;
+ float dpi;
+ PangoGravity gravity;
+ PangoMatrix matrix;
+};
+
struct _PangoHbFont
{
PangoFont parent_instance;
- PangoHbFace *face;
int size; /* point size, scaled by PANGO_SCALE */
float dpi;
+ PangoGravity gravity;
+ PangoMatrix matrix;
+
+ /* up to here shared with PangoUserFont */
+
+ PangoHbFace *face;
hb_feature_t *features;
unsigned int n_features;
hb_variation_t *variations;
unsigned int n_variations;
- PangoGravity gravity;
- PangoMatrix matrix;
HexBoxInfo *hex_box_info;
+ PangoLanguage *approximate_char_lang;
+ int approximate_char_width;
+ int approximate_digit_width;
};