From e93d175aac6805692d660f1f6444e6b21492e2a7 Mon Sep 17 00:00:00 2001 From: Adrian Johnson Date: Sun, 22 Jan 2023 13:27:53 +1030 Subject: [PATCH 1/2] Add new cairo_user_scaled_font_get_foreground_source() function The previous approach using foreground colors in user fonts does not work for gradients since the foreground color is not available at the time of recording. Add a new function cairo_user_scaled_font_get_foreground_source() that can be called by the color render function to retrieve the foreground pattern. Calling this function signals to cairo that the foreground color is used. In this case cairo will call the render function whenever the foreground color has changed. --- doc/public/cairo-sections.txt | 2 + src/cairo-ft-font.c | 13 +- src/cairo-quartz-font.c | 2 +- src/cairo-scaled-font-private.h | 6 +- src/cairo-scaled-font.c | 62 +++++++--- src/cairo-user-font.c | 206 ++++++++++++++++++++++++++++---- src/cairo.h | 37 +++--- src/cairoint.h | 5 +- src/win32/cairo-dwrite-font.cpp | 2 +- 9 files changed, 270 insertions(+), 65 deletions(-) diff --git a/doc/public/cairo-sections.txt b/doc/public/cairo-sections.txt index 2aeecdca1..4b07fa3c7 100644 --- a/doc/public/cairo-sections.txt +++ b/doc/public/cairo-sections.txt @@ -57,6 +57,8 @@ cairo_user_font_face_set_unicode_to_glyph_func cairo_user_font_face_get_unicode_to_glyph_func cairo_user_font_face_set_text_to_glyphs_func cairo_user_font_face_get_text_to_glyphs_func +cairo_user_scaled_font_get_foreground_marker +cairo_user_scaled_font_get_foreground_source
diff --git a/src/cairo-ft-font.c b/src/cairo-ft-font.c index 254dcf25e..e6a8d20e3 100644 --- a/src/cairo-ft-font.c +++ b/src/cairo-ft-font.c @@ -2685,7 +2685,7 @@ _cairo_ft_scaled_glyph_init_surface (cairo_ft_scaled_font_t *scaled_font, _cairo_scaled_glyph_set_color_surface (scaled_glyph, &scaled_font->base, surface, - uses_foreground_color); + uses_foreground_color ? foreground_color : NULL); scaled_glyph->color_glyph = TRUE; } else { @@ -2797,7 +2797,8 @@ _cairo_ft_scaled_glyph_init_record_colr_v0_glyph (cairo_ft_scaled_font_t *scaled _cairo_scaled_glyph_set_recording_surface (scaled_glyph, &scaled_font->base, - recording_surface); + recording_surface, + NULL); return status; } #endif @@ -2862,7 +2863,8 @@ _cairo_ft_scaled_glyph_init_record_colr_v1_glyph (cairo_ft_scaled_font_t *scaled _cairo_scaled_glyph_set_recording_surface (scaled_glyph, &scaled_font->base, - recording_surface); + recording_surface, + NULL); scaled_glyph->color_glyph = TRUE; scaled_glyph->color_glyph_set = TRUE; @@ -3009,7 +3011,8 @@ _cairo_ft_scaled_glyph_init_record_svg_glyph (cairo_ft_scaled_font_t *scaled_fon _cairo_scaled_glyph_set_recording_surface (scaled_glyph, &scaled_font->base, - recording_surface); + recording_surface, + NULL); scaled_glyph->color_glyph = TRUE; scaled_glyph->color_glyph_set = TRUE; @@ -3118,7 +3121,7 @@ _cairo_ft_scaled_glyph_init_surface_for_recording_surface (cairo_ft_scaled_font_ _cairo_scaled_glyph_set_color_surface (scaled_glyph, &scaled_font->base, (cairo_image_surface_t *)surface, - foreground_used); + foreground_used ? foreground_color : NULL); surface = NULL; if (surface) diff --git a/src/cairo-quartz-font.c b/src/cairo-quartz-font.c index 641a2dfc7..1e7531356 100644 --- a/src/cairo-quartz-font.c +++ b/src/cairo-quartz-font.c @@ -656,7 +656,7 @@ _cairo_quartz_init_glyph_surface (cairo_quartz_scaled_font_t *font, cairo_surface_mark_dirty (&surface->base); if (is_color) - _cairo_scaled_glyph_set_color_surface (scaled_glyph, &font->base, surface, fg_color != NULL); + _cairo_scaled_glyph_set_color_surface (scaled_glyph, &font->base, surface, fg_color); else _cairo_scaled_glyph_set_surface (scaled_glyph, &font->base, surface); diff --git a/src/cairo-scaled-font-private.h b/src/cairo-scaled-font-private.h index bcc13bdc8..8c10b60c7 100644 --- a/src/cairo-scaled-font-private.h +++ b/src/cairo-scaled-font-private.h @@ -149,8 +149,12 @@ struct _cairo_scaled_glyph { cairo_list_t dev_privates; cairo_color_t foreground_color; /* only used for color glyphs */ + + /* TRUE if the recording_surface required the foreground_color to render. */ + unsigned recording_uses_foreground_color : 1; + /* TRUE if the color_surface required the foreground_color to render. */ - unsigned uses_foreground_color : 1; + unsigned image_uses_foreground_color : 1; /* TRUE if color_glyph specifies if glyph is color or non color, FALSE if glyph color type unknown. */ unsigned color_glyph_set : 1; diff --git a/src/cairo-scaled-font.c b/src/cairo-scaled-font.c index cc52ed577..d7e3f1e4b 100755 --- a/src/cairo-scaled-font.c +++ b/src/cairo-scaled-font.c @@ -2653,10 +2653,19 @@ _cairo_scaled_glyph_set_path (cairo_scaled_glyph_t *scaled_glyph, scaled_glyph->has_info &= ~CAIRO_SCALED_GLYPH_INFO_PATH; } +/** + * _cairo_scaled_glyph_set_recording_surface: + * @scaled_glyph: a #cairo_scaled_glyph_t + * @scaled_font: a #cairo_scaled_font_t + * @recording_surface: The recording surface + * @foreground_color: The foreground color that was used to record the + * glyph, or NULL if foreground color not required. + */ void _cairo_scaled_glyph_set_recording_surface (cairo_scaled_glyph_t *scaled_glyph, - cairo_scaled_font_t *scaled_font, - cairo_surface_t *recording_surface) + cairo_scaled_font_t *scaled_font, + cairo_surface_t *recording_surface, + const cairo_color_t * foreground_color) { if (scaled_glyph->recording_surface != NULL) { cairo_surface_finish (scaled_glyph->recording_surface); @@ -2664,6 +2673,9 @@ _cairo_scaled_glyph_set_recording_surface (cairo_scaled_glyph_t *scaled_glyph, } scaled_glyph->recording_surface = recording_surface; + scaled_glyph->recording_uses_foreground_color = foreground_color != NULL; + if (foreground_color) + scaled_glyph->foreground_color = *foreground_color; if (recording_surface != NULL) scaled_glyph->has_info |= CAIRO_SCALED_GLYPH_INFO_RECORDING_SURFACE; @@ -2671,11 +2683,19 @@ _cairo_scaled_glyph_set_recording_surface (cairo_scaled_glyph_t *scaled_glyph, scaled_glyph->has_info &= ~CAIRO_SCALED_GLYPH_INFO_RECORDING_SURFACE; } +/** + * _cairo_scaled_glyph_set_color_surface: + * @scaled_glyph: a #cairo_scaled_glyph_t + * @scaled_font: a #cairo_scaled_font_t + * @surface: The image surface + * @foreground_color: The foreground color that was used to render the + * glyph, or NULL if foreground color not required. + */ void -_cairo_scaled_glyph_set_color_surface (cairo_scaled_glyph_t *scaled_glyph, - cairo_scaled_font_t *scaled_font, +_cairo_scaled_glyph_set_color_surface (cairo_scaled_glyph_t *scaled_glyph, + cairo_scaled_font_t *scaled_font, cairo_image_surface_t *surface, - cairo_bool_t uses_foreground_color) + const cairo_color_t *foreground_color) { if (scaled_glyph->color_surface != NULL) cairo_surface_destroy (&scaled_glyph->color_surface->base); @@ -2683,7 +2703,9 @@ _cairo_scaled_glyph_set_color_surface (cairo_scaled_glyph_t *scaled_glyph, /* sanity check the backend glyph contents */ _cairo_debug_check_image_surface_is_defined (&surface->base); scaled_glyph->color_surface = surface; - scaled_glyph->uses_foreground_color = uses_foreground_color; + scaled_glyph->image_uses_foreground_color = foreground_color != NULL; + if (foreground_color) + scaled_glyph->foreground_color = *foreground_color; if (surface != NULL) scaled_glyph->has_info |= CAIRO_SCALED_GLYPH_INFO_COLOR_SURFACE; @@ -2814,8 +2836,11 @@ _cairo_scaled_font_free_last_glyph (cairo_scaled_font_t *scaled_font, * @index: the glyph to create * @info: a #cairo_scaled_glyph_info_t marking which portions of * the glyph should be filled in. - * @foreground_color - foreground color to use when rendering color fonts. Use NULL - * if not requesting CAIRO_SCALED_GLYPH_INFO_COLOR_SURFACE or foreground color is unknown. + * @foreground_color - foreground color to use when rendering color + * fonts. Use NULL if not requesting + * CAIRO_SCALED_GLYPH_INFO_RECORDING_SURFACE or + * CAIRO_SCALED_GLYPH_INFO_COLOR_SURFACE, or foreground color is + * unknown. * @scaled_glyph_ret: a #cairo_scaled_glyph_t where the glyph * is returned. * @@ -2909,14 +2934,23 @@ _cairo_scaled_glyph_lookup (cairo_scaled_font_t *scaled_font, scaled_glyph->color_glyph_set && !scaled_glyph->color_glyph) return CAIRO_INT_STATUS_UNSUPPORTED; - /* If requesting a color surface for a glyph that has used the - * foreground color to render the color_surface, and the - * foreground color has changed, request a new image. */ - if ((info & CAIRO_SCALED_GLYPH_INFO_COLOR_SURFACE) && - scaled_glyph->uses_foreground_color && + /* If requesting a color surface or recording for a glyph that has + * used the foreground color to render the color_surface, and the + * foreground color has changed, request a new image and/or + * recording. */ + + if (info & CAIRO_SCALED_GLYPH_INFO_RECORDING_SURFACE && + scaled_glyph->recording_uses_foreground_color && !_cairo_color_equal (foreground_color, &scaled_glyph->foreground_color)) { - need_info |= CAIRO_SCALED_GLYPH_INFO_COLOR_SURFACE; + need_info |= CAIRO_SCALED_GLYPH_INFO_RECORDING_SURFACE; + } + + if (info & CAIRO_SCALED_GLYPH_INFO_COLOR_SURFACE && + scaled_glyph->image_uses_foreground_color && + !_cairo_color_equal (foreground_color, &scaled_glyph->foreground_color)) + { + need_info |= CAIRO_SCALED_GLYPH_INFO_COLOR_SURFACE; } if (need_info) { diff --git a/src/cairo-user-font.c b/src/cairo-user-font.c index 80cd4c303..913395fd9 100644 --- a/src/cairo-user-font.c +++ b/src/cairo-user-font.c @@ -95,13 +95,19 @@ typedef struct _cairo_user_scaled_font { double snap_x_scale; double snap_y_scale; + cairo_pattern_t *foreground_marker; + cairo_pattern_t *foreground_pattern; + cairo_bool_t foreground_marker_used; + cairo_bool_t foreground_colors_used; + } cairo_user_scaled_font_t; /* #cairo_user_scaled_font_t */ static cairo_surface_t * -_cairo_user_scaled_font_create_recording_surface (const cairo_user_scaled_font_t *scaled_font, - cairo_bool_t color) +_cairo_user_scaled_font_create_recording_surface (cairo_user_scaled_font_t *scaled_font, + cairo_bool_t color, + const cairo_color_t *foreground_color) { cairo_content_t content; @@ -113,10 +119,20 @@ _cairo_user_scaled_font_create_recording_surface (const cairo_user_scaled_font_t CAIRO_CONTENT_ALPHA; } + if (scaled_font->foreground_pattern) + cairo_pattern_destroy (scaled_font->foreground_pattern); + + scaled_font->foreground_marker_used = FALSE; + scaled_font->foreground_colors_used = FALSE; + if (foreground_color) { + scaled_font->foreground_pattern = _cairo_pattern_create_solid (foreground_color); + } else { + scaled_font->foreground_pattern = cairo_pattern_create_rgb (0, 0, 0); + } + return cairo_recording_surface_create (content, NULL); } - static cairo_t * _cairo_user_scaled_font_create_recording_context (const cairo_user_scaled_font_t *scaled_font, cairo_surface_t *recording_surface, @@ -143,7 +159,8 @@ _cairo_user_scaled_font_create_recording_context (const cairo_user_scaled_font_t static cairo_int_status_t _cairo_user_scaled_glyph_init_record_glyph (cairo_user_scaled_font_t *scaled_font, - cairo_scaled_glyph_t *scaled_glyph) + cairo_scaled_glyph_t *scaled_glyph, + const cairo_color_t *foreground_color) { cairo_user_font_face_t *face = (cairo_user_font_face_t *) scaled_font->base.font_face; @@ -151,29 +168,25 @@ _cairo_user_scaled_glyph_init_record_glyph (cairo_user_scaled_font_t *scaled_fon cairo_surface_t *recording_surface = NULL; cairo_int_status_t status = CAIRO_STATUS_SUCCESS; cairo_t *cr; + cairo_bool_t foreground_used = FALSE; if (!face->scaled_font_methods.render_color_glyph && !face->scaled_font_methods.render_glyph) return CAIRO_STATUS_USER_FONT_NOT_IMPLEMENTED; /* special case for 0 rank matrix (as in _cairo_scaled_font_init): empty surface */ if (_cairo_matrix_is_scale_0 (&scaled_font->base.scale)) { - recording_surface = _cairo_user_scaled_font_create_recording_surface (scaled_font, FALSE); + recording_surface = _cairo_user_scaled_font_create_recording_surface (scaled_font, FALSE, foreground_color); _cairo_scaled_glyph_set_recording_surface (scaled_glyph, &scaled_font->base, - recording_surface); + recording_surface, + NULL); } else { status = CAIRO_STATUS_USER_FONT_NOT_IMPLEMENTED; if (face->scaled_font_methods.render_color_glyph) { - cairo_pattern_t *pattern; - - recording_surface = _cairo_user_scaled_font_create_recording_surface (scaled_font, TRUE); + recording_surface = _cairo_user_scaled_font_create_recording_surface (scaled_font, TRUE, foreground_color); cr = _cairo_user_scaled_font_create_recording_context (scaled_font, recording_surface, TRUE); - pattern = cairo_pattern_create_rgb (0, 0, 0); - pattern->is_userfont_foreground = TRUE; - cairo_set_source (cr, pattern); - cairo_pattern_destroy (pattern); status = face->scaled_font_methods.render_color_glyph ((cairo_scaled_font_t *)scaled_font, _cairo_scaled_glyph_index(scaled_glyph), cr, &extents); @@ -182,14 +195,16 @@ _cairo_user_scaled_glyph_init_record_glyph (cairo_user_scaled_font_t *scaled_fon scaled_glyph->color_glyph = TRUE; scaled_glyph->color_glyph_set = TRUE; } + cairo_destroy (cr); + foreground_used = scaled_font->foreground_marker_used || scaled_font->foreground_colors_used; } if (status == (cairo_int_status_t)CAIRO_STATUS_USER_FONT_NOT_IMPLEMENTED && face->scaled_font_methods.render_glyph) { if (recording_surface) cairo_surface_destroy (recording_surface); - recording_surface = _cairo_user_scaled_font_create_recording_surface (scaled_font, FALSE); + recording_surface = _cairo_user_scaled_font_create_recording_surface (scaled_font, FALSE, foreground_color); recording_surface->device_transform.x0 = .25 * _cairo_scaled_glyph_xphase (scaled_glyph); recording_surface->device_transform.y0 = .25 * _cairo_scaled_glyph_yphase (scaled_glyph); @@ -205,6 +220,7 @@ _cairo_user_scaled_glyph_init_record_glyph (cairo_user_scaled_font_t *scaled_fon } cairo_destroy (cr); + foreground_used = FALSE; } if (status != CAIRO_INT_STATUS_SUCCESS) { @@ -215,7 +231,8 @@ _cairo_user_scaled_glyph_init_record_glyph (cairo_user_scaled_font_t *scaled_fon _cairo_scaled_glyph_set_recording_surface (scaled_glyph, &scaled_font->base, - recording_surface); + recording_surface, + foreground_used ? foreground_color : NULL); } /* set metrics */ @@ -265,8 +282,8 @@ _cairo_user_scaled_glyph_init_surface (cairo_user_scaled_font_t *scaled_font, cairo_surface_t *surface; cairo_format_t format; int width, height; - cairo_bool_t foreground_used; cairo_int_status_t status = CAIRO_STATUS_SUCCESS; + cairo_bool_t foreground_used; /* TODO * extend the glyph cache to support argb glyphs. @@ -313,20 +330,23 @@ _cairo_user_scaled_glyph_init_surface (cairo_user_scaled_font_t *scaled_font, surface, foreground_color, &foreground_used); + } else { status = _cairo_recording_surface_replay (scaled_glyph->recording_surface, surface); + foreground_used = FALSE; } - if (unlikely (status)) { cairo_surface_destroy(surface); return status; } + foreground_used = foreground_used || scaled_glyph->recording_uses_foreground_color; + if (info == CAIRO_SCALED_GLYPH_INFO_COLOR_SURFACE) { _cairo_scaled_glyph_set_color_surface (scaled_glyph, &scaled_font->base, (cairo_image_surface_t *)surface, - foreground_used); + foreground_used ? foreground_color : NULL); surface = NULL; } else { _cairo_scaled_glyph_set_surface (scaled_glyph, @@ -341,6 +361,18 @@ _cairo_user_scaled_glyph_init_surface (cairo_user_scaled_font_t *scaled_font, return status; } +static void +_cairo_user_scaled_glyph_fini (void *abstract_font) +{ + cairo_user_scaled_font_t *scaled_font = abstract_font; + + if (scaled_font->foreground_pattern) + cairo_pattern_destroy (scaled_font->foreground_pattern); + + if (scaled_font->foreground_marker) + cairo_pattern_destroy (scaled_font->foreground_marker); +} + static cairo_int_status_t _cairo_user_scaled_glyph_init (void *abstract_font, cairo_scaled_glyph_t *scaled_glyph, @@ -349,9 +381,21 @@ _cairo_user_scaled_glyph_init (void *abstract_font, { cairo_int_status_t status = CAIRO_STATUS_SUCCESS; cairo_user_scaled_font_t *scaled_font = abstract_font; + cairo_bool_t need_recording = FALSE; if (!scaled_glyph->recording_surface) { - status = _cairo_user_scaled_glyph_init_record_glyph (scaled_font, scaled_glyph); + need_recording = TRUE; + } else { + if ((info & (CAIRO_SCALED_GLYPH_INFO_RECORDING_SURFACE|CAIRO_SCALED_GLYPH_INFO_COLOR_SURFACE)) && + scaled_glyph->recording_uses_foreground_color && + !_cairo_color_equal (foreground_color, &scaled_glyph->foreground_color)) + { + need_recording = TRUE; + } + } + + if (need_recording) { + status = _cairo_user_scaled_glyph_init_record_glyph (scaled_font, scaled_glyph, foreground_color); if (status) return status; } @@ -511,7 +555,7 @@ _cairo_user_font_face_create_for_toy (cairo_toy_font_face_t *toy_face, static const cairo_scaled_font_backend_t _cairo_user_scaled_font_backend = { CAIRO_FONT_TYPE_USER, - NULL, /* scaled_font_fini */ + _cairo_user_scaled_glyph_fini, _cairo_user_scaled_glyph_init, _cairo_user_text_to_glyphs, _cairo_user_ucs4_to_index, @@ -553,6 +597,10 @@ _cairo_user_font_face_scaled_font_create (void *abstract_ return status; } + user_scaled_font->foreground_pattern = NULL; + user_scaled_font->foreground_marker = cairo_pattern_create_rgb (0, 0, 0); + user_scaled_font->foreground_marker->is_userfont_foreground = TRUE; + /* XXX metrics hinting? */ /* compute a normalized version of font scale matrix to compute @@ -601,7 +649,7 @@ _cairo_user_font_face_scaled_font_create (void *abstract_ cairo_surface_t *recording_surface; cairo_t *cr; - recording_surface = _cairo_user_scaled_font_create_recording_surface (user_scaled_font, FALSE); + recording_surface = _cairo_user_scaled_font_create_recording_surface (user_scaled_font, FALSE, NULL); cr = _cairo_user_scaled_font_create_recording_context (user_scaled_font, recording_surface, FALSE); cairo_surface_destroy (recording_surface); @@ -1056,3 +1104,119 @@ cairo_user_font_face_get_unicode_to_glyph_func (cairo_font_face_t *font_face) user_font_face = (cairo_user_font_face_t *) font_face; return user_font_face->scaled_font_methods.unicode_to_glyph; } + +/** + * cairo_user_scaled_font_get_foreground_marker: + * @scaled_font: A user scaled font + * + * Gets the foreground pattern of the glyph currently being + * rendered. A #cairo_user_scaled_font_render_glyph_func_t function + * that has been set with + * cairo_user_font_face_set_render_color_glyph_func() may call this + * function to retrieve the current foreground pattern for the glyph + * being rendered. The function should not be called outside of a + * cairo_user_font_face_set_render_color_glyph_func() callback. + * + * The foreground marker pattern contains an internal marker to + * indicate that it is to be substituted with the current source when + * rendered to a surface. Querying the foreground marker will reveal a + * solid black color, however this is not representative of the color + * that will actually be used. Similarly, setting a solid black color + * will render black, not the foreground pattern when the glyph is + * painted to a surface. Using the foreground marker as the source + * instead of cairo_user_scaled_font_get_foreground_source() in a + * color render callback has the following benefits: + * + * 1. Cairo only needs to call the render callback once as it can + * cache the recording. Cairo will substitute the actual foreground + * color when rendering the recording. + * + * 2. On backends that have the concept of a foreground color in fonts such as + * PDF, PostScript, and SVG, cairo can generate more optimal + * output. The glyph can be included in an embedded font. + * + * The one drawback of the using foreground marker is the render + * callback can not access the color components of the pattern as the + * actual foreground pattern is not available at the time the render + * callback is invoked. If the render callback needs to query the + * foreground pattern, use + * cairo_user_scaled_font_get_foreground_source(). + * + * If the render callback simply wants to call cairo_set_source() with + * the foreground pattern, + * cairo_user_scaled_font_get_foreground_marker() is the preferred + * function to use as it results in better performance than + * cairo_user_scaled_font_get_foreground_source(). + * + * Return value: the current foreground source marker pattern. This + * object is owned by cairo. This object must not be modified or used + * outside of a color render callback. To keep a reference to it, + * you must call cairo_pattern_reference(). + * + * Since: 1.18 + **/ +cairo_pattern_t * +cairo_user_scaled_font_get_foreground_marker (cairo_scaled_font_t *scaled_font) +{ + cairo_user_scaled_font_t *user_scaled_font; + + if (scaled_font->backend != &_cairo_user_scaled_font_backend) + return _cairo_pattern_create_in_error (CAIRO_STATUS_FONT_TYPE_MISMATCH); + + user_scaled_font = (cairo_user_scaled_font_t *)scaled_font; + return user_scaled_font->foreground_marker; +} + +/** + * cairo_user_scaled_font_get_foreground_source: + * @scaled_font: A user scaled font + * + * Gets the foreground pattern of the glyph currently being + * rendered. A #cairo_user_scaled_font_render_glyph_func_t function + * that has been set with + * cairo_user_font_face_set_render_color_glyph_func() may call this + * function to retrieve the current foreground pattern for the glyph + * being rendered. The function should not be called outside of a + * cairo_user_font_face_set_render_color_glyph_func() callback. + * + * This function returns the current source at the time the glyph is + * rendered. Compared with + * cairo_user_scaled_font_get_foreground_marker(), this function + * returns the actual source pattern that will be used to render the + * glyph. The render callback is free to query the pattern and + * extract color components or other pattern data. For example if the + * render callback wants to create a gradient stop based on colors in + * the foreground source pattern, it will need to use this function in + * order to be able to query the colors in the foreground pattern. + * + * While this function does not have the restrictions on using the + * pattern that cairo_user_scaled_font_get_foreground_marker() has, it + * does incur a performance penalty. If a render callback calls this + * function: + * + * 1. Cairo will call the render callback whenever the current pattern + * of the context in which the glyph is rendered changes. + * + * 2. On backends that support font embedding (PDF, PostScript, and + * SVG), cairo can not embed this glyph in a font. Instead the glyph + * will be emitted as an image or sequence of drawing operations each + * time it is used. + * + * Return value: the current foreground source pattern. This object is + * owned by cairo. To keep a reference to it, you must call + * cairo_pattern_reference(). + * + * Since: 1.18 + **/ +cairo_pattern_t * +cairo_user_scaled_font_get_foreground_source (cairo_scaled_font_t *scaled_font) +{ + cairo_user_scaled_font_t *user_scaled_font; + + if (scaled_font->backend != &_cairo_user_scaled_font_backend) + return _cairo_pattern_create_in_error (CAIRO_STATUS_FONT_TYPE_MISMATCH); + + user_scaled_font = (cairo_user_scaled_font_t *)scaled_font; + user_scaled_font->foreground_colors_used = TRUE; + return user_scaled_font->foreground_pattern; +} diff --git a/src/cairo.h b/src/cairo.h index c74d7c2c5..a9b423b28 100644 --- a/src/cairo.h +++ b/src/cairo.h @@ -1815,25 +1815,14 @@ typedef cairo_status_t (*cairo_user_scaled_font_init_func_t) (cairo_scaled_font_ * cairo_user_font_face_set_render_glyph_func(), the result is * undefined if any source other than the default source on @cr is * used. That means, glyph bitmaps should be rendered using - * cairo_mask() instead of cairo_paint(). When this callback is set with - * cairo_user_font_face_set_render_color_glyph_func(), setting the - * source is a valid operation. + * cairo_mask() instead of cairo_paint(). * * When this callback is set with * cairo_user_font_face_set_render_color_glyph_func(), the default - * source is the current source color of the context that is rendering - * the user font. That is, the same color a non-color user font will - * be rendered in. In most cases the callback will want to set a - * specific color. If the callback wishes to use the current context - * color after using another source, it should retain a reference to - * the source or use cairo_save()/cairo_restore() prior to changing - * the source. Note that the default source contains an internal - * marker to indicate that it is to be substituted with the current - * context source color when rendered to a surface. Querying the - * default source pattern will reveal a solid black color, however - * this is not representative of the color that will actually be - * used. Similarly, setting a solid black color will render black, not - * the current context source when the glyph is painted to a surface. + * source is black. Setting the source is a valid + * operation. cairo_user_scaled_font_get_foreground_marker() or + * cairo_user_scaled_font_get_foreground_source() may be called to + * obtain the current source at the time the glyph is rendered. * * Other non-default settings on @cr include a font size of 1.0 (given that * it is set up to be in font space), and font options corresponding to @@ -1856,10 +1845,13 @@ typedef cairo_status_t (*cairo_user_scaled_font_init_func_t) (cairo_scaled_font_ * Where both color and non-color callbacks has been set using * cairo_user_font_face_set_render_color_glyph_func(), and * cairo_user_font_face_set_render_glyph_func(), the color glyph - * callback may return %CAIRO_STATUS_USER_FONT_NOT_IMPLEMENTED if the - * glyph is not a color glyph. This is the only case in which the - * %CAIRO_STATUS_USER_FONT_NOT_IMPLEMENTED may be returned from a - * render callback. + * callback will be called first. If the color glyph callback returns + * %CAIRO_STATUS_USER_FONT_NOT_IMPLEMENTED, any drawing operations are + * discarded and the non-color callback will be called. This is the + * only case in which the %CAIRO_STATUS_USER_FONT_NOT_IMPLEMENTED may + * be returned from a render callback. This fallback sequence allows a + * user font face to contain a combination of both color and non-color + * glyphs. * * Returns: %CAIRO_STATUS_SUCCESS upon success, * %CAIRO_STATUS_USER_FONT_NOT_IMPLEMENTED if fallback options should be tried, @@ -2027,6 +2019,11 @@ cairo_user_font_face_get_text_to_glyphs_func (cairo_font_face_t *font_face); cairo_public cairo_user_scaled_font_unicode_to_glyph_func_t cairo_user_font_face_get_unicode_to_glyph_func (cairo_font_face_t *font_face); +cairo_public cairo_pattern_t * +cairo_user_scaled_font_get_foreground_marker (cairo_scaled_font_t *scaled_font); + +cairo_public cairo_pattern_t * +cairo_user_scaled_font_get_foreground_source (cairo_scaled_font_t *scaled_font); /* Query functions */ diff --git a/src/cairoint.h b/src/cairoint.h index 65bc16f53..af2501057 100644 --- a/src/cairoint.h +++ b/src/cairoint.h @@ -1292,13 +1292,14 @@ _cairo_scaled_glyph_set_path (cairo_scaled_glyph_t *scaled_glyph, cairo_private void _cairo_scaled_glyph_set_recording_surface (cairo_scaled_glyph_t *scaled_glyph, cairo_scaled_font_t *scaled_font, - cairo_surface_t *recording_surface); + cairo_surface_t *recording_surface, + const cairo_color_t *foreground_color); 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_bool_t uses_foreground_color); + const cairo_color_t *foreground_color); cairo_private cairo_int_status_t _cairo_scaled_glyph_lookup (cairo_scaled_font_t *scaled_font, diff --git a/src/win32/cairo-dwrite-font.cpp b/src/win32/cairo-dwrite-font.cpp index 764835bc8..f0657d636 100644 --- a/src/win32/cairo-dwrite-font.cpp +++ b/src/win32/cairo-dwrite-font.cpp @@ -1065,7 +1065,7 @@ _cairo_dwrite_scaled_font_init_glyph_color_surface(cairo_dwrite_scaled_font_t *s _cairo_scaled_glyph_set_color_surface (scaled_glyph, &scaled_font->base, (cairo_image_surface_t *) image, - uses_foreground_color); + uses_foreground_color ? foreground_color : NULL); scaled_glyph->color_glyph = TRUE; scaled_glyph->color_glyph_set = TRUE; From f35f757e8f8e19fa1a3ff656f3a10ee745ad00ec Mon Sep 17 00:00:00 2001 From: Adrian Johnson Date: Sun, 22 Jan 2023 13:27:43 +1030 Subject: [PATCH 2/2] Update user font tests to test foreground colors --- .../reference/user-font-color.image16.ref.png | Bin 4138 -> 9018 bytes test/reference/user-font-color.pdf.ref.png | Bin 3999 -> 7745 bytes test/reference/user-font-color.quartz.ref.png | Bin 4770 -> 9397 bytes .../user-font-color.recording.ref.png | Bin 5582 -> 10758 bytes test/reference/user-font-color.ref.png | Bin 4852 -> 9386 bytes .../user-font-color.script.xfail.png | Bin 3346 -> 9143 bytes test/reference/user-font-color.svg.xfail.png | Bin 0 -> 10362 bytes test/reference/user-font-color.xcb.ref.png | Bin 0 -> 9298 bytes test/reference/user-font-color.xlib.ref.png | Bin 0 -> 9298 bytes .../user-font-proxy.pdf.argb32.ref.png | Bin 10309 -> 10978 bytes .../user-font-proxy.pdf.rgb24.ref.png | Bin 10309 -> 10978 bytes test/reference/user-font-proxy.ref.png | Bin 16961 -> 20856 bytes test/reference/user-font-proxy.svg.ref.png | Bin 16938 -> 20847 bytes test/reference/user-font.quartz.ref.png | Bin 9865 -> 10533 bytes test/reference/user-font.recording.ref.png | Bin 12398 -> 13876 bytes test/reference/user-font.ref.png | Bin 9867 -> 10557 bytes test/user-font-color.c | 232 +++++++++++------- test/user-font-proxy.c | 33 ++- test/user-font.c | 49 ++-- 19 files changed, 196 insertions(+), 118 deletions(-) create mode 100644 test/reference/user-font-color.svg.xfail.png create mode 100644 test/reference/user-font-color.xcb.ref.png create mode 100644 test/reference/user-font-color.xlib.ref.png diff --git a/test/reference/user-font-color.image16.ref.png b/test/reference/user-font-color.image16.ref.png index 6e3fe434c2034f730e301559169d708f7379908d..25a95ddaca50651c576e4c7bb0601dc8b24c288b 100644 GIT binary patch literal 9018 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 V`R!-F{}%v+%=`cV literal 4138 zcmb7Hc{o(>`=0hJg;FGyrD!ZeS;mrmkR>})$V4Hs@4KY=G$O@dFrh-$G1w4|J$<&nT1If&SYPKd`bbiwV|Abpre;V_f zQl4l#-@qd(tq_Qr9CU2#(sQWw$}&-sz}gMLI7 zNgGiZX3z&!)ml^~{eyz8>YU-=OF4Z40FZwccA%RUqqNM$p0c2%VlI2oeMdVA0Pr4u zB?$mL<$ZkX5CHI8dzu3P5IHJj&W?+I4`Z+Mr08dE7xvxwH1gl~Qghs}?h%oIRu#%V zmnG%D5C6~PxX!ZxfcD9*%LGYLj%o5CfcAC6Hq)bm$xcG%Vq&R0;ZcR;v%#)g3Up{? z>gqosG1ZUIr}!$(YH|C_c-)if6sMR?0!R4X#S}+BXhj!Zam2gxrI+tI2KV zsabEHexe;^vaygvIe@>+ng z$DFKaNlkz<(fA{A9H>?@5gw>cnG~^4XyKqcPyL8B9LwX1)Nt01-nVq%3BN^CawL*} zs~!=_(F}JS8qA z)_#qU1FR(&O$=C@xj{3KCDttN+yLcgYD9aW9Ga;{{I*(kW=`vY3m**dTL9IGJYxd% z71l}hk!w&&e&e;3Iv#f%OD!8s60fn^D;fD8V4~4P)yJWP)3h%CqjfU*S>@@z!lJ+d zVdJ&JU>N4O#zRwO3Kw9{Wgu*z+jOdwESh0Wxg?Ad;F#y59RtMpcR9#iSAdtT3^XS9 zBp%&FFb)IqGG}Blz5Er8@uvx&kF5xMEUM)VJz>tqA4C@C4b^&=JX-94%~dIEWM!#7 zoO`OeWzf9$Ztv6fCsw`BPdiVkbadah1D}}HI%IGQLJktgXk)y*Gu>q|RT?X-Q&^)I zx{bj>r6%uT$z$ejnO!se%?(*y&vS(MEP?yJ9{VlB(##bqG)B2)=QVmq0U5vs$<&W> z{?*~?jR#hy`6>$)2314!qzlsntXc}KJ|wU37iEgiX5b^DT`*ScDIYn8skQ&vv+OB_ z?3z)?YRc|biCo<3{xi3+WvITNchVp&Rw^<}Lm{WD|Idc|dR9$jixe|`N2`yzY}UIk zMtHzagZm30&2wd};bna)&lnM1F3bAex%YYxe6B^hS(en)RnzM28=LLMq!Tb)VAMn` zy|uUNdtC=g0LqGRrOkG1+APJ`Ua=)>!lcLLJRIbrn}XKn;_HbPl0<zy>z90>OFX=c zRmC0OV;Cfiz8kiGRo6+I)yb}>E20_d(u*(B%M)s}90iV#;~kiVA;mnk)EL#V7v>VvF?=utfCi_XLv|v; zY2SUPJfCQP9{0$Kgm;Gyhpu`Ho6PsK#2THKqvrc}QA-!W;Gi!|Qf3lUKkBmzh3lcL z#4E`gHuZ~>pCDF!Jr6Hte!((G##^5=s&jJta{6Wl7rYj2x|hOH)bh|ireHyOti#X7 z=?UyFQ_ulADnt!!1tc}WmSBIQmAX-%uT!|DL2OKz8x`-TRMJ%AV`S{bho2;u;9wy) z@!8$wO}1X@lm0tqBZlR?>FcjuC9B;BvM47ya2uDfu??W@R;<@;gq$EGO7u9Jp=vZn z5EWkbji354n9p16X_;0-ba@B3q7DXZ8xBe|{K8)3ej|%c9&-!9)D9zq{xU=Fzq#vL zn&akErRn@BX(Jg3gseSrMx@$s%k z7*T**jKF*3hR3Ze8OK`vtA#mlL1MUsKL2WR+1C5m-G}D0tSv(Sp@&T_iF(nQ8Orpf zUGUkE|9zQKh0C$(J7eG1<}gu8^?5PUQjxKadVIa;uwGM}t$JaOmk-{fIenJ7=AyRb zHMDKqA5+`t5ahPjj`+$NZH5&xy;q?$ryp6LeV_5d3L}=`2pDH%u8kBzrz(ucu7wSBn!CN*rdR zcuECE>|X1^z10w_+Wh0TfDX-k?gl9*;3D>ymeQMF;m-+WE6Q*$8;AJ;~wWH7H^&yP4NTbY&!b(X^WY zMfM+BklY%LX<$7z^upLgEMOe+KTVw9>xOm*x{ot$eTRB@y4CUO_Dh>KyTd2yBz&4> zDO?78Fu~A-{L_hMC(4a;-aNnkNBeZ{e)8aB6#MYe%>BSclRkEBu5Iykh|HMrHS3kU z+EsH`?EV=`Y!ltMI1ickt#16Fz2$&+aW08fN=;sm4_JsP*{+umD;g}C3*0clf>bvc zE6a`avX$!LXioci6k{=o5n!qtb?vICnBke-eJ=SAbI$k(iQXSSmCbEbJe!?bZ>TLN zbxL;fWnW}@OJXALO(2$+b-xb|Si~A%E9yhN^n9)dCKwyub zJdf(M#-FY{+W%NsK3T*?ntq#JW}KUSPe<%F=Eq1lzYQh8v;Y+cB3&kjTwV?ed{jP+ z5+TU*j(%){$Xg5=5hFV&^C#Jcm3`7XI0Y+Z@9ju?kXwwe50&`GsIMM|AU7(_rYs&w(6i?)+ zJnao~b)~N_iroYwfp1|#efsa7%&}%2w=8WTfBO2)u`C3)X9d|(J7Pv8XM7K9lkfOQ zD@bDR1TMMAy3|=UxfUHi;JUxtXfuILxUHN6x_|e=-Z7Chlh{TZR;7&CPgC5c4p2F6 zR*WETbK|vK()-N4Q$o^?8b3rsZZcb?&w^K1yjXYnQfjOw3C*c?<-JM+%7oF8JvVE} zfc1i})~>R~xw=Cl6fQk}CZkQ|rO~tz(PC;b;dEs+=0vtbBA!$`=E`Sj1iXKDinhQ9 zZGt*7qwYX#tkNsesvahj*`2g&*|STVb(LvzlgB zDlLla23Fz0ZR3iqTCY@}w+_Sdj(Mac$Z@w95Cu9d2JQojV)5#)Q8e3ZpZ$?*sFV|5Ce*r z7VgOAI5F_H`)!G00b8*+R7JUAO!p_c^w+?HmttzZZ$6O+k=d#6NqipK5z{?D%|8$q zCG2WPT~Oepk*2)A`ih`lay()ni}JBY2x};}{=tlaiGO6j)qpZq%<12(xa(GJ6EIEu z)WTr@foA-a-B$z5`=JId=~n_y{3#@6s9fyixT*g>M0bpS#|TxI(DIy+DCegVAT}u|>rjtUKT;&m<2(9ick+kG1YZr6=4faAj@euysTNIE z_Qms<`Nq~@B&KviDO~Y46KL=o{74ApTN`;LsnhAjU1q41x6&8Bny{?qdnCRDicj!< zGV^!Pj`!uamxDW~iEM38L>QN@8_q6oLT;(tiE@^gP$00`%ogXLqCS6iTQ9t777q^G zoFb|`i%hDjQ8(k`bML;u*LBC8Q%gf;Z&QBlYr{@2f6gaS2WG#LyEqsv9RWP!kzIUF4J)io<7TH4vbu0X zb}W2GGbrP3pMfjZ>StMyO2F0@X+$v>A;)b%r(MGi{$(i}quh^VmLQukcz<|8TkknA zI7T9JZRQhNyo4lpY@=Z(zCGS2Ims4t{J&i;WJp8;4R}Vp>Ri)^i#}h0yNMsbA<(vZ79R1hIAUg-Ugh)hm5pL?O?vBgUyXJ(xWRiPbA$|hPeYU2>XfY$GqIG&6-t3>R~lnhQv zvyEr@wZ|vewl;_gZ6~lj>{I{LWyPz#nKu9rglR1Jbz0ZI?)3lThNlh=l`pl61J9k~ QVFLn;^vxg@x(}ZH2XysFGXMYp diff --git a/test/reference/user-font-color.pdf.ref.png b/test/reference/user-font-color.pdf.ref.png index 9cb145202fdf597bfd23a93996427b12ae1db9cd..dc0962d7072dcb72b4a0c7c35327b6b0a3a7295e 100644 GIT binary patch literal 7745 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 QAnye02FKM^i#Q*>R literal 3999 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 D?@aF_ diff --git a/test/reference/user-font-color.quartz.ref.png b/test/reference/user-font-color.quartz.ref.png index 712e9a3d95d05f4c644e0443cde7d08ebb6f7318..bb76c16abc552871a6c3d3c4f48fb837d3ea3266 100644 GIT binary patch literal 9397 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 diff --git a/test/reference/user-font-color.recording.ref.png b/test/reference/user-font-color.recording.ref.png index 68c058adc16f56db750d8f54949b5ff4310afbe8..e6f9f389e8191834269fb0ddec2fc4c64b92d854 100644 GIT binary patch literal 10758 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 VKXNI79T*JKyKH=^M(g^6{|BM@jHmzr literal 4852 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 KtwhE4#eV=zX2tUW literal 3346 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 F{{nO1flB}Y diff --git a/test/reference/user-font-color.svg.xfail.png b/test/reference/user-font-color.svg.xfail.png new file mode 100644 index 0000000000000000000000000000000000000000..fd10d6653f81f34340e849c8d3ad65f112300928 GIT binary patch literal 10362 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 literal 10309 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 Gz<&XXe;Wq? diff --git a/test/reference/user-font-proxy.pdf.rgb24.ref.png b/test/reference/user-font-proxy.pdf.rgb24.ref.png index 749c61bcde45bf420ece403412c05c50c61244ec..bda5eec9d6cb3a7966360637aae90348ee68f842 100644 GIT binary patch literal 10978 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 literal 10309 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 Gz<&XXe;Wq? diff --git a/test/reference/user-font-proxy.ref.png b/test/reference/user-font-proxy.ref.png index 95c04633f367198c55d4c22efe8249a4bb366bc4..65014847adf185c8d4395205cfc4dac31766b35d 100644 GIT binary patch literal 20856 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 oN&wOW-HyC`E{ofw}&3y{obR1C*^;_W%F@ literal 16961 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 literal 16938 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 WOmnM20Vl~oAWJhl)5`PL;{O*#r5We| diff --git a/test/reference/user-font.recording.ref.png b/test/reference/user-font.recording.ref.png index aefe4c9fece7e1ae837aa216e0e047acdc94fbf6..c1cb2bbc3531c53c41387ac7fa363396ff9d341c 100644 GIT binary patch literal 13876 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 TB9KgAVtT0hSf%8?`5*rQG@e1k literal 9867 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 #include #include #define BORDER 10 #define TEXT_SIZE 64 -#define WIDTH (TEXT_SIZE * 12 + 2*BORDER) -#define HEIGHT (TEXT_SIZE + 2*BORDER) +#define WIDTH (TEXT_SIZE * 11 + 2*BORDER) +#define HEIGHT (4*TEXT_SIZE + 5*BORDER) -#define TEXT "abcdefghijkl" +#define TEXT "abcdefghij" + +/* These characters will be drawn twice with a different foreground color */ +#define FG_TEXT "acfh" + +/* Uppercase draws the same text but forces the use of the non-color + * render callback */ +#define TEXT_NO_COLOR "ABCDEFGHIJ" +#define FG_TEXT_NO_COLOR "ACFH" + +#define TEXT_PATH "aabccdeffghhij" static cairo_status_t @@ -55,40 +66,60 @@ test_scaled_font_init (cairo_scaled_font_t *scaled_font, } static void -render_glyph_solid (cairo_t *cr, double width, double height, cairo_bool_t color) +render_glyph_solid (cairo_t *cr, + double width, + double height, + cairo_bool_t color, + cairo_scaled_font_t *scaled_font) { - cairo_pattern_t *pattern = cairo_pattern_reference(cairo_get_source (cr)); - if (color) - cairo_set_source_rgba (cr, 0, 1, 1, 0.5); + cairo_set_source_rgba (cr, 0.7, 0.2, 0.1, 0.9); cairo_rectangle (cr, 0, 0, width/2, height/2); cairo_fill (cr); - /* Draw the middle rectangle using the foreground color */ - if (color) - cairo_set_source (cr, pattern); + if (color) { + if (scaled_font) + cairo_set_source (cr, cairo_user_scaled_font_get_foreground_marker (scaled_font)); + else + cairo_set_source_rgba (cr, 0.2, 0.5, 0.3, 0.9); + } cairo_rectangle (cr, width/4, height/4, width/2, height/2); cairo_fill (cr); if (color) - cairo_set_source_rgba (cr, 1, 1, 0, 0.5); + cairo_set_source_rgba (cr, 0.2, 0.3, 0.5, 0.9); cairo_rectangle (cr, width/2, height/2, width/2, height/2); cairo_fill (cr); - - cairo_pattern_destroy (pattern); } static void -render_glyph_linear (cairo_t *cr, double width, double height, cairo_bool_t color) +render_glyph_linear (cairo_t *cr, + double width, + double height, + cairo_bool_t color, + cairo_scaled_font_t *scaled_font) { cairo_pattern_t *pat; + cairo_pattern_t *fg; pat = cairo_pattern_create_linear (0.0, 0.0, width, height); - cairo_pattern_add_color_stop_rgba (pat, 0, 1, 0, 0, 1); - cairo_pattern_add_color_stop_rgba (pat, 0.5, 0, 1, 0, color ? 0.5 : 1); - cairo_pattern_add_color_stop_rgba (pat, 1, 0, 0, 1, 1); - cairo_set_source (cr, pat); + if (scaled_font) { + double r, g, b, a; + fg = cairo_user_scaled_font_get_foreground_source (scaled_font); + if (cairo_pattern_get_rgba (fg, &r, &g, &b, &a) != CAIRO_STATUS_SUCCESS) { + r = g = b = 0; + a = 1; + } + cairo_pattern_add_color_stop_rgba (pat, 0, r, g, b, a); + cairo_pattern_add_color_stop_rgb (pat, 1, 0, 0, 1); + } else { + cairo_pattern_add_color_stop_rgb (pat, 0, 1, 0.4, 0.2); + cairo_pattern_add_color_stop_rgb (pat, 0.5, 0.2, 1, 0.4); + cairo_pattern_add_color_stop_rgb (pat, 1, 0.2, 0.3, 1); + } + + cairo_set_source (cr, pat); cairo_rectangle (cr, 0, 0, width, height); cairo_fill (cr); } @@ -102,23 +133,23 @@ render_glyph_text (cairo_t *cr, double width, double height, cairo_bool_t color) cairo_set_font_size(cr, 0.5); if (color) - cairo_set_source_rgb (cr, 0.5, 0.5, 0); + cairo_set_source_rgb (cr, 0.5, 0.7, 0); cairo_move_to (cr, width*0.1, height/2); cairo_show_text (cr, "a"); if (color) - cairo_set_source_rgb (cr, 0, 0.5, 0.5); + cairo_set_source_rgb (cr, 0, 0.5, 0.7); cairo_move_to (cr, width*0.4, height*0.9); cairo_show_text (cr, "z"); } static cairo_status_t -test_scaled_font_render_color_glyph (cairo_scaled_font_t *scaled_font, - unsigned long glyph, - cairo_t *cr, - cairo_text_extents_t *metrics) +test_scaled_font_render_glyph_common (cairo_scaled_font_t *scaled_font, + unsigned long glyph, + cairo_t *cr, + cairo_text_extents_t *metrics, + cairo_bool_t color) { - cairo_status_t status = CAIRO_STATUS_SUCCESS; double width = 0.5; double height = 0.8; @@ -126,101 +157,80 @@ test_scaled_font_render_color_glyph (cairo_scaled_font_t *scaled_font, cairo_translate (cr, 0.125, -0.6); switch (glyph) { case 'a': - render_glyph_solid (cr, width, height, TRUE); + render_glyph_solid (cr, width, height, color, scaled_font); break; case 'b': - render_glyph_linear (cr, width, height, TRUE); + render_glyph_solid (cr, width, height, color, NULL); break; case 'c': - render_glyph_text (cr, width, height, TRUE); + render_glyph_linear (cr, width, height, color, scaled_font); break; - - /* Ensure that the following glyphs are rendered with - * test_scaled_font_render_glyph() even if we draw - * something before returning. - */ case 'd': - render_glyph_solid (cr, width, height, TRUE); - status = CAIRO_STATUS_USER_FONT_NOT_IMPLEMENTED; + render_glyph_linear (cr, width, height, color, NULL); break; case 'e': - render_glyph_linear (cr, width, height, TRUE); - status = CAIRO_STATUS_USER_FONT_NOT_IMPLEMENTED; + render_glyph_text (cr, width, height, color); break; case 'f': - render_glyph_solid (cr, width, height, TRUE); - status = CAIRO_STATUS_USER_FONT_NOT_IMPLEMENTED; + cairo_push_group (cr); + render_glyph_solid (cr, width, height, color, scaled_font); + cairo_pop_group_to_source (cr); + cairo_paint (cr); break; case 'g': cairo_push_group (cr); - render_glyph_solid (cr, width, height, TRUE); + render_glyph_solid (cr, width, height, color, NULL); cairo_pop_group_to_source (cr); cairo_paint (cr); break; case 'h': cairo_push_group (cr); - render_glyph_linear (cr, width, height, TRUE); + render_glyph_linear (cr, width, height, color, scaled_font); cairo_pop_group_to_source (cr); cairo_paint (cr); break; case 'i': cairo_push_group (cr); - render_glyph_text (cr, width, height, TRUE); + render_glyph_linear (cr, width, height, color, NULL); cairo_pop_group_to_source (cr); cairo_paint (cr); break; - default: - status = CAIRO_STATUS_USER_FONT_NOT_IMPLEMENTED; - } - - return status; -} - -static cairo_status_t -test_scaled_font_render_glyph (cairo_scaled_font_t *scaled_font, - unsigned long glyph, - cairo_t *cr, - cairo_text_extents_t *metrics) -{ - double width = 0.5; - double height = 0.8; - metrics->x_advance = 0.75; - cairo_translate (cr, 0.125, -0.6); - switch (glyph) { - case 'd': - render_glyph_solid (cr, width, height, FALSE); - break; - case 'e': - render_glyph_linear (cr, width, height, FALSE); - break; - case 'f': - render_glyph_text (cr, width, height, FALSE); - break; case 'j': cairo_push_group (cr); - render_glyph_solid (cr, width, height, FALSE); + render_glyph_text (cr, width, height, color); cairo_pop_group_to_source (cr); cairo_paint (cr); break; - case 'k': - cairo_push_group (cr); - render_glyph_linear (cr, width, height, FALSE); - cairo_pop_group_to_source (cr); - cairo_paint (cr); - break; - case 'l': - cairo_push_group (cr); - render_glyph_text (cr, width, height, FALSE); - cairo_pop_group_to_source (cr); - cairo_paint (cr); - break; - default: - return CAIRO_STATUS_USER_FONT_NOT_IMPLEMENTED; } return CAIRO_STATUS_SUCCESS; } +static cairo_status_t +test_scaled_font_render_color_glyph_callback (cairo_scaled_font_t *scaled_font, + unsigned long glyph, + cairo_t *cr, + cairo_text_extents_t *metrics) +{ + if (isupper(glyph)) + return CAIRO_STATUS_USER_FONT_NOT_IMPLEMENTED; + + return test_scaled_font_render_glyph_common (scaled_font, glyph, cr, metrics, TRUE); +} + +static cairo_status_t +test_scaled_font_render_glyph_callback (cairo_scaled_font_t *scaled_font, + unsigned long glyph, + cairo_t *cr, + cairo_text_extents_t *metrics) +{ + int c = glyph; + if (isupper(c)) + c = tolower(c); + + return test_scaled_font_render_glyph_common (scaled_font, c, cr, metrics, FALSE); +} + static cairo_status_t _user_font_face_create (cairo_font_face_t **out) { @@ -229,13 +239,35 @@ _user_font_face_create (cairo_font_face_t **out) user_font_face = cairo_user_font_face_create (); cairo_user_font_face_set_init_func (user_font_face, test_scaled_font_init); - cairo_user_font_face_set_render_color_glyph_func (user_font_face, test_scaled_font_render_color_glyph); - cairo_user_font_face_set_render_glyph_func (user_font_face, test_scaled_font_render_glyph); + cairo_user_font_face_set_render_color_glyph_func (user_font_face, + test_scaled_font_render_color_glyph_callback); + cairo_user_font_face_set_render_glyph_func (user_font_face, + test_scaled_font_render_glyph_callback); *out = user_font_face; return CAIRO_STATUS_SUCCESS; } +/* Any text characters that are in fg_text will be drawn with a different color */ +static void +draw_line (cairo_t *cr, const char *text, const char *fg_text) +{ + char buf[10]; + + for (unsigned i = 0; i < strlen(text); i++) { + buf[0] = text[i]; + buf[1] = 0; + + if (strchr (fg_text, text[i])) { + cairo_set_source_rgb (cr, 1, 0, 0); + cairo_show_text (cr, buf); + } + + cairo_set_source_rgb (cr, 0, 1, 0); + cairo_show_text (cr, buf); + } +} + static cairo_test_status_t draw (cairo_t *cr, int width, int height) { @@ -244,6 +276,7 @@ draw (cairo_t *cr, int width, int height) cairo_font_extents_t font_extents; cairo_text_extents_t extents; cairo_status_t status; + cairo_font_options_t *font_options; cairo_set_source_rgb (cr, 1, 1, 1); cairo_paint (cr); @@ -285,10 +318,31 @@ draw (cairo_t *cr, int width, int height) cairo_set_line_width (cr, 2); cairo_stroke (cr); - /* text in color */ - cairo_set_source_rgb (cr, 0, 0.3, 0); + /* Line 1: text in color */ cairo_move_to (cr, BORDER, BORDER + font_extents.ascent); - cairo_show_text (cr, text); + draw_line (cr, TEXT, FG_TEXT); + + /* Line 2: text in non-color (color render callback returns + * CAIRO_STATUS_USER_FONT_NOT_IMPLEMENTED. + */ + cairo_move_to (cr, BORDER, BORDER + font_extents.height + 1*BORDER + font_extents.ascent); + draw_line (cr, TEXT_NO_COLOR, FG_TEXT_NO_COLOR); + + /* Line 3: Filled version of color text in blue */ + cairo_move_to (cr, BORDER, BORDER + 2*font_extents.height + 2*BORDER + font_extents.ascent); + cairo_set_source_rgb (cr, 0, 0, 1); + cairo_text_path (cr, TEXT_PATH); + cairo_fill (cr); + + /* Line 4: color glyphs with CAIRO_COLOR_MODE_NO_COLOR font option. */ + font_options = cairo_font_options_create (); + cairo_get_font_options (cr, font_options); + cairo_font_options_set_color_mode (font_options, CAIRO_COLOR_MODE_NO_COLOR); + cairo_set_font_options (cr, font_options); + cairo_font_options_destroy (font_options); + + cairo_move_to (cr, BORDER, BORDER + 3*font_extents.height + 3*BORDER + font_extents.ascent); + draw_line (cr, TEXT, FG_TEXT); return CAIRO_TEST_SUCCESS; } diff --git a/test/user-font-proxy.c b/test/user-font-proxy.c index e4063f0eb..42f51b602 100644 --- a/test/user-font-proxy.c +++ b/test/user-font-proxy.c @@ -40,7 +40,9 @@ #else #define HEIGHT WIDTH #endif -#define TEXT "geez... cairo user-font" + +#define TEXT1 "cairo user-font." +#define TEXT2 " zg" static cairo_user_data_key_t fallback_font_key; @@ -148,11 +150,16 @@ _user_font_face_create (cairo_font_face_t **out) static cairo_test_status_t draw (cairo_t *cr, int width, int height) { - const char text[] = TEXT; cairo_font_extents_t font_extents; cairo_text_extents_t extents; cairo_font_face_t *font_face; cairo_status_t status; + char full_text[100]; + + strcpy(full_text, TEXT1); + strcat(full_text, TEXT2); + strcat(full_text, TEXT2); + strcat(full_text, TEXT2); cairo_set_source_rgb (cr, 1, 1, 1); cairo_paint (cr); @@ -174,7 +181,7 @@ draw (cairo_t *cr, int width, int height) cairo_set_font_size (cr, TEXT_SIZE); cairo_font_extents (cr, &font_extents); - cairo_text_extents (cr, text, &extents); + cairo_text_extents (cr, full_text, &extents); /* logical boundaries in red */ cairo_move_to (cr, 0, BORDER); @@ -199,16 +206,26 @@ draw (cairo_t *cr, int width, int height) cairo_set_line_width (cr, 2); cairo_stroke (cr); - /* text in gray */ - cairo_set_source_rgb (cr, 0, 0, 0); - cairo_move_to (cr, BORDER, BORDER + font_extents.ascent); - cairo_show_text (cr, text); + /* TEXT1 in black */ + cairo_move_to (cr, BORDER, BORDER + font_extents.ascent); + cairo_set_source_rgb (cr, 0, 0, 0); + cairo_show_text (cr, TEXT1); + + /* Draw TEXT2 three times with three different foreground colors. + * This checks that cairo uses the foreground color and does not cache + * glyph images when the foreground color changes. + */ + cairo_show_text (cr, TEXT2); + cairo_set_source_rgb (cr, 0, 0.5, 0); + cairo_show_text (cr, TEXT2); + cairo_set_source_rgb (cr, 0.2, 0.5, 0.5); + cairo_show_text (cr, TEXT2); /* filled version of text in light blue */ cairo_set_source_rgb (cr, 0, 0, 1); cairo_move_to (cr, BORDER, BORDER + font_extents.height + BORDER + font_extents.ascent); - cairo_text_path (cr, text); + cairo_text_path (cr, full_text); cairo_fill (cr); return CAIRO_TEST_SUCCESS; diff --git a/test/user-font.c b/test/user-font.c index d02a90f4d..a8aed23b3 100644 --- a/test/user-font.c +++ b/test/user-font.c @@ -34,7 +34,7 @@ #define BORDER 10 #define TEXT_SIZE 64 -#define WIDTH (TEXT_SIZE * 15 + 2*BORDER) +#define WIDTH (TEXT_SIZE * 16 + 2*BORDER) #ifndef ROTATED #define HEIGHT ((TEXT_SIZE + 2*BORDER)*3) #else @@ -42,7 +42,7 @@ #endif #define TEXT1 "cairo user-font." -#define TEXT2 " zg." +#define TEXT2 " zg" #define END_GLYPH 0 #define STROKE 126 @@ -202,6 +202,24 @@ _user_font_face_create (cairo_font_face_t **out, cairo_bool_t color_render) return CAIRO_STATUS_SUCCESS; } +static void +draw_line (cairo_t *cr) +{ + /* TEXT1 in black */ + cairo_set_source_rgb (cr, 0, 0, 0); + cairo_show_text (cr, TEXT1); + + /* Draw TEXT2 three times with three different foreground colors. + * This checks that cairo uses the foreground color and does not cache + * glyph images when the foreground color changes. + */ + cairo_show_text (cr, TEXT2); + cairo_set_source_rgb (cr, 0, 0.5, 0); + cairo_show_text (cr, TEXT2); + cairo_set_source_rgb (cr, 0.2, 0.5, 0.5); + cairo_show_text (cr, TEXT2); +} + static cairo_test_status_t draw (cairo_t *cr, int width, int height) { @@ -214,6 +232,7 @@ draw (cairo_t *cr, int width, int height) strcpy(full_text, TEXT1); strcat(full_text, TEXT2); strcat(full_text, TEXT2); + strcat(full_text, TEXT2); cairo_set_source_rgb (cr, 1, 1, 1); cairo_paint (cr); @@ -260,21 +279,14 @@ draw (cairo_t *cr, int width, int height) cairo_set_line_width (cr, 2); cairo_stroke (cr); - /* First line. Text in black, except first "zg." in green */ - cairo_set_source_rgb (cr, 0, 0, 0); + /* First line. TEXT1 in black. TEXT2 in different colors. */ cairo_move_to (cr, BORDER, BORDER + font_extents.ascent); - cairo_show_text (cr, TEXT1); - cairo_set_source_rgb (cr, 0, 1, 0); - cairo_show_text (cr, TEXT2); - cairo_set_source_rgb (cr, 0, 0, 0); - cairo_show_text (cr, TEXT2); + draw_line (cr); - /* Now draw the second line using the render_color_glyph callback. The - * output should be the same because same render function is used - * and the render function does not set a color. This exercises - * the paint color glyph with foreground color code path and - * ensures cairo updates the glyph image when the foreground color - * changes. + /* Now draw the second line using the render_color_glyph + * callback. The text should be all black because the default + * color of render function is used instead of the foreground + * color. */ status = _user_font_face_create (&font_face, TRUE); if (status) { @@ -287,13 +299,8 @@ draw (cairo_t *cr, int width, int height) cairo_set_font_size (cr, TEXT_SIZE); - /* text in black, except first "zg." in green */ cairo_move_to (cr, BORDER, BORDER + font_extents.height + 2*BORDER + font_extents.ascent); - cairo_show_text (cr, TEXT1); - cairo_set_source_rgb (cr, 0, 1, 0); - cairo_show_text (cr, TEXT2); - cairo_set_source_rgb (cr, 0, 0, 0); - cairo_show_text (cr, TEXT2); + draw_line (cr); /* Third line. Filled version of text in blue */ cairo_set_source_rgb (cr, 0, 0, 1);