cairo_stroke_extents.Rd
Computes a bounding box in user coordinates covering the area that would be affected, (the "inked" area), by a cairo_stroke() operation given the current path and stroke parameters. If the current path is empty, returns an empty rectangle ((0,0), (0,0)). Surface dimensions and clipping are not taken into account.
cairo_stroke_extents(cr, x1, y1, x2, y2)
cr | [ |
---|---|
x1 | [ |
y1 | [ |
x2 | [ |
y2 | [ |
Note that if the line width is set to exactly zero, then cairo_stroke_extents() will return an empty rectangle. Contrast with cairo_path_extents() which can be used to compute the non-empty bounds as the line width approaches zero.
Note that cairo_stroke_extents() must necessarily do more work to compute the precise inked areas in light of the stroke parameters, so cairo_path_extents() may be more desirable for sake of performance if non-inked path extents are desired.
See cairo_stroke(), cairo_set_line_width(), cairo_set_line_join(), cairo_set_line_cap(), cairo_set_dash(), and cairo_stroke_preserve().
Since: 1.0
C function prototype: void cairo_stroke_extents (cairo_t *cr, double *x1, double *y1, double *x2, double *y2)
Other cairo--:
cairo_append_path()
,
cairo_arc_negative()
,
cairo_arc()
,
cairo_clip_extents()
,
cairo_clip_preserve()
,
cairo_clip()
,
cairo_close_path()
,
cairo_copy_page()
,
cairo_copy_path_flat()
,
cairo_copy_path()
,
cairo_create()
,
cairo_curve_to()
,
cairo_device_to_user_distance()
,
cairo_device_to_user()
,
cairo_fill_extents()
,
cairo_fill_preserve()
,
cairo_fill()
,
cairo_font_extents()
,
cairo_get_antialias()
,
cairo_get_current_point()
,
cairo_get_dash_count()
,
cairo_get_dash()
,
cairo_get_fill_rule()
,
cairo_get_font_face()
,
cairo_get_font_matrix()
,
cairo_get_group_target()
,
cairo_get_line_cap()
,
cairo_get_line_join()
,
cairo_get_line_width()
,
cairo_get_matrix()
,
cairo_get_miter_limit()
,
cairo_get_operator()
,
cairo_get_source()
,
cairo_get_target()
,
cairo_get_tolerance()
,
cairo_has_current_point()
,
cairo_identity_matrix()
,
cairo_in_clip()
,
cairo_in_fill()
,
cairo_in_stroke()
,
cairo_line_to()
,
cairo_mask_surface()
,
cairo_mask()
,
cairo_move_to()
,
cairo_new_path()
,
cairo_new_sub_path()
,
cairo_paint_with_alpha()
,
cairo_paint()
,
cairo_path_extents()
,
cairo_pop_group_to_source()
,
cairo_pop_group()
,
cairo_push_group_with_content()
,
cairo_push_group()
,
cairo_rectangle()
,
cairo_rel_curve_to()
,
cairo_rel_line_to()
,
cairo_rel_move_to()
,
cairo_reset_clip()
,
cairo_restore()
,
cairo_rotate()
,
cairo_save()
,
cairo_scale()
,
cairo_select_font_face()
,
cairo_set_antialias()
,
cairo_set_dash()
,
cairo_set_fill_rule()
,
cairo_set_font_face()
,
cairo_set_font_matrix()
,
cairo_set_font_size()
,
cairo_set_line_cap()
,
cairo_set_line_join()
,
cairo_set_line_width()
,
cairo_set_matrix()
,
cairo_set_miter_limit()
,
cairo_set_operator()
,
cairo_set_source_rgba()
,
cairo_set_source_rgb()
,
cairo_set_source_surface()
,
cairo_set_source()
,
cairo_set_tolerance()
,
cairo_show_page()
,
cairo_show_text()
,
cairo_status()
,
cairo_stroke_preserve()
,
cairo_stroke()
,
cairo_tag_begin()
,
cairo_tag_end()
,
cairo_text_extents()
,
cairo_text_path()
,
cairo_transform()
,
cairo_translate()
,
cairo_user_to_device_distance()
,
cairo_user_to_device()