summaryrefslogtreecommitdiff
path: root/src/cairoint.h
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2016-04-07 20:38:09 -0400
committerBehdad Esfahbod <behdad@behdad.org>2017-07-29 12:30:50 +0100
commit0d8859c66fb82a00147ab77d1971111306ca2272 (patch)
tree7a01ece928a78c0376fc6837926ae7f2344d75b9 /src/cairoint.h
parent0fadb2c56d855560810205d78975450ddce271df (diff)
downloadcairo-0d8859c66fb82a00147ab77d1971111306ca2272.tar.gz
Add support for color glyphs to cairo_scaled_glyph_t
With this, glyphs can have either a surface that is expected to be used as mask, or a color_surface that should be used as source, or both. This will be used to support colored emoji glyphs that are stored as PNG images in OpenType fonts.
Diffstat (limited to 'src/cairoint.h')
-rw-r--r--src/cairoint.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/cairoint.h b/src/cairoint.h
index 4fedf861d..a04a92e94 100644
--- a/src/cairoint.h
+++ b/src/cairoint.h
@@ -477,7 +477,8 @@ typedef enum _cairo_scaled_glyph_info {
CAIRO_SCALED_GLYPH_INFO_METRICS = (1 << 0),
CAIRO_SCALED_GLYPH_INFO_SURFACE = (1 << 1),
CAIRO_SCALED_GLYPH_INFO_PATH = (1 << 2),
- CAIRO_SCALED_GLYPH_INFO_RECORDING_SURFACE = (1 << 3)
+ CAIRO_SCALED_GLYPH_INFO_RECORDING_SURFACE = (1 << 3),
+ CAIRO_SCALED_GLYPH_INFO_COLOR_SURFACE = (1 << 4)
} cairo_scaled_glyph_info_t;
typedef struct _cairo_scaled_font_subset {
@@ -1255,6 +1256,11 @@ _cairo_scaled_glyph_set_recording_surface (cairo_scaled_glyph_t *scaled_glyph,
cairo_scaled_font_t *scaled_font,
cairo_surface_t *recording_surface);
+cairo_private void
+_cairo_scaled_glyph_set_color_surface (cairo_scaled_glyph_t *scaled_glyph,
+ cairo_scaled_font_t *scaled_font,
+ cairo_image_surface_t *surface);
+
cairo_private cairo_int_status_t
_cairo_scaled_glyph_lookup (cairo_scaled_font_t *scaled_font,
unsigned long index,