~ubuntu-branches/ubuntu/intrepid/libcairo/intrepid

« back to all changes in this revision

Viewing changes to doc/public/html/cairo-cairo-t.html

  • Committer: Bazaar Package Importer
  • Author(s): Sebastien Bacher, Fabien Tassin
  • Date: 2007-12-21 11:46:45 UTC
  • mfrom: (1.1.17 upstream)
  • Revision ID: james.westby@ubuntu.com-20071221114645-v1bx91voavqus4uw
Tags: 1.5.4-0ubuntu1
* debian/rules:
  - updated shlibs version

[ Fabien Tassin ]
* new upstream snapshot: 1.5.4
* Drop patches no longer useful:
  - debian/patches/91_malloc-overflow-fixes.dpatch
  - debian/patches/90_from_git_fix_zero_sized_bitmap_handling.dpatch
  - debian/patches/90_from_git_fix_not_available_glyph_handling.dpatch
* Replace Ubuntu's lcd patch by patch from Freedesktop bug #10301
  - drop debian/patches/02-cairo-1.4.8-lcd-filter-2.dpatch
  - add debian/patches/02-lcd_filter_freedesktop_bug10301.patch
* Move from 16.16 to 24.8 fixed point precision
  - add debian/patches/01-fixed_point_24.8_precision.dpatch
* Add libpixman-1-dev (>= 0.9.4) to Build-deps
  - update debian/control
* Update debian/patches/00list

Show diffs side-by-side

added added

removed removed

Lines of Context:
3
3
<head>
4
4
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
5
5
<title>cairo_t</title>
6
 
<meta name="generator" content="DocBook XSL Stylesheets V1.72.0">
 
6
<meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
7
7
<link rel="start" href="index.html" title="Cairo: A Vector Graphics Library">
8
8
<link rel="up" href="Drawing.html" title="Drawing">
9
9
<link rel="prev" href="Drawing.html" title="Drawing">
10
10
<link rel="next" href="cairo-Paths.html" title="Paths">
11
 
<meta name="generator" content="GTK-Doc V1.8 (XML mode)">
 
11
<meta name="generator" content="GTK-Doc V1.9 (XML mode)">
12
12
<link rel="stylesheet" href="style.css" type="text/css">
13
13
<link rel="part" href="pt01.html" title="Part&#160;I.&#160;Tutorial">
14
14
<link rel="part" href="pt02.html" title="Part&#160;II.&#160;Reference">
30
30
<th width="100%" align="center">Cairo: A Vector Graphics Library</th>
31
31
<td><a accesskey="n" href="cairo-Paths.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
32
32
</tr>
33
 
<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2574632" class="shortcut">Top</a>
 
33
<tr><td colspan="5" class="shortcuts"><nobr><a href="#id2592055" class="shortcut">Top</a>
34
34
                  &#160;|&#160;
35
 
                  <a href="#id2613026" class="shortcut">Description</a></nobr></td></tr>
 
35
                  <a href="#id2630498" class="shortcut">Description</a></nobr></td></tr>
36
36
</table>
37
37
<div class="refentry" lang="en">
38
38
<a name="cairo-cairo-t"></a><div class="titlepage"></div>
39
39
<div class="refnamediv"><table width="100%"><tr>
40
40
<td valign="top">
41
41
<h2>
42
 
<a name="id2574632"></a><span class="refentrytitle">cairo_t</span>
 
42
<a name="id2592055"></a><span class="refentrytitle">cairo_t</span>
43
43
</h2>
44
44
<p>cairo_t &#8212; The cairo drawing context</p>
45
45
</td>
51
51
 
52
52
 
53
53
 
54
 
typedef             <a href="cairo-cairo-t.html#cairo-t">cairo_t</a>;
55
 
<a href="cairo-cairo-t.html#cairo-t">cairo_t</a>*            <a href="cairo-cairo-t.html#cairo-create">cairo_create</a>                        (<a href="cairo-cairo-surface-t.html#cairo-surface-t">cairo_surface_t</a> *target);
56
 
<a href="cairo-cairo-t.html#cairo-t">cairo_t</a>*            <a href="cairo-cairo-t.html#cairo-reference">cairo_reference</a>                     (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
57
 
void                <a href="cairo-cairo-t.html#cairo-destroy">cairo_destroy</a>                       (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
58
 
<a href="cairo-Error-Handling.html#cairo-status-t">cairo_status_t</a>      <a href="cairo-cairo-t.html#cairo-status">cairo_status</a>                        (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
59
 
void                <a href="cairo-cairo-t.html#cairo-save">cairo_save</a>                          (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
60
 
void                <a href="cairo-cairo-t.html#cairo-restore">cairo_restore</a>                       (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
61
 
<a href="cairo-cairo-surface-t.html#cairo-surface-t">cairo_surface_t</a>*    <a href="cairo-cairo-t.html#cairo-get-target">cairo_get_target</a>                    (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
62
 
void                <a href="cairo-cairo-t.html#cairo-push-group">cairo_push_group</a>                    (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
63
 
void                <a href="cairo-cairo-t.html#cairo-push-group-with-content">cairo_push_group_with_content</a>       (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
64
 
                                                         <a href="cairo-cairo-surface-t.html#cairo-content-t">cairo_content_t</a> content);
65
 
<a href="cairo-Patterns.html#cairo-pattern-t">cairo_pattern_t</a>*    <a href="cairo-cairo-t.html#cairo-pop-group">cairo_pop_group</a>                     (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
66
 
void                <a href="cairo-cairo-t.html#cairo-pop-group-to-source">cairo_pop_group_to_source</a>           (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
67
 
<a href="cairo-cairo-surface-t.html#cairo-surface-t">cairo_surface_t</a>*    <a href="cairo-cairo-t.html#cairo-get-group-target">cairo_get_group_target</a>              (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
68
 
void                <a href="cairo-cairo-t.html#cairo-set-source-rgb">cairo_set_source_rgb</a>                (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
54
typedef             <a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a>;
 
55
<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a>*            <a class="link" href="cairo-cairo-t.html#cairo-create">cairo_create</a>                        (<a class="link" href="cairo-cairo-surface-t.html#cairo-surface-t">cairo_surface_t</a> *target);
 
56
<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a>*            <a class="link" href="cairo-cairo-t.html#cairo-reference">cairo_reference</a>                     (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
 
57
void                <a class="link" href="cairo-cairo-t.html#cairo-destroy">cairo_destroy</a>                       (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
 
58
<a class="link" href="cairo-Error-Handling.html#cairo-status-t">cairo_status_t</a>      <a class="link" href="cairo-cairo-t.html#cairo-status">cairo_status</a>                        (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
 
59
void                <a class="link" href="cairo-cairo-t.html#cairo-save">cairo_save</a>                          (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
 
60
void                <a class="link" href="cairo-cairo-t.html#cairo-restore">cairo_restore</a>                       (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
 
61
<a class="link" href="cairo-cairo-surface-t.html#cairo-surface-t">cairo_surface_t</a>*    <a class="link" href="cairo-cairo-t.html#cairo-get-target">cairo_get_target</a>                    (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
 
62
void                <a class="link" href="cairo-cairo-t.html#cairo-push-group">cairo_push_group</a>                    (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
 
63
void                <a class="link" href="cairo-cairo-t.html#cairo-push-group-with-content">cairo_push_group_with_content</a>       (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
64
                                                         <a class="link" href="cairo-cairo-surface-t.html#cairo-content-t">cairo_content_t</a> content);
 
65
<a class="link" href="cairo-Patterns.html#cairo-pattern-t">cairo_pattern_t</a>*    <a class="link" href="cairo-cairo-t.html#cairo-pop-group">cairo_pop_group</a>                     (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
 
66
void                <a class="link" href="cairo-cairo-t.html#cairo-pop-group-to-source">cairo_pop_group_to_source</a>           (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
 
67
<a class="link" href="cairo-cairo-surface-t.html#cairo-surface-t">cairo_surface_t</a>*    <a class="link" href="cairo-cairo-t.html#cairo-get-group-target">cairo_get_group_target</a>              (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
 
68
void                <a class="link" href="cairo-cairo-t.html#cairo-set-source-rgb">cairo_set_source_rgb</a>                (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
69
69
                                                         double red,
70
70
                                                         double green,
71
71
                                                         double blue);
72
 
void                <a href="cairo-cairo-t.html#cairo-set-source-rgba">cairo_set_source_rgba</a>               (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
72
void                <a class="link" href="cairo-cairo-t.html#cairo-set-source-rgba">cairo_set_source_rgba</a>               (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
73
73
                                                         double red,
74
74
                                                         double green,
75
75
                                                         double blue,
76
76
                                                         double alpha);
77
 
void                <a href="cairo-cairo-t.html#cairo-set-source">cairo_set_source</a>                    (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
78
 
                                                         <a href="cairo-Patterns.html#cairo-pattern-t">cairo_pattern_t</a> *source);
79
 
void                <a href="cairo-cairo-t.html#cairo-set-source-surface">cairo_set_source_surface</a>            (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
80
 
                                                         <a href="cairo-cairo-surface-t.html#cairo-surface-t">cairo_surface_t</a> *surface,
 
77
void                <a class="link" href="cairo-cairo-t.html#cairo-set-source">cairo_set_source</a>                    (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
78
                                                         <a class="link" href="cairo-Patterns.html#cairo-pattern-t">cairo_pattern_t</a> *source);
 
79
void                <a class="link" href="cairo-cairo-t.html#cairo-set-source-surface">cairo_set_source_surface</a>            (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
80
                                                         <a class="link" href="cairo-cairo-surface-t.html#cairo-surface-t">cairo_surface_t</a> *surface,
81
81
                                                         double x,
82
82
                                                         double y);
83
 
<a href="cairo-Patterns.html#cairo-pattern-t">cairo_pattern_t</a>*    <a href="cairo-cairo-t.html#cairo-get-source">cairo_get_source</a>                    (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
84
 
enum                <a href="cairo-cairo-t.html#cairo-antialias-t">cairo_antialias_t</a>;
85
 
void                <a href="cairo-cairo-t.html#cairo-set-antialias">cairo_set_antialias</a>                 (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
86
 
                                                         <a href="cairo-cairo-t.html#cairo-antialias-t">cairo_antialias_t</a> antialias);
87
 
<a href="cairo-cairo-t.html#cairo-antialias-t">cairo_antialias_t</a>   <a href="cairo-cairo-t.html#cairo-get-antialias">cairo_get_antialias</a>                 (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
88
 
void                <a href="cairo-cairo-t.html#cairo-set-dash">cairo_set_dash</a>                      (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
83
<a class="link" href="cairo-Patterns.html#cairo-pattern-t">cairo_pattern_t</a>*    <a class="link" href="cairo-cairo-t.html#cairo-get-source">cairo_get_source</a>                    (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
 
84
enum                <a class="link" href="cairo-cairo-t.html#cairo-antialias-t">cairo_antialias_t</a>;
 
85
void                <a class="link" href="cairo-cairo-t.html#cairo-set-antialias">cairo_set_antialias</a>                 (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
86
                                                         <a class="link" href="cairo-cairo-t.html#cairo-antialias-t">cairo_antialias_t</a> antialias);
 
87
<a class="link" href="cairo-cairo-t.html#cairo-antialias-t">cairo_antialias_t</a>   <a class="link" href="cairo-cairo-t.html#cairo-get-antialias">cairo_get_antialias</a>                 (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
 
88
void                <a class="link" href="cairo-cairo-t.html#cairo-set-dash">cairo_set_dash</a>                      (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
89
89
                                                         const double *dashes,
90
90
                                                         int num_dashes,
91
91
                                                         double offset);
92
 
int                 <a href="cairo-cairo-t.html#cairo-get-dash-count">cairo_get_dash_count</a>                (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
93
 
void                <a href="cairo-cairo-t.html#cairo-get-dash">cairo_get_dash</a>                      (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
92
int                 <a class="link" href="cairo-cairo-t.html#cairo-get-dash-count">cairo_get_dash_count</a>                (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
 
93
void                <a class="link" href="cairo-cairo-t.html#cairo-get-dash">cairo_get_dash</a>                      (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
94
94
                                                         double *dashes,
95
95
                                                         double *offset);
96
 
enum                <a href="cairo-cairo-t.html#cairo-fill-rule-t">cairo_fill_rule_t</a>;
97
 
void                <a href="cairo-cairo-t.html#cairo-set-fill-rule">cairo_set_fill_rule</a>                 (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
98
 
                                                         <a href="cairo-cairo-t.html#cairo-fill-rule-t">cairo_fill_rule_t</a> fill_rule);
99
 
<a href="cairo-cairo-t.html#cairo-fill-rule-t">cairo_fill_rule_t</a>   <a href="cairo-cairo-t.html#cairo-get-fill-rule">cairo_get_fill_rule</a>                 (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
100
 
enum                <a href="cairo-cairo-t.html#cairo-line-cap-t">cairo_line_cap_t</a>;
101
 
void                <a href="cairo-cairo-t.html#cairo-set-line-cap">cairo_set_line_cap</a>                  (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
102
 
                                                         <a href="cairo-cairo-t.html#cairo-line-cap-t">cairo_line_cap_t</a> line_cap);
103
 
<a href="cairo-cairo-t.html#cairo-line-cap-t">cairo_line_cap_t</a>    <a href="cairo-cairo-t.html#cairo-get-line-cap">cairo_get_line_cap</a>                  (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
104
 
enum                <a href="cairo-cairo-t.html#cairo-line-join-t">cairo_line_join_t</a>;
105
 
void                <a href="cairo-cairo-t.html#cairo-set-line-join">cairo_set_line_join</a>                 (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
106
 
                                                         <a href="cairo-cairo-t.html#cairo-line-join-t">cairo_line_join_t</a> line_join);
107
 
<a href="cairo-cairo-t.html#cairo-line-join-t">cairo_line_join_t</a>   <a href="cairo-cairo-t.html#cairo-get-line-join">cairo_get_line_join</a>                 (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
108
 
void                <a href="cairo-cairo-t.html#cairo-set-line-width">cairo_set_line_width</a>                (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
96
enum                <a class="link" href="cairo-cairo-t.html#cairo-fill-rule-t">cairo_fill_rule_t</a>;
 
97
void                <a class="link" href="cairo-cairo-t.html#cairo-set-fill-rule">cairo_set_fill_rule</a>                 (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
98
                                                         <a class="link" href="cairo-cairo-t.html#cairo-fill-rule-t">cairo_fill_rule_t</a> fill_rule);
 
99
<a class="link" href="cairo-cairo-t.html#cairo-fill-rule-t">cairo_fill_rule_t</a>   <a class="link" href="cairo-cairo-t.html#cairo-get-fill-rule">cairo_get_fill_rule</a>                 (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
 
100
enum                <a class="link" href="cairo-cairo-t.html#cairo-line-cap-t">cairo_line_cap_t</a>;
 
101
void                <a class="link" href="cairo-cairo-t.html#cairo-set-line-cap">cairo_set_line_cap</a>                  (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
102
                                                         <a class="link" href="cairo-cairo-t.html#cairo-line-cap-t">cairo_line_cap_t</a> line_cap);
 
103
<a class="link" href="cairo-cairo-t.html#cairo-line-cap-t">cairo_line_cap_t</a>    <a class="link" href="cairo-cairo-t.html#cairo-get-line-cap">cairo_get_line_cap</a>                  (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
 
104
enum                <a class="link" href="cairo-cairo-t.html#cairo-line-join-t">cairo_line_join_t</a>;
 
105
void                <a class="link" href="cairo-cairo-t.html#cairo-set-line-join">cairo_set_line_join</a>                 (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
106
                                                         <a class="link" href="cairo-cairo-t.html#cairo-line-join-t">cairo_line_join_t</a> line_join);
 
107
<a class="link" href="cairo-cairo-t.html#cairo-line-join-t">cairo_line_join_t</a>   <a class="link" href="cairo-cairo-t.html#cairo-get-line-join">cairo_get_line_join</a>                 (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
 
108
void                <a class="link" href="cairo-cairo-t.html#cairo-set-line-width">cairo_set_line_width</a>                (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
109
109
                                                         double width);
110
 
double              <a href="cairo-cairo-t.html#cairo-get-line-width">cairo_get_line_width</a>                (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
111
 
void                <a href="cairo-cairo-t.html#cairo-set-miter-limit">cairo_set_miter_limit</a>               (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
110
double              <a class="link" href="cairo-cairo-t.html#cairo-get-line-width">cairo_get_line_width</a>                (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
 
111
void                <a class="link" href="cairo-cairo-t.html#cairo-set-miter-limit">cairo_set_miter_limit</a>               (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
112
112
                                                         double limit);
113
 
double              <a href="cairo-cairo-t.html#cairo-get-miter-limit">cairo_get_miter_limit</a>               (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
114
 
enum                <a href="cairo-cairo-t.html#cairo-operator-t">cairo_operator_t</a>;
115
 
void                <a href="cairo-cairo-t.html#cairo-set-operator">cairo_set_operator</a>                  (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
116
 
                                                         <a href="cairo-cairo-t.html#cairo-operator-t">cairo_operator_t</a> op);
117
 
<a href="cairo-cairo-t.html#cairo-operator-t">cairo_operator_t</a>    <a href="cairo-cairo-t.html#cairo-get-operator">cairo_get_operator</a>                  (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
118
 
void                <a href="cairo-cairo-t.html#cairo-set-tolerance">cairo_set_tolerance</a>                 (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
113
double              <a class="link" href="cairo-cairo-t.html#cairo-get-miter-limit">cairo_get_miter_limit</a>               (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
 
114
enum                <a class="link" href="cairo-cairo-t.html#cairo-operator-t">cairo_operator_t</a>;
 
115
void                <a class="link" href="cairo-cairo-t.html#cairo-set-operator">cairo_set_operator</a>                  (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
116
                                                         <a class="link" href="cairo-cairo-t.html#cairo-operator-t">cairo_operator_t</a> op);
 
117
<a class="link" href="cairo-cairo-t.html#cairo-operator-t">cairo_operator_t</a>    <a class="link" href="cairo-cairo-t.html#cairo-get-operator">cairo_get_operator</a>                  (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
 
118
void                <a class="link" href="cairo-cairo-t.html#cairo-set-tolerance">cairo_set_tolerance</a>                 (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
119
119
                                                         double tolerance);
120
 
double              <a href="cairo-cairo-t.html#cairo-get-tolerance">cairo_get_tolerance</a>                 (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
121
 
void                <a href="cairo-cairo-t.html#cairo-clip">cairo_clip</a>                          (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
122
 
void                <a href="cairo-cairo-t.html#cairo-clip-preserve">cairo_clip_preserve</a>                 (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
123
 
void                <a href="cairo-cairo-t.html#cairo-clip-extents">cairo_clip_extents</a>                  (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
124
 
                                                         double *x1,
125
 
                                                         double *y1,
126
 
                                                         double *x2,
127
 
                                                         double *y2);
128
 
void                <a href="cairo-cairo-t.html#cairo-reset-clip">cairo_reset_clip</a>                    (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
129
 
                    <a href="cairo-cairo-t.html#cairo-rectangle-t">cairo_rectangle_t</a>;
130
 
                    <a href="cairo-cairo-t.html#cairo-rectangle-list-t">cairo_rectangle_list_t</a>;
131
 
void                <a href="cairo-cairo-t.html#cairo-rectangle-list-destroy">cairo_rectangle_list_destroy</a>        (<a href="cairo-cairo-t.html#cairo-rectangle-list-t">cairo_rectangle_list_t</a> *rectangle_list);
132
 
<a href="cairo-cairo-t.html#cairo-rectangle-list-t">cairo_rectangle_list_t</a>* <a href="cairo-cairo-t.html#cairo-copy-clip-rectangle-list">cairo_copy_clip_rectangle_list</a>  (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
133
 
void                <a href="cairo-cairo-t.html#cairo-fill">cairo_fill</a>                          (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
134
 
void                <a href="cairo-cairo-t.html#cairo-fill-preserve">cairo_fill_preserve</a>                 (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
135
 
void                <a href="cairo-cairo-t.html#cairo-fill-extents">cairo_fill_extents</a>                  (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
136
 
                                                         double *x1,
137
 
                                                         double *y1,
138
 
                                                         double *x2,
139
 
                                                         double *y2);
140
 
<a href="cairo-Types.html#cairo-bool-t">cairo_bool_t</a>        <a href="cairo-cairo-t.html#cairo-in-fill">cairo_in_fill</a>                       (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
120
double              <a class="link" href="cairo-cairo-t.html#cairo-get-tolerance">cairo_get_tolerance</a>                 (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
 
121
void                <a class="link" href="cairo-cairo-t.html#cairo-clip">cairo_clip</a>                          (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
 
122
void                <a class="link" href="cairo-cairo-t.html#cairo-clip-preserve">cairo_clip_preserve</a>                 (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
 
123
void                <a class="link" href="cairo-cairo-t.html#cairo-clip-extents">cairo_clip_extents</a>                  (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
124
                                                         double *x1,
 
125
                                                         double *y1,
 
126
                                                         double *x2,
 
127
                                                         double *y2);
 
128
void                <a class="link" href="cairo-cairo-t.html#cairo-reset-clip">cairo_reset_clip</a>                    (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
 
129
                    <a class="link" href="cairo-cairo-t.html#cairo-rectangle-t">cairo_rectangle_t</a>;
 
130
                    <a class="link" href="cairo-cairo-t.html#cairo-rectangle-list-t">cairo_rectangle_list_t</a>;
 
131
void                <a class="link" href="cairo-cairo-t.html#cairo-rectangle-list-destroy">cairo_rectangle_list_destroy</a>        (<a class="link" href="cairo-cairo-t.html#cairo-rectangle-list-t">cairo_rectangle_list_t</a> *rectangle_list);
 
132
<a class="link" href="cairo-cairo-t.html#cairo-rectangle-list-t">cairo_rectangle_list_t</a>* <a class="link" href="cairo-cairo-t.html#cairo-copy-clip-rectangle-list">cairo_copy_clip_rectangle_list</a>  (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
 
133
void                <a class="link" href="cairo-cairo-t.html#cairo-fill">cairo_fill</a>                          (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
 
134
void                <a class="link" href="cairo-cairo-t.html#cairo-fill-preserve">cairo_fill_preserve</a>                 (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
 
135
void                <a class="link" href="cairo-cairo-t.html#cairo-fill-extents">cairo_fill_extents</a>                  (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
136
                                                         double *x1,
 
137
                                                         double *y1,
 
138
                                                         double *x2,
 
139
                                                         double *y2);
 
140
<a class="link" href="cairo-Types.html#cairo-bool-t">cairo_bool_t</a>        <a class="link" href="cairo-cairo-t.html#cairo-in-fill">cairo_in_fill</a>                       (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
141
141
                                                         double x,
142
142
                                                         double y);
143
 
void                <a href="cairo-cairo-t.html#cairo-mask">cairo_mask</a>                          (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
144
 
                                                         <a href="cairo-Patterns.html#cairo-pattern-t">cairo_pattern_t</a> *pattern);
145
 
void                <a href="cairo-cairo-t.html#cairo-mask-surface">cairo_mask_surface</a>                  (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
146
 
                                                         <a href="cairo-cairo-surface-t.html#cairo-surface-t">cairo_surface_t</a> *surface,
 
143
void                <a class="link" href="cairo-cairo-t.html#cairo-mask">cairo_mask</a>                          (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
144
                                                         <a class="link" href="cairo-Patterns.html#cairo-pattern-t">cairo_pattern_t</a> *pattern);
 
145
void                <a class="link" href="cairo-cairo-t.html#cairo-mask-surface">cairo_mask_surface</a>                  (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
146
                                                         <a class="link" href="cairo-cairo-surface-t.html#cairo-surface-t">cairo_surface_t</a> *surface,
147
147
                                                         double surface_x,
148
148
                                                         double surface_y);
149
 
void                <a href="cairo-cairo-t.html#cairo-paint">cairo_paint</a>                         (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
150
 
void                <a href="cairo-cairo-t.html#cairo-paint-with-alpha">cairo_paint_with_alpha</a>              (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
149
void                <a class="link" href="cairo-cairo-t.html#cairo-paint">cairo_paint</a>                         (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
 
150
void                <a class="link" href="cairo-cairo-t.html#cairo-paint-with-alpha">cairo_paint_with_alpha</a>              (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
151
151
                                                         double alpha);
152
 
void                <a href="cairo-cairo-t.html#cairo-stroke">cairo_stroke</a>                        (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
153
 
void                <a href="cairo-cairo-t.html#cairo-stroke-preserve">cairo_stroke_preserve</a>               (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
154
 
void                <a href="cairo-cairo-t.html#cairo-stroke-extents">cairo_stroke_extents</a>                (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
152
void                <a class="link" href="cairo-cairo-t.html#cairo-stroke">cairo_stroke</a>                        (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
 
153
void                <a class="link" href="cairo-cairo-t.html#cairo-stroke-preserve">cairo_stroke_preserve</a>               (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
 
154
void                <a class="link" href="cairo-cairo-t.html#cairo-stroke-extents">cairo_stroke_extents</a>                (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
155
155
                                                         double *x1,
156
156
                                                         double *y1,
157
157
                                                         double *x2,
158
158
                                                         double *y2);
159
 
<a href="cairo-Types.html#cairo-bool-t">cairo_bool_t</a>        <a href="cairo-cairo-t.html#cairo-in-stroke">cairo_in_stroke</a>                     (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
159
<a class="link" href="cairo-Types.html#cairo-bool-t">cairo_bool_t</a>        <a class="link" href="cairo-cairo-t.html#cairo-in-stroke">cairo_in_stroke</a>                     (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
160
160
                                                         double x,
161
161
                                                         double y);
162
 
void                <a href="cairo-cairo-t.html#cairo-copy-page">cairo_copy_page</a>                     (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
163
 
void                <a href="cairo-cairo-t.html#cairo-show-page">cairo_show_page</a>                     (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
164
 
unsigned int        <a href="cairo-cairo-t.html#cairo-get-reference-count">cairo_get_reference_count</a>           (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
165
 
<a href="cairo-Error-Handling.html#cairo-status-t">cairo_status_t</a>      <a href="cairo-cairo-t.html#cairo-set-user-data">cairo_set_user_data</a>                 (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
166
 
                                                         const <a href="cairo-Types.html#cairo-user-data-key-t">cairo_user_data_key_t</a> *key,
 
162
void                <a class="link" href="cairo-cairo-t.html#cairo-copy-page">cairo_copy_page</a>                     (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
 
163
void                <a class="link" href="cairo-cairo-t.html#cairo-show-page">cairo_show_page</a>                     (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
 
164
unsigned int        <a class="link" href="cairo-cairo-t.html#cairo-get-reference-count">cairo_get_reference_count</a>           (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);
 
165
<a class="link" href="cairo-Error-Handling.html#cairo-status-t">cairo_status_t</a>      <a class="link" href="cairo-cairo-t.html#cairo-set-user-data">cairo_set_user_data</a>                 (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
166
                                                         const <a class="link" href="cairo-Types.html#cairo-user-data-key-t">cairo_user_data_key_t</a> *key,
167
167
                                                         void *user_data,
168
 
                                                         <a href="cairo-Types.html#cairo-destroy-func-t">cairo_destroy_func_t</a> destroy);
169
 
void*               <a href="cairo-cairo-t.html#cairo-get-user-data">cairo_get_user_data</a>                 (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
170
 
                                                         const <a href="cairo-Types.html#cairo-user-data-key-t">cairo_user_data_key_t</a> *key);
 
168
                                                         <a class="link" href="cairo-Types.html#cairo-destroy-func-t">cairo_destroy_func_t</a> destroy);
 
169
void*               <a class="link" href="cairo-cairo-t.html#cairo-get-user-data">cairo_get_user_data</a>                 (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
170
                                                         const <a class="link" href="cairo-Types.html#cairo-user-data-key-t">cairo_user_data_key_t</a> *key);
171
171
 
172
172
</pre>
173
173
</div>
174
174
<div class="refsect1" lang="en">
175
 
<a name="id2613026"></a><h2>Description</h2>
 
175
<a name="id2630498"></a><h2>Description</h2>
176
176
<p>
177
 
    <a href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a> is the main object used when drawing with cairo. To
178
 
    draw with cairo, you create a <a href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>, set the target surface,
179
 
    and drawing options for the <a href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>, create shapes with
180
 
    functions like <a href="cairo-Paths.html#cairo-move-to"><code class="function">cairo_move_to()</code></a> and <a href="cairo-Paths.html#cairo-line-to"><code class="function">cairo_line_to()</code></a>, and then
181
 
    draw shapes with <a href="cairo-cairo-t.html#cairo-stroke"><code class="function">cairo_stroke()</code></a> or <a href="cairo-cairo-t.html#cairo-fill"><code class="function">cairo_fill()</code></a>.
 
177
    <a class="link" href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a> is the main object used when drawing with cairo. To
 
178
    draw with cairo, you create a <a class="link" href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>, set the target surface,
 
179
    and drawing options for the <a class="link" href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>, create shapes with
 
180
    functions like <a class="link" href="cairo-Paths.html#cairo-move-to"><code class="function">cairo_move_to()</code></a> and <a class="link" href="cairo-Paths.html#cairo-line-to"><code class="function">cairo_line_to()</code></a>, and then
 
181
    draw shapes with <a class="link" href="cairo-cairo-t.html#cairo-stroke"><code class="function">cairo_stroke()</code></a> or <a class="link" href="cairo-cairo-t.html#cairo-fill"><code class="function">cairo_fill()</code></a>.
182
182
  </p>
183
183
<p>
184
 
    <a href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>'s can be pushed to a stack via <a href="cairo-cairo-t.html#cairo-save"><code class="function">cairo_save()</code></a>.
 
184
    <a class="link" href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>'s can be pushed to a stack via <a class="link" href="cairo-cairo-t.html#cairo-save"><code class="function">cairo_save()</code></a>.
185
185
    They may then safely be changed, without loosing the current state.
186
 
    Use <a href="cairo-cairo-t.html#cairo-restore"><code class="function">cairo_restore()</code></a> to restore to the saved state.
 
186
    Use <a class="link" href="cairo-cairo-t.html#cairo-restore"><code class="function">cairo_restore()</code></a> to restore to the saved state.
187
187
  </p>
188
188
</div>
189
189
<div class="refsect1" lang="en">
190
 
<a name="id2613136"></a><h2>Details</h2>
 
190
<a name="id2630608"></a><h2>Details</h2>
191
191
<div class="refsect2" lang="en">
192
 
<a name="id2613147"></a><h3>
 
192
<a name="id2630619"></a><h3>
193
193
<a name="cairo-t"></a>cairo_t</h3>
194
 
<a class="indexterm" name="id2613159"></a><pre class="programlisting">typedef struct _cairo cairo_t;
 
194
<a class="indexterm" name="id2630631"></a><pre class="programlisting">typedef struct _cairo cairo_t;
195
195
</pre>
196
196
<p>
197
 
A <a href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a> contains the current state of the rendering device,
 
197
A <a class="link" href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a> contains the current state of the rendering device,
198
198
including coordinates of yet to be drawn shapes.
199
199
</p>
200
200
<p>
201
 
Cairo contexts, as <a href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a> objects are named, are central to
202
 
cairo and all drawing with cairo is always done to a <a href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>
 
201
Cairo contexts, as <a class="link" href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a> objects are named, are central to
 
202
cairo and all drawing with cairo is always done to a <a class="link" href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>
203
203
object.
204
204
</p>
205
205
<p>
206
 
Memory management of <a href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a> is done with
207
 
<a href="cairo-cairo-t.html#cairo-reference"><code class="function">cairo_reference()</code></a> and <a href="cairo-cairo-t.html#cairo-destroy"><code class="function">cairo_destroy()</code></a>.</p>
 
206
Memory management of <a class="link" href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a> is done with
 
207
<a class="link" href="cairo-cairo-t.html#cairo-reference"><code class="function">cairo_reference()</code></a> and <a class="link" href="cairo-cairo-t.html#cairo-destroy"><code class="function">cairo_destroy()</code></a>.</p>
208
208
<p>
209
209
 
210
210
</p>
211
211
</div>
212
212
<hr>
213
213
<div class="refsect2" lang="en">
214
 
<a name="id2613236"></a><h3>
 
214
<a name="id2630708"></a><h3>
215
215
<a name="cairo-create"></a>cairo_create ()</h3>
216
 
<a class="indexterm" name="id2613249"></a><pre class="programlisting"><a href="cairo-cairo-t.html#cairo-t">cairo_t</a>*            cairo_create                        (<a href="cairo-cairo-surface-t.html#cairo-surface-t">cairo_surface_t</a> *target);</pre>
 
216
<a class="indexterm" name="id2630721"></a><pre class="programlisting"><a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a>*            cairo_create                        (<a class="link" href="cairo-cairo-surface-t.html#cairo-surface-t">cairo_surface_t</a> *target);</pre>
217
217
<p>
218
 
Creates a new <a href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a> with all graphics state parameters set to
 
218
Creates a new <a class="link" href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a> with all graphics state parameters set to
219
219
default values and with <em class="parameter"><code>target</code></em> as a target surface. The target
220
220
surface should be constructed with a backend-specific function such
221
 
as <a href="cairo-Image-Surfaces.html#cairo-image-surface-create"><code class="function">cairo_image_surface_create()</code></a> (or any other
 
221
as <a class="link" href="cairo-Image-Surfaces.html#cairo-image-surface-create"><code class="function">cairo_image_surface_create()</code></a> (or any other
222
222
<code class="literal">cairo_&lt;backend&gt;_surface_create</code> variant).
223
223
</p>
224
224
<p>
225
225
This function references <em class="parameter"><code>target</code></em>, so you can immediately
226
 
call <a href="cairo-cairo-surface-t.html#cairo-surface-destroy"><code class="function">cairo_surface_destroy()</code></a> on it if you don't need to
 
226
call <a class="link" href="cairo-cairo-surface-t.html#cairo-surface-destroy"><code class="function">cairo_surface_destroy()</code></a> on it if you don't need to
227
227
maintain a separate reference to it.</p>
228
228
<p>
229
229
 
232
232
<col align="left" valign="top">
233
233
<tbody>
234
234
<tr>
235
 
<td><span class="term"><em class="parameter"><code>target</code></em>&#160;:</span></td>
 
235
<td><p><span class="term"><em class="parameter"><code>target</code></em>&#160;:</span></p></td>
236
236
<td> target surface for the context
237
237
</td>
238
238
</tr>
239
239
<tr>
240
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
241
 
<td> a newly allocated <a href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a> with a reference
 
240
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
 
241
<td> a newly allocated <a class="link" href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a> with a reference
242
242
 count of 1. The initial reference count should be released
243
 
 with <a href="cairo-cairo-t.html#cairo-destroy"><code class="function">cairo_destroy()</code></a> when you are done using the <a href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>.
 
243
 with <a class="link" href="cairo-cairo-t.html#cairo-destroy"><code class="function">cairo_destroy()</code></a> when you are done using the <a class="link" href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>.
244
244
 This function never returns <code class="literal">NULL</code>. If memory cannot be
245
 
 allocated, a special <a href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a> object will be returned on
246
 
 which <a href="cairo-cairo-t.html#cairo-status"><code class="function">cairo_status()</code></a> returns <a href="cairo-Error-Handling.html#CAIRO-STATUS-NO-MEMORY:CAPS"><code class="literal">CAIRO_STATUS_NO_MEMORY</code></a>.
 
245
 allocated, a special <a class="link" href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a> object will be returned on
 
246
 which <a class="link" href="cairo-cairo-t.html#cairo-status"><code class="function">cairo_status()</code></a> returns <a class="link" href="cairo-Error-Handling.html#CAIRO-STATUS-NO-MEMORY:CAPS"><code class="literal">CAIRO_STATUS_NO_MEMORY</code></a>.
247
247
 You can use this object normally, but no drawing will
248
248
 be done.
249
249
</td>
253
253
</div>
254
254
<hr>
255
255
<div class="refsect2" lang="en">
256
 
<a name="id2613424"></a><h3>
 
256
<a name="id2630896"></a><h3>
257
257
<a name="cairo-reference"></a>cairo_reference ()</h3>
258
 
<a class="indexterm" name="id2613436"></a><pre class="programlisting"><a href="cairo-cairo-t.html#cairo-t">cairo_t</a>*            cairo_reference                     (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
 
258
<a class="indexterm" name="id2630908"></a><pre class="programlisting"><a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a>*            cairo_reference                     (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
259
259
<p>
260
260
Increases the reference count on <em class="parameter"><code>cr</code></em> by one. This prevents
261
 
<em class="parameter"><code>cr</code></em> from being destroyed until a matching call to <a href="cairo-cairo-t.html#cairo-destroy"><code class="function">cairo_destroy()</code></a>
 
261
<em class="parameter"><code>cr</code></em> from being destroyed until a matching call to <a class="link" href="cairo-cairo-t.html#cairo-destroy"><code class="function">cairo_destroy()</code></a>
262
262
is made.
263
263
</p>
264
264
<p>
265
 
The number of references to a <a href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a> can be get using
266
 
<a href="cairo-cairo-t.html#cairo-get-reference-count"><code class="function">cairo_get_reference_count()</code></a>.</p>
 
265
The number of references to a <a class="link" href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a> can be get using
 
266
<a class="link" href="cairo-cairo-t.html#cairo-get-reference-count"><code class="function">cairo_get_reference_count()</code></a>.</p>
267
267
<p>
268
268
 
269
269
</p>
271
271
<col align="left" valign="top">
272
272
<tbody>
273
273
<tr>
274
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
275
 
<td> a <a href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>
 
274
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
 
275
<td> a <a class="link" href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>
276
276
</td>
277
277
</tr>
278
278
<tr>
279
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
280
 
<td> the referenced <a href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>.
 
279
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
 
280
<td> the referenced <a class="link" href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>.
281
281
</td>
282
282
</tr>
283
283
</tbody>
285
285
</div>
286
286
<hr>
287
287
<div class="refsect2" lang="en">
288
 
<a name="id2613554"></a><h3>
 
288
<a name="id2631026"></a><h3>
289
289
<a name="cairo-destroy"></a>cairo_destroy ()</h3>
290
 
<a class="indexterm" name="id2613566"></a><pre class="programlisting">void                cairo_destroy                       (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
 
290
<a class="indexterm" name="id2631038"></a><pre class="programlisting">void                cairo_destroy                       (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
291
291
<p>
292
292
Decreases the reference count on <em class="parameter"><code>cr</code></em> by one. If the result
293
293
is zero, then <em class="parameter"><code>cr</code></em> and all associated resources are freed.
294
 
See <a href="cairo-cairo-t.html#cairo-reference"><code class="function">cairo_reference()</code></a>.</p>
 
294
See <a class="link" href="cairo-cairo-t.html#cairo-reference"><code class="function">cairo_reference()</code></a>.</p>
295
295
<p>
296
296
 
297
297
</p>
298
298
<div class="variablelist"><table border="0">
299
299
<col align="left" valign="top">
300
300
<tbody><tr>
301
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
302
 
<td> a <a href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>
 
301
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
 
302
<td> a <a class="link" href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>
303
303
</td>
304
304
</tr></tbody>
305
305
</table></div>
306
306
</div>
307
307
<hr>
308
308
<div class="refsect2" lang="en">
309
 
<a name="id2613645"></a><h3>
 
309
<a name="id2631117"></a><h3>
310
310
<a name="cairo-status"></a>cairo_status ()</h3>
311
 
<a class="indexterm" name="id2613658"></a><pre class="programlisting"><a href="cairo-Error-Handling.html#cairo-status-t">cairo_status_t</a>      cairo_status                        (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
 
311
<a class="indexterm" name="id2631130"></a><pre class="programlisting"><a class="link" href="cairo-Error-Handling.html#cairo-status-t">cairo_status_t</a>      cairo_status                        (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
312
312
<p>
313
313
Checks whether an error has previously occurred for this context.</p>
314
314
<p>
318
318
<col align="left" valign="top">
319
319
<tbody>
320
320
<tr>
321
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
321
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
322
322
<td> a cairo context
323
323
</td>
324
324
</tr>
325
325
<tr>
326
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
327
 
<td>the current status of this context, see <a href="cairo-Error-Handling.html#cairo-status-t"><span class="type">cairo_status_t</span></a>
 
326
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
 
327
<td>the current status of this context, see <a class="link" href="cairo-Error-Handling.html#cairo-status-t"><span class="type">cairo_status_t</span></a>
328
328
</td>
329
329
</tr>
330
330
</tbody>
332
332
</div>
333
333
<hr>
334
334
<div class="refsect2" lang="en">
335
 
<a name="id2613726"></a><h3>
 
335
<a name="id2631198"></a><h3>
336
336
<a name="cairo-save"></a>cairo_save ()</h3>
337
 
<a class="indexterm" name="id2613738"></a><pre class="programlisting">void                cairo_save                          (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
 
337
<a class="indexterm" name="id2631210"></a><pre class="programlisting">void                cairo_save                          (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
338
338
<p>
339
339
Makes a copy of the current state of <em class="parameter"><code>cr</code></em> and saves it
340
340
on an internal stack of saved states for <em class="parameter"><code>cr</code></em>. When
341
 
<a href="cairo-cairo-t.html#cairo-restore"><code class="function">cairo_restore()</code></a> is called, <em class="parameter"><code>cr</code></em> will be restored to
342
 
the saved state. Multiple calls to <a href="cairo-cairo-t.html#cairo-save"><code class="function">cairo_save()</code></a> and
343
 
<a href="cairo-cairo-t.html#cairo-restore"><code class="function">cairo_restore()</code></a> can be nested; each call to <a href="cairo-cairo-t.html#cairo-restore"><code class="function">cairo_restore()</code></a>
344
 
restores the state from the matching paired <a href="cairo-cairo-t.html#cairo-save"><code class="function">cairo_save()</code></a>.
 
341
<a class="link" href="cairo-cairo-t.html#cairo-restore"><code class="function">cairo_restore()</code></a> is called, <em class="parameter"><code>cr</code></em> will be restored to
 
342
the saved state. Multiple calls to <a class="link" href="cairo-cairo-t.html#cairo-save"><code class="function">cairo_save()</code></a> and
 
343
<a class="link" href="cairo-cairo-t.html#cairo-restore"><code class="function">cairo_restore()</code></a> can be nested; each call to <a class="link" href="cairo-cairo-t.html#cairo-restore"><code class="function">cairo_restore()</code></a>
 
344
restores the state from the matching paired <a class="link" href="cairo-cairo-t.html#cairo-save"><code class="function">cairo_save()</code></a>.
345
345
</p>
346
346
<p>
347
347
It isn't necessary to clear all saved states before
348
 
a <a href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a> is freed. If the reference count of a <a href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>
349
 
drops to zero in response to a call to <a href="cairo-cairo-t.html#cairo-destroy"><code class="function">cairo_destroy()</code></a>,
350
 
any saved states will be freed along with the <a href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>.</p>
 
348
a <a class="link" href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a> is freed. If the reference count of a <a class="link" href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>
 
349
drops to zero in response to a call to <a class="link" href="cairo-cairo-t.html#cairo-destroy"><code class="function">cairo_destroy()</code></a>,
 
350
any saved states will be freed along with the <a class="link" href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>.</p>
351
351
<p>
352
352
 
353
353
</p>
354
354
<div class="variablelist"><table border="0">
355
355
<col align="left" valign="top">
356
356
<tbody><tr>
357
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
358
 
<td> a <a href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>
 
357
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
 
358
<td> a <a class="link" href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>
359
359
</td>
360
360
</tr></tbody>
361
361
</table></div>
362
362
</div>
363
363
<hr>
364
364
<div class="refsect2" lang="en">
365
 
<a name="id2613900"></a><h3>
 
365
<a name="id2631373"></a><h3>
366
366
<a name="cairo-restore"></a>cairo_restore ()</h3>
367
 
<a class="indexterm" name="id2613912"></a><pre class="programlisting">void                cairo_restore                       (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
 
367
<a class="indexterm" name="id2631385"></a><pre class="programlisting">void                cairo_restore                       (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
368
368
<p>
369
369
Restores <em class="parameter"><code>cr</code></em> to the state saved by a preceding call to
370
 
<a href="cairo-cairo-t.html#cairo-save"><code class="function">cairo_save()</code></a> and removes that state from the stack of
 
370
<a class="link" href="cairo-cairo-t.html#cairo-save"><code class="function">cairo_save()</code></a> and removes that state from the stack of
371
371
saved states.</p>
372
372
<p>
373
373
 
375
375
<div class="variablelist"><table border="0">
376
376
<col align="left" valign="top">
377
377
<tbody><tr>
378
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
379
 
<td> a <a href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>
 
378
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
 
379
<td> a <a class="link" href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>
380
380
</td>
381
381
</tr></tbody>
382
382
</table></div>
383
383
</div>
384
384
<hr>
385
385
<div class="refsect2" lang="en">
386
 
<a name="id2613986"></a><h3>
 
386
<a name="id2631459"></a><h3>
387
387
<a name="cairo-get-target"></a>cairo_get_target ()</h3>
388
 
<a class="indexterm" name="id2613998"></a><pre class="programlisting"><a href="cairo-cairo-surface-t.html#cairo-surface-t">cairo_surface_t</a>*    cairo_get_target                    (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
 
388
<a class="indexterm" name="id2631471"></a><pre class="programlisting"><a class="link" href="cairo-cairo-surface-t.html#cairo-surface-t">cairo_surface_t</a>*    cairo_get_target                    (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
389
389
<p>
390
390
Gets the target surface for the cairo context as passed to
391
 
<a href="cairo-cairo-t.html#cairo-create"><code class="function">cairo_create()</code></a>.
 
391
<a class="link" href="cairo-cairo-t.html#cairo-create"><code class="function">cairo_create()</code></a>.
392
392
</p>
393
393
<p>
394
394
This function will always return a valid pointer, but the result
395
395
can be a "nil" surface if <em class="parameter"><code>cr</code></em> is already in an error state,
396
 
(ie. <a href="cairo-cairo-t.html#cairo-status"><code class="function">cairo_status()</code></a> <code class="literal">!=</code> <a href="cairo-Error-Handling.html#CAIRO-STATUS-SUCCESS:CAPS"><code class="literal">CAIRO_STATUS_SUCCESS</code></a>).
397
 
A nil surface is indicated by <a href="cairo-cairo-surface-t.html#cairo-surface-status"><code class="function">cairo_surface_status()</code></a>
398
 
<code class="literal">!=</code> <a href="cairo-Error-Handling.html#CAIRO-STATUS-SUCCESS:CAPS"><code class="literal">CAIRO_STATUS_SUCCESS</code></a>.</p>
 
396
(ie. <a class="link" href="cairo-cairo-t.html#cairo-status"><code class="function">cairo_status()</code></a> <code class="literal">!=</code> <a class="link" href="cairo-Error-Handling.html#CAIRO-STATUS-SUCCESS:CAPS"><code class="literal">CAIRO_STATUS_SUCCESS</code></a>).
 
397
A nil surface is indicated by <a class="link" href="cairo-cairo-surface-t.html#cairo-surface-status"><code class="function">cairo_surface_status()</code></a>
 
398
<code class="literal">!=</code> <a class="link" href="cairo-Error-Handling.html#CAIRO-STATUS-SUCCESS:CAPS"><code class="literal">CAIRO_STATUS_SUCCESS</code></a>.</p>
399
399
<p>
400
400
 
401
401
</p>
403
403
<col align="left" valign="top">
404
404
<tbody>
405
405
<tr>
406
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
406
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
407
407
<td> a cairo context
408
408
</td>
409
409
</tr>
410
410
<tr>
411
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 
411
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
412
412
<td> the target surface. This object is owned by cairo. To
413
 
keep a reference to it, you must call <a href="cairo-cairo-surface-t.html#cairo-surface-reference"><code class="function">cairo_surface_reference()</code></a>.
 
413
keep a reference to it, you must call <a class="link" href="cairo-cairo-surface-t.html#cairo-surface-reference"><code class="function">cairo_surface_reference()</code></a>.
414
414
</td>
415
415
</tr>
416
416
</tbody>
418
418
</div>
419
419
<hr>
420
420
<div class="refsect2" lang="en">
421
 
<a name="id2614140"></a><h3>
 
421
<a name="id2631613"></a><h3>
422
422
<a name="cairo-push-group"></a>cairo_push_group ()</h3>
423
 
<a class="indexterm" name="id2614155"></a><pre class="programlisting">void                cairo_push_group                    (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
 
423
<a class="indexterm" name="id2631628"></a><pre class="programlisting">void                cairo_push_group                    (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
424
424
<p>
425
425
Temporarily redirects drawing to an intermediate surface known as a
426
426
group. The redirection lasts until the group is completed by a call
427
 
to <a href="cairo-cairo-t.html#cairo-pop-group"><code class="function">cairo_pop_group()</code></a> or <a href="cairo-cairo-t.html#cairo-pop-group-to-source"><code class="function">cairo_pop_group_to_source()</code></a>. These calls
 
427
to <a class="link" href="cairo-cairo-t.html#cairo-pop-group"><code class="function">cairo_pop_group()</code></a> or <a class="link" href="cairo-cairo-t.html#cairo-pop-group-to-source"><code class="function">cairo_pop_group_to_source()</code></a>. These calls
428
428
provide the result of any drawing to the group as a pattern,
429
429
(either as an explicit object, or set as the source pattern).
430
430
</p>
437
437
</p>
438
438
<p>
439
439
Groups can be nested arbitrarily deep by making balanced calls to
440
 
<a href="cairo-cairo-t.html#cairo-push-group"><code class="function">cairo_push_group()</code></a>/<a href="cairo-cairo-t.html#cairo-pop-group"><code class="function">cairo_pop_group()</code></a>. Each call pushes/pops the new
 
440
<a class="link" href="cairo-cairo-t.html#cairo-push-group"><code class="function">cairo_push_group()</code></a>/<a class="link" href="cairo-cairo-t.html#cairo-pop-group"><code class="function">cairo_pop_group()</code></a>. Each call pushes/pops the new
441
441
target group onto/from a stack.
442
442
</p>
443
443
<p>
444
 
The <a href="cairo-cairo-t.html#cairo-push-group"><code class="function">cairo_push_group()</code></a> function calls <a href="cairo-cairo-t.html#cairo-save"><code class="function">cairo_save()</code></a> so that any
 
444
The <a class="link" href="cairo-cairo-t.html#cairo-push-group"><code class="function">cairo_push_group()</code></a> function calls <a class="link" href="cairo-cairo-t.html#cairo-save"><code class="function">cairo_save()</code></a> so that any
445
445
changes to the graphics state will not be visible outside the
446
 
group, (the pop_group functions call <a href="cairo-cairo-t.html#cairo-restore"><code class="function">cairo_restore()</code></a>).
 
446
group, (the pop_group functions call <a class="link" href="cairo-cairo-t.html#cairo-restore"><code class="function">cairo_restore()</code></a>).
447
447
</p>
448
448
<p>
449
449
By default the intermediate group will have a content type of
450
450
CAIRO_CONTENT_COLOR_ALPHA. Other content types can be chosen for
451
 
the group by using <a href="cairo-cairo-t.html#cairo-push-group-with-content"><code class="function">cairo_push_group_with_content()</code></a> instead.
 
451
the group by using <a class="link" href="cairo-cairo-t.html#cairo-push-group-with-content"><code class="function">cairo_push_group_with_content()</code></a> instead.
452
452
</p>
453
453
<p>
454
454
As an example, here is how one might fill and stroke a path with
472
472
<div class="variablelist"><table border="0">
473
473
<col align="left" valign="top">
474
474
<tbody><tr>
475
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
475
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
476
476
<td> a cairo context
477
477
</td>
478
478
</tr></tbody>
482
482
</div>
483
483
<hr>
484
484
<div class="refsect2" lang="en">
485
 
<a name="id2614337"></a><h3>
 
485
<a name="id2631810"></a><h3>
486
486
<a name="cairo-push-group-with-content"></a>cairo_push_group_with_content ()</h3>
487
 
<a class="indexterm" name="id2614352"></a><pre class="programlisting">void                cairo_push_group_with_content       (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
488
 
                                                         <a href="cairo-cairo-surface-t.html#cairo-content-t">cairo_content_t</a> content);</pre>
 
487
<a class="indexterm" name="id2631825"></a><pre class="programlisting">void                cairo_push_group_with_content       (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
488
                                                         <a class="link" href="cairo-cairo-surface-t.html#cairo-content-t">cairo_content_t</a> content);</pre>
489
489
<p>
490
490
Temporarily redirects drawing to an intermediate surface known as a
491
491
group. The redirection lasts until the group is completed by a call
492
 
to <a href="cairo-cairo-t.html#cairo-pop-group"><code class="function">cairo_pop_group()</code></a> or <a href="cairo-cairo-t.html#cairo-pop-group-to-source"><code class="function">cairo_pop_group_to_source()</code></a>. These calls
 
492
to <a class="link" href="cairo-cairo-t.html#cairo-pop-group"><code class="function">cairo_pop_group()</code></a> or <a class="link" href="cairo-cairo-t.html#cairo-pop-group-to-source"><code class="function">cairo_pop_group_to_source()</code></a>. These calls
493
493
provide the result of any drawing to the group as a pattern,
494
494
(either as an explicit object, or set as the source pattern).
495
495
</p>
496
496
<p>
497
497
The group will have a content type of <em class="parameter"><code>content</code></em>. The ability to
498
498
control this content type is the only distinction between this
499
 
function and <a href="cairo-cairo-t.html#cairo-push-group"><code class="function">cairo_push_group()</code></a> which you should see for a more
 
499
function and <a class="link" href="cairo-cairo-t.html#cairo-push-group"><code class="function">cairo_push_group()</code></a> which you should see for a more
500
500
detailed description of group rendering.</p>
501
501
<p>
502
502
 
505
505
<col align="left" valign="top">
506
506
<tbody>
507
507
<tr>
508
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
508
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
509
509
<td> a cairo context
510
510
</td>
511
511
</tr>
512
512
<tr>
513
 
<td><span class="term"><em class="parameter"><code>content</code></em>&#160;:</span></td>
514
 
<td> a <a href="cairo-cairo-surface-t.html#cairo-content-t"><code class="literal">cairo_content_t</code></a> indicating the type of group that
 
513
<td><p><span class="term"><em class="parameter"><code>content</code></em>&#160;:</span></p></td>
 
514
<td> a <a class="link" href="cairo-cairo-surface-t.html#cairo-content-t"><code class="literal">cairo_content_t</code></a> indicating the type of group that
515
515
          will be created
516
516
</td>
517
517
</tr>
522
522
</div>
523
523
<hr>
524
524
<div class="refsect2" lang="en">
525
 
<a name="id2586256"></a><h3>
 
525
<a name="id2605709"></a><h3>
526
526
<a name="cairo-pop-group"></a>cairo_pop_group ()</h3>
527
 
<a class="indexterm" name="id2614483"></a><pre class="programlisting"><a href="cairo-Patterns.html#cairo-pattern-t">cairo_pattern_t</a>*    cairo_pop_group                     (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
 
527
<a class="indexterm" name="id2631956"></a><pre class="programlisting"><a class="link" href="cairo-Patterns.html#cairo-pattern-t">cairo_pattern_t</a>*    cairo_pop_group                     (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
528
528
<p>
529
 
Terminates the redirection begun by a call to <a href="cairo-cairo-t.html#cairo-push-group"><code class="function">cairo_push_group()</code></a> or
530
 
<a href="cairo-cairo-t.html#cairo-push-group-with-content"><code class="function">cairo_push_group_with_content()</code></a> and returns a new pattern
 
529
Terminates the redirection begun by a call to <a class="link" href="cairo-cairo-t.html#cairo-push-group"><code class="function">cairo_push_group()</code></a> or
 
530
<a class="link" href="cairo-cairo-t.html#cairo-push-group-with-content"><code class="function">cairo_push_group_with_content()</code></a> and returns a new pattern
531
531
containing the results of all drawing operations performed to the
532
532
group.
533
533
</p>
534
534
<p>
535
 
The <a href="cairo-cairo-t.html#cairo-pop-group"><code class="function">cairo_pop_group()</code></a> function calls <a href="cairo-cairo-t.html#cairo-restore"><code class="function">cairo_restore()</code></a>, (balancing a
536
 
call to <a href="cairo-cairo-t.html#cairo-save"><code class="function">cairo_save()</code></a> by the push_group function), so that any
 
535
The <a class="link" href="cairo-cairo-t.html#cairo-pop-group"><code class="function">cairo_pop_group()</code></a> function calls <a class="link" href="cairo-cairo-t.html#cairo-restore"><code class="function">cairo_restore()</code></a>, (balancing a
 
536
call to <a class="link" href="cairo-cairo-t.html#cairo-save"><code class="function">cairo_save()</code></a> by the push_group function), so that any
537
537
changes to the graphics state will not be visible outside the
538
538
group.</p>
539
539
<p>
543
543
<col align="left" valign="top">
544
544
<tbody>
545
545
<tr>
546
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
546
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
547
547
<td> a cairo context
548
548
</td>
549
549
</tr>
550
550
<tr>
551
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 
551
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
552
552
<td> a newly created (surface) pattern containing the
553
553
results of all drawing operations performed to the group. The
554
554
caller owns the returned object and should call
555
 
<a href="cairo-Patterns.html#cairo-pattern-destroy"><code class="function">cairo_pattern_destroy()</code></a> when finished with it.
 
555
<a class="link" href="cairo-Patterns.html#cairo-pattern-destroy"><code class="function">cairo_pattern_destroy()</code></a> when finished with it.
556
556
 
557
557
</td>
558
558
</tr>
563
563
</div>
564
564
<hr>
565
565
<div class="refsect2" lang="en">
566
 
<a name="id2614604"></a><h3>
 
566
<a name="id2632078"></a><h3>
567
567
<a name="cairo-pop-group-to-source"></a>cairo_pop_group_to_source ()</h3>
568
 
<a class="indexterm" name="id2614617"></a><pre class="programlisting">void                cairo_pop_group_to_source           (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
 
568
<a class="indexterm" name="id2632091"></a><pre class="programlisting">void                cairo_pop_group_to_source           (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
569
569
<p>
570
 
Terminates the redirection begun by a call to <a href="cairo-cairo-t.html#cairo-push-group"><code class="function">cairo_push_group()</code></a> or
571
 
<a href="cairo-cairo-t.html#cairo-push-group-with-content"><code class="function">cairo_push_group_with_content()</code></a> and installs the resulting pattern
 
570
Terminates the redirection begun by a call to <a class="link" href="cairo-cairo-t.html#cairo-push-group"><code class="function">cairo_push_group()</code></a> or
 
571
<a class="link" href="cairo-cairo-t.html#cairo-push-group-with-content"><code class="function">cairo_push_group_with_content()</code></a> and installs the resulting pattern
572
572
as the source pattern in the given cairo context.
573
573
</p>
574
574
<p>
589
589
the short-lived pointer to the pattern.
590
590
</p>
591
591
<p>
592
 
The <a href="cairo-cairo-t.html#cairo-pop-group"><code class="function">cairo_pop_group()</code></a> function calls <a href="cairo-cairo-t.html#cairo-restore"><code class="function">cairo_restore()</code></a>, (balancing a
593
 
call to <a href="cairo-cairo-t.html#cairo-save"><code class="function">cairo_save()</code></a> by the push_group function), so that any
 
592
The <a class="link" href="cairo-cairo-t.html#cairo-pop-group"><code class="function">cairo_pop_group()</code></a> function calls <a class="link" href="cairo-cairo-t.html#cairo-restore"><code class="function">cairo_restore()</code></a>, (balancing a
 
593
call to <a class="link" href="cairo-cairo-t.html#cairo-save"><code class="function">cairo_save()</code></a> by the push_group function), so that any
594
594
changes to the graphics state will not be visible outside the
595
595
group.</p>
596
596
<p>
599
599
<div class="variablelist"><table border="0">
600
600
<col align="left" valign="top">
601
601
<tbody><tr>
602
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
602
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
603
603
<td> a cairo context
604
604
</td>
605
605
</tr></tbody>
609
609
</div>
610
610
<hr>
611
611
<div class="refsect2" lang="en">
612
 
<a name="id2614739"></a><h3>
 
612
<a name="id2632212"></a><h3>
613
613
<a name="cairo-get-group-target"></a>cairo_get_group_target ()</h3>
614
 
<a class="indexterm" name="id2614751"></a><pre class="programlisting"><a href="cairo-cairo-surface-t.html#cairo-surface-t">cairo_surface_t</a>*    cairo_get_group_target              (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
 
614
<a class="indexterm" name="id2632225"></a><pre class="programlisting"><a class="link" href="cairo-cairo-surface-t.html#cairo-surface-t">cairo_surface_t</a>*    cairo_get_group_target              (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
615
615
<p>
616
616
Gets the target surface for the current group as started by the
617
 
most recent call to <a href="cairo-cairo-t.html#cairo-push-group"><code class="function">cairo_push_group()</code></a> or
618
 
<a href="cairo-cairo-t.html#cairo-push-group-with-content"><code class="function">cairo_push_group_with_content()</code></a>.
 
617
most recent call to <a class="link" href="cairo-cairo-t.html#cairo-push-group"><code class="function">cairo_push_group()</code></a> or
 
618
<a class="link" href="cairo-cairo-t.html#cairo-push-group-with-content"><code class="function">cairo_push_group_with_content()</code></a>.
619
619
</p>
620
620
<p>
621
621
This function will return NULL if called "outside" of any group
622
622
rendering blocks, (that is, after the last balancing call to
623
 
<a href="cairo-cairo-t.html#cairo-pop-group"><code class="function">cairo_pop_group()</code></a> or <a href="cairo-cairo-t.html#cairo-pop-group-to-source"><code class="function">cairo_pop_group_to_source()</code></a>).</p>
 
623
<a class="link" href="cairo-cairo-t.html#cairo-pop-group"><code class="function">cairo_pop_group()</code></a> or <a class="link" href="cairo-cairo-t.html#cairo-pop-group-to-source"><code class="function">cairo_pop_group_to_source()</code></a>).</p>
624
624
<p>
625
625
 
626
626
</p>
628
628
<col align="left" valign="top">
629
629
<tbody>
630
630
<tr>
631
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
631
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
632
632
<td> a cairo context
633
633
</td>
634
634
</tr>
635
635
<tr>
636
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 
636
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
637
637
<td> the target group surface, or NULL if none.  This
638
638
object is owned by cairo. To keep a reference to it, you must call
639
 
<a href="cairo-cairo-surface-t.html#cairo-surface-reference"><code class="function">cairo_surface_reference()</code></a>.
 
639
<a class="link" href="cairo-cairo-surface-t.html#cairo-surface-reference"><code class="function">cairo_surface_reference()</code></a>.
640
640
 
641
641
</td>
642
642
</tr>
647
647
</div>
648
648
<hr>
649
649
<div class="refsect2" lang="en">
650
 
<a name="id2614863"></a><h3>
 
650
<a name="id2632336"></a><h3>
651
651
<a name="cairo-set-source-rgb"></a>cairo_set_source_rgb ()</h3>
652
 
<a class="indexterm" name="id2614873"></a><pre class="programlisting">void                cairo_set_source_rgb                (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
652
<a class="indexterm" name="id2632347"></a><pre class="programlisting">void                cairo_set_source_rgb                (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
653
653
                                                         double red,
654
654
                                                         double green,
655
655
                                                         double blue);</pre>
669
669
<col align="left" valign="top">
670
670
<tbody>
671
671
<tr>
672
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
672
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
673
673
<td> a cairo context
674
674
</td>
675
675
</tr>
676
676
<tr>
677
 
<td><span class="term"><em class="parameter"><code>red</code></em>&#160;:</span></td>
 
677
<td><p><span class="term"><em class="parameter"><code>red</code></em>&#160;:</span></p></td>
678
678
<td> red component of color
679
679
</td>
680
680
</tr>
681
681
<tr>
682
 
<td><span class="term"><em class="parameter"><code>green</code></em>&#160;:</span></td>
 
682
<td><p><span class="term"><em class="parameter"><code>green</code></em>&#160;:</span></p></td>
683
683
<td> green component of color
684
684
</td>
685
685
</tr>
686
686
<tr>
687
 
<td><span class="term"><em class="parameter"><code>blue</code></em>&#160;:</span></td>
 
687
<td><p><span class="term"><em class="parameter"><code>blue</code></em>&#160;:</span></p></td>
688
688
<td> blue component of color
689
689
</td>
690
690
</tr>
693
693
</div>
694
694
<hr>
695
695
<div class="refsect2" lang="en">
696
 
<a name="id2614988"></a><h3>
 
696
<a name="id2632462"></a><h3>
697
697
<a name="cairo-set-source-rgba"></a>cairo_set_source_rgba ()</h3>
698
 
<a class="indexterm" name="id2614998"></a><pre class="programlisting">void                cairo_set_source_rgba               (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
698
<a class="indexterm" name="id2632472"></a><pre class="programlisting">void                cairo_set_source_rgba               (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
699
699
                                                         double red,
700
700
                                                         double green,
701
701
                                                         double blue,
716
716
<col align="left" valign="top">
717
717
<tbody>
718
718
<tr>
719
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
719
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
720
720
<td> a cairo context
721
721
</td>
722
722
</tr>
723
723
<tr>
724
 
<td><span class="term"><em class="parameter"><code>red</code></em>&#160;:</span></td>
 
724
<td><p><span class="term"><em class="parameter"><code>red</code></em>&#160;:</span></p></td>
725
725
<td> red component of color
726
726
</td>
727
727
</tr>
728
728
<tr>
729
 
<td><span class="term"><em class="parameter"><code>green</code></em>&#160;:</span></td>
 
729
<td><p><span class="term"><em class="parameter"><code>green</code></em>&#160;:</span></p></td>
730
730
<td> green component of color
731
731
</td>
732
732
</tr>
733
733
<tr>
734
 
<td><span class="term"><em class="parameter"><code>blue</code></em>&#160;:</span></td>
 
734
<td><p><span class="term"><em class="parameter"><code>blue</code></em>&#160;:</span></p></td>
735
735
<td> blue component of color
736
736
</td>
737
737
</tr>
738
738
<tr>
739
 
<td><span class="term"><em class="parameter"><code>alpha</code></em>&#160;:</span></td>
 
739
<td><p><span class="term"><em class="parameter"><code>alpha</code></em>&#160;:</span></p></td>
740
740
<td> alpha component of color
741
741
</td>
742
742
</tr>
745
745
</div>
746
746
<hr>
747
747
<div class="refsect2" lang="en">
748
 
<a name="id2615133"></a><h3>
 
748
<a name="id2632606"></a><h3>
749
749
<a name="cairo-set-source"></a>cairo_set_source ()</h3>
750
 
<a class="indexterm" name="id2615143"></a><pre class="programlisting">void                cairo_set_source                    (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
751
 
                                                         <a href="cairo-Patterns.html#cairo-pattern-t">cairo_pattern_t</a> *source);</pre>
 
750
<a class="indexterm" name="id2632617"></a><pre class="programlisting">void                cairo_set_source                    (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
751
                                                         <a class="link" href="cairo-Patterns.html#cairo-pattern-t">cairo_pattern_t</a> *source);</pre>
752
752
<p>
753
753
Sets the source pattern within <em class="parameter"><code>cr</code></em> to <em class="parameter"><code>source</code></em>. This pattern
754
754
will then be used for any subsequent drawing operation until a new
756
756
</p>
757
757
<p>
758
758
Note: The pattern's transformation matrix will be locked to the
759
 
user space in effect at the time of <a href="cairo-cairo-t.html#cairo-set-source"><code class="function">cairo_set_source()</code></a>. This means
 
759
user space in effect at the time of <a class="link" href="cairo-cairo-t.html#cairo-set-source"><code class="function">cairo_set_source()</code></a>. This means
760
760
that further modifications of the current transformation matrix
761
 
will not affect the source pattern. See <a href="cairo-Patterns.html#cairo-pattern-set-matrix"><code class="function">cairo_pattern_set_matrix()</code></a>.
 
761
will not affect the source pattern. See <a class="link" href="cairo-Patterns.html#cairo-pattern-set-matrix"><code class="function">cairo_pattern_set_matrix()</code></a>.
762
762
</p>
763
763
<p>
764
764
XXX: I'd also like to direct the reader's attention to some
771
771
<col align="left" valign="top">
772
772
<tbody>
773
773
<tr>
774
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
774
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
775
775
<td> a cairo context
776
776
</td>
777
777
</tr>
778
778
<tr>
779
 
<td><span class="term"><em class="parameter"><code>source</code></em>&#160;:</span></td>
780
 
<td> a <a href="cairo-Patterns.html#cairo-pattern-t"><span class="type">cairo_pattern_t</span></a> to be used as the source for
 
779
<td><p><span class="term"><em class="parameter"><code>source</code></em>&#160;:</span></p></td>
 
780
<td> a <a class="link" href="cairo-Patterns.html#cairo-pattern-t"><span class="type">cairo_pattern_t</span></a> to be used as the source for
781
781
subsequent drawing operations.
782
782
</td>
783
783
</tr>
786
786
</div>
787
787
<hr>
788
788
<div class="refsect2" lang="en">
789
 
<a name="id2615256"></a><h3>
 
789
<a name="id2632730"></a><h3>
790
790
<a name="cairo-set-source-surface"></a>cairo_set_source_surface ()</h3>
791
 
<a class="indexterm" name="id2615267"></a><pre class="programlisting">void                cairo_set_source_surface            (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
792
 
                                                         <a href="cairo-cairo-surface-t.html#cairo-surface-t">cairo_surface_t</a> *surface,
 
791
<a class="indexterm" name="id2632740"></a><pre class="programlisting">void                cairo_set_source_surface            (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
792
                                                         <a class="link" href="cairo-cairo-surface-t.html#cairo-surface-t">cairo_surface_t</a> *surface,
793
793
                                                         double x,
794
794
                                                         double y);</pre>
795
795
<p>
796
796
This is a convenience function for creating a pattern from <em class="parameter"><code>surface</code></em>
797
 
and setting it as the source in <em class="parameter"><code>cr</code></em> with <a href="cairo-cairo-t.html#cairo-set-source"><code class="function">cairo_set_source()</code></a>.
 
797
and setting it as the source in <em class="parameter"><code>cr</code></em> with <a class="link" href="cairo-cairo-t.html#cairo-set-source"><code class="function">cairo_set_source()</code></a>.
798
798
</p>
799
799
<p>
800
800
The <em class="parameter"><code>x</code></em> and <em class="parameter"><code>y</code></em> parameters give the user-space coordinate at which
806
806
<p>
807
807
Other than the initial translation pattern matrix, as described
808
808
above, all other pattern attributes, (such as its extend mode), are
809
 
set to the default values as in <a href="cairo-Patterns.html#cairo-pattern-create-for-surface"><code class="function">cairo_pattern_create_for_surface()</code></a>.
810
 
The resulting pattern can be queried with <a href="cairo-cairo-t.html#cairo-get-source"><code class="function">cairo_get_source()</code></a> so
 
809
set to the default values as in <a class="link" href="cairo-Patterns.html#cairo-pattern-create-for-surface"><code class="function">cairo_pattern_create_for_surface()</code></a>.
 
810
The resulting pattern can be queried with <a class="link" href="cairo-cairo-t.html#cairo-get-source"><code class="function">cairo_get_source()</code></a> so
811
811
that these attributes can be modified if desired, (eg. to create a
812
 
repeating pattern with <a href="cairo-Patterns.html#cairo-pattern-set-extend"><code class="function">cairo_pattern_set_extend()</code></a>).</p>
 
812
repeating pattern with <a class="link" href="cairo-Patterns.html#cairo-pattern-set-extend"><code class="function">cairo_pattern_set_extend()</code></a>).</p>
813
813
<p>
814
814
 
815
815
</p>
817
817
<col align="left" valign="top">
818
818
<tbody>
819
819
<tr>
820
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
820
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
821
821
<td> a cairo context
822
822
</td>
823
823
</tr>
824
824
<tr>
825
 
<td><span class="term"><em class="parameter"><code>surface</code></em>&#160;:</span></td>
 
825
<td><p><span class="term"><em class="parameter"><code>surface</code></em>&#160;:</span></p></td>
826
826
<td> a surface to be used to set the source pattern
827
827
</td>
828
828
</tr>
829
829
<tr>
830
 
<td><span class="term"><em class="parameter"><code>x</code></em>&#160;:</span></td>
 
830
<td><p><span class="term"><em class="parameter"><code>x</code></em>&#160;:</span></p></td>
831
831
<td> User-space X coordinate for surface origin
832
832
</td>
833
833
</tr>
834
834
<tr>
835
 
<td><span class="term"><em class="parameter"><code>y</code></em>&#160;:</span></td>
 
835
<td><p><span class="term"><em class="parameter"><code>y</code></em>&#160;:</span></p></td>
836
836
<td> User-space Y coordinate for surface origin
837
837
</td>
838
838
</tr>
841
841
</div>
842
842
<hr>
843
843
<div class="refsect2" lang="en">
844
 
<a name="id2615455"></a><h3>
 
844
<a name="id2632929"></a><h3>
845
845
<a name="cairo-get-source"></a>cairo_get_source ()</h3>
846
 
<a class="indexterm" name="id2615466"></a><pre class="programlisting"><a href="cairo-Patterns.html#cairo-pattern-t">cairo_pattern_t</a>*    cairo_get_source                    (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
 
846
<a class="indexterm" name="id2632939"></a><pre class="programlisting"><a class="link" href="cairo-Patterns.html#cairo-pattern-t">cairo_pattern_t</a>*    cairo_get_source                    (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
847
847
<p>
848
848
Gets the current source pattern for <em class="parameter"><code>cr</code></em>.</p>
849
849
<p>
853
853
<col align="left" valign="top">
854
854
<tbody>
855
855
<tr>
856
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
856
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
857
857
<td> a cairo context
858
858
</td>
859
859
</tr>
860
860
<tr>
861
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 
861
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
862
862
<td> the current source pattern. This object is owned by
863
863
cairo. To keep a reference to it, you must call
864
 
<a href="cairo-Patterns.html#cairo-pattern-reference"><code class="function">cairo_pattern_reference()</code></a>.
 
864
<a class="link" href="cairo-Patterns.html#cairo-pattern-reference"><code class="function">cairo_pattern_reference()</code></a>.
865
865
</td>
866
866
</tr>
867
867
</tbody>
869
869
</div>
870
870
<hr>
871
871
<div class="refsect2" lang="en">
872
 
<a name="id2615535"></a><h3>
 
872
<a name="id2633008"></a><h3>
873
873
<a name="cairo-antialias-t"></a>enum cairo_antialias_t</h3>
874
 
<a class="indexterm" name="id2615545"></a><pre class="programlisting">typedef enum _cairo_antialias {
 
874
<a class="indexterm" name="id2633019"></a><pre class="programlisting">typedef enum _cairo_antialias {
875
875
    CAIRO_ANTIALIAS_DEFAULT,
876
876
    CAIRO_ANTIALIAS_NONE,
877
877
    CAIRO_ANTIALIAS_GRAY,
887
887
<col align="left" valign="top">
888
888
<tbody>
889
889
<tr>
890
 
<td><span class="term"><a name="CAIRO-ANTIALIAS-DEFAULT:CAPS"></a><code class="literal">CAIRO_ANTIALIAS_DEFAULT</code></span></td>
 
890
<td><p><span class="term"><a name="CAIRO-ANTIALIAS-DEFAULT:CAPS"></a><code class="literal">CAIRO_ANTIALIAS_DEFAULT</code></span></p></td>
891
891
<td> Use the default antialiasing for
892
892
  the subsystem and target device
893
893
</td>
894
894
</tr>
895
895
<tr>
896
 
<td><span class="term"><a name="CAIRO-ANTIALIAS-NONE:CAPS"></a><code class="literal">CAIRO_ANTIALIAS_NONE</code></span></td>
 
896
<td><p><span class="term"><a name="CAIRO-ANTIALIAS-NONE:CAPS"></a><code class="literal">CAIRO_ANTIALIAS_NONE</code></span></p></td>
897
897
<td> Use a bilevel alpha mask
898
898
</td>
899
899
</tr>
900
900
<tr>
901
 
<td><span class="term"><a name="CAIRO-ANTIALIAS-GRAY:CAPS"></a><code class="literal">CAIRO_ANTIALIAS_GRAY</code></span></td>
 
901
<td><p><span class="term"><a name="CAIRO-ANTIALIAS-GRAY:CAPS"></a><code class="literal">CAIRO_ANTIALIAS_GRAY</code></span></p></td>
902
902
<td> Perform single-color antialiasing (using
903
903
 shades of gray for black text on a white background, for example).
904
904
</td>
905
905
</tr>
906
906
<tr>
907
 
<td><span class="term"><a name="CAIRO-ANTIALIAS-SUBPIXEL:CAPS"></a><code class="literal">CAIRO_ANTIALIAS_SUBPIXEL</code></span></td>
 
907
<td><p><span class="term"><a name="CAIRO-ANTIALIAS-SUBPIXEL:CAPS"></a><code class="literal">CAIRO_ANTIALIAS_SUBPIXEL</code></span></p></td>
908
908
<td> Perform antialiasing by taking
909
909
 advantage of the order of subpixel elements on devices
910
910
 such as LCD panels
915
915
</div>
916
916
<hr>
917
917
<div class="refsect2" lang="en">
918
 
<a name="id2615654"></a><h3>
 
918
<a name="id2633128"></a><h3>
919
919
<a name="cairo-set-antialias"></a>cairo_set_antialias ()</h3>
920
 
<a class="indexterm" name="id2615665"></a><pre class="programlisting">void                cairo_set_antialias                 (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
921
 
                                                         <a href="cairo-cairo-t.html#cairo-antialias-t">cairo_antialias_t</a> antialias);</pre>
 
920
<a class="indexterm" name="id2633138"></a><pre class="programlisting">void                cairo_set_antialias                 (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
921
                                                         <a class="link" href="cairo-cairo-t.html#cairo-antialias-t">cairo_antialias_t</a> antialias);</pre>
922
922
<p>
923
923
Set the antialiasing mode of the rasterizer used for drawing shapes.
924
924
This value is a hint, and a particular backend may or may not support
925
925
a particular value.  At the current time, no backend supports
926
 
<a href="cairo-cairo-t.html#CAIRO-ANTIALIAS-SUBPIXEL:CAPS"><code class="literal">CAIRO_ANTIALIAS_SUBPIXEL</code></a> when drawing shapes.
 
926
<a class="link" href="cairo-cairo-t.html#CAIRO-ANTIALIAS-SUBPIXEL:CAPS"><code class="literal">CAIRO_ANTIALIAS_SUBPIXEL</code></a> when drawing shapes.
927
927
</p>
928
928
<p>
929
929
Note that this option does not affect text rendering, instead see
930
 
<a href="cairo-Font-Options.html#cairo-font-options-set-antialias"><code class="function">cairo_font_options_set_antialias()</code></a>.</p>
 
930
<a class="link" href="cairo-Font-Options.html#cairo-font-options-set-antialias"><code class="function">cairo_font_options_set_antialias()</code></a>.</p>
931
931
<p>
932
932
 
933
933
</p>
935
935
<col align="left" valign="top">
936
936
<tbody>
937
937
<tr>
938
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
939
 
<td> a <a href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>
 
938
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
 
939
<td> a <a class="link" href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>
940
940
</td>
941
941
</tr>
942
942
<tr>
943
 
<td><span class="term"><em class="parameter"><code>antialias</code></em>&#160;:</span></td>
 
943
<td><p><span class="term"><em class="parameter"><code>antialias</code></em>&#160;:</span></p></td>
944
944
<td> the new antialiasing mode
945
945
</td>
946
946
</tr>
949
949
</div>
950
950
<hr>
951
951
<div class="refsect2" lang="en">
952
 
<a name="id2615760"></a><h3>
 
952
<a name="id2633233"></a><h3>
953
953
<a name="cairo-get-antialias"></a>cairo_get_antialias ()</h3>
954
 
<a class="indexterm" name="id2615770"></a><pre class="programlisting"><a href="cairo-cairo-t.html#cairo-antialias-t">cairo_antialias_t</a>   cairo_get_antialias                 (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
 
954
<a class="indexterm" name="id2633244"></a><pre class="programlisting"><a class="link" href="cairo-cairo-t.html#cairo-antialias-t">cairo_antialias_t</a>   cairo_get_antialias                 (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
955
955
<p>
956
956
Gets the current shape antialiasing mode, as set by <code class="function">cairo_set_shape_antialias()</code>.</p>
957
957
<p>
961
961
<col align="left" valign="top">
962
962
<tbody>
963
963
<tr>
964
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
964
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
965
965
<td> a cairo context
966
966
</td>
967
967
</tr>
968
968
<tr>
969
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 
969
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
970
970
<td> the current shape antialiasing mode.
971
971
</td>
972
972
</tr>
975
975
</div>
976
976
<hr>
977
977
<div class="refsect2" lang="en">
978
 
<a name="id2615834"></a><h3>
 
978
<a name="id2633307"></a><h3>
979
979
<a name="cairo-set-dash"></a>cairo_set_dash ()</h3>
980
 
<a class="indexterm" name="id2615844"></a><pre class="programlisting">void                cairo_set_dash                      (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
980
<a class="indexterm" name="id2633318"></a><pre class="programlisting">void                cairo_set_dash                      (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
981
981
                                                         const double *dashes,
982
982
                                                         int num_dashes,
983
983
                                                         double offset);</pre>
984
984
<p>
985
 
Sets the dash pattern to be used by <a href="cairo-cairo-t.html#cairo-stroke"><code class="function">cairo_stroke()</code></a>. A dash pattern
 
985
Sets the dash pattern to be used by <a class="link" href="cairo-cairo-t.html#cairo-stroke"><code class="function">cairo_stroke()</code></a>. A dash pattern
986
986
is specified by <em class="parameter"><code>dashes</code></em>, an array of positive values. Each value
987
987
provides the length of alternate "on" and "off" portions of the
988
988
stroke. The <em class="parameter"><code>offset</code></em> specifies an offset into the pattern at which
997
997
<p>
998
998
Note: The length values are in user-space units as evaluated at the
999
999
time of stroking. This is not necessarily the same as the user
1000
 
space at the time of <a href="cairo-cairo-t.html#cairo-set-dash"><code class="function">cairo_set_dash()</code></a>.
 
1000
space at the time of <a class="link" href="cairo-cairo-t.html#cairo-set-dash"><code class="function">cairo_set_dash()</code></a>.
1001
1001
</p>
1002
1002
<p>
1003
1003
If <em class="parameter"><code>num_dashes</code></em> is 0 dashing is disabled.
1010
1010
<p>
1011
1011
If any value in <em class="parameter"><code>dashes</code></em> is negative, or if all values are 0, then
1012
1012
<em class="parameter"><code>cairo_t</code></em> will be put into an error state with a status of
1013
 
<a href="cairo-Error-Handling.html#CAIRO-STATUS-INVALID-DASH:CAPS"><span class="type">CAIRO_STATUS_INVALID_DASH</span></a>.</p>
 
1013
<a class="link" href="cairo-Error-Handling.html#CAIRO-STATUS-INVALID-DASH:CAPS"><span class="type">CAIRO_STATUS_INVALID_DASH</span></a>.</p>
1014
1014
<p>
1015
1015
 
1016
1016
</p>
1018
1018
<col align="left" valign="top">
1019
1019
<tbody>
1020
1020
<tr>
1021
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
1021
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
1022
1022
<td> a cairo context
1023
1023
</td>
1024
1024
</tr>
1025
1025
<tr>
1026
 
<td><span class="term"><em class="parameter"><code>dashes</code></em>&#160;:</span></td>
 
1026
<td><p><span class="term"><em class="parameter"><code>dashes</code></em>&#160;:</span></p></td>
1027
1027
<td> an array specifying alternate lengths of on and off stroke portions
1028
1028
</td>
1029
1029
</tr>
1030
1030
<tr>
1031
 
<td><span class="term"><em class="parameter"><code>num_dashes</code></em>&#160;:</span></td>
 
1031
<td><p><span class="term"><em class="parameter"><code>num_dashes</code></em>&#160;:</span></p></td>
1032
1032
<td> the length of the dashes array
1033
1033
</td>
1034
1034
</tr>
1035
1035
<tr>
1036
 
<td><span class="term"><em class="parameter"><code>offset</code></em>&#160;:</span></td>
 
1036
<td><p><span class="term"><em class="parameter"><code>offset</code></em>&#160;:</span></p></td>
1037
1037
<td> an offset into the dash pattern at which the stroke should start
1038
1038
</td>
1039
1039
</tr>
1042
1042
</div>
1043
1043
<hr>
1044
1044
<div class="refsect2" lang="en">
1045
 
<a name="id2616040"></a><h3>
 
1045
<a name="id2633514"></a><h3>
1046
1046
<a name="cairo-get-dash-count"></a>cairo_get_dash_count ()</h3>
1047
 
<a class="indexterm" name="id2616053"></a><pre class="programlisting">int                 cairo_get_dash_count                (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
 
1047
<a class="indexterm" name="id2633526"></a><pre class="programlisting">int                 cairo_get_dash_count                (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
1048
1048
<p>
1049
1049
This function returns the length of the dash array in <em class="parameter"><code>cr</code></em> (0 if dashing
1050
1050
is not currently in effect).
1051
1051
</p>
1052
1052
<p>
1053
 
See also <a href="cairo-cairo-t.html#cairo-set-dash"><code class="function">cairo_set_dash()</code></a> and <a href="cairo-cairo-t.html#cairo-get-dash"><code class="function">cairo_get_dash()</code></a>.</p>
 
1053
See also <a class="link" href="cairo-cairo-t.html#cairo-set-dash"><code class="function">cairo_set_dash()</code></a> and <a class="link" href="cairo-cairo-t.html#cairo-get-dash"><code class="function">cairo_get_dash()</code></a>.</p>
1054
1054
<p>
1055
1055
 
1056
1056
</p>
1058
1058
<col align="left" valign="top">
1059
1059
<tbody>
1060
1060
<tr>
1061
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
1062
 
<td> a <a href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>
 
1061
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
 
1062
<td> a <a class="link" href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>
1063
1063
</td>
1064
1064
</tr>
1065
1065
<tr>
1066
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 
1066
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
1067
1067
<td> the length of the dash array, or 0 if no dash array set.
1068
1068
 
1069
1069
</td>
1075
1075
</div>
1076
1076
<hr>
1077
1077
<div class="refsect2" lang="en">
1078
 
<a name="id2616147"></a><h3>
 
1078
<a name="id2633620"></a><h3>
1079
1079
<a name="cairo-get-dash"></a>cairo_get_dash ()</h3>
1080
 
<a class="indexterm" name="id2616159"></a><pre class="programlisting">void                cairo_get_dash                      (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
1080
<a class="indexterm" name="id2633632"></a><pre class="programlisting">void                cairo_get_dash                      (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
1081
1081
                                                         double *dashes,
1082
1082
                                                         double *offset);</pre>
1083
1083
<p>
1084
1084
Gets the current dash array.  If not <code class="literal">NULL</code>, <em class="parameter"><code>dashes</code></em> should be big
1085
1085
enough to hold at least the number of values returned by
1086
 
<a href="cairo-cairo-t.html#cairo-get-dash-count"><code class="function">cairo_get_dash_count()</code></a>.</p>
 
1086
<a class="link" href="cairo-cairo-t.html#cairo-get-dash-count"><code class="function">cairo_get_dash_count()</code></a>.</p>
1087
1087
<p>
1088
1088
 
1089
1089
</p>
1091
1091
<col align="left" valign="top">
1092
1092
<tbody>
1093
1093
<tr>
1094
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
1095
 
<td> a <a href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>
 
1094
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
 
1095
<td> a <a class="link" href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>
1096
1096
</td>
1097
1097
</tr>
1098
1098
<tr>
1099
 
<td><span class="term"><em class="parameter"><code>dashes</code></em>&#160;:</span></td>
 
1099
<td><p><span class="term"><em class="parameter"><code>dashes</code></em>&#160;:</span></p></td>
1100
1100
<td> return value for the dash array, or <code class="literal">NULL</code>
1101
1101
</td>
1102
1102
</tr>
1103
1103
<tr>
1104
 
<td><span class="term"><em class="parameter"><code>offset</code></em>&#160;:</span></td>
 
1104
<td><p><span class="term"><em class="parameter"><code>offset</code></em>&#160;:</span></p></td>
1105
1105
<td> return value for the current dash offset, or <code class="literal">NULL</code>
1106
1106
</td>
1107
1107
</tr>
1112
1112
</div>
1113
1113
<hr>
1114
1114
<div class="refsect2" lang="en">
1115
 
<a name="id2616296"></a><h3>
 
1115
<a name="id2633769"></a><h3>
1116
1116
<a name="cairo-fill-rule-t"></a>enum cairo_fill_rule_t</h3>
1117
 
<a class="indexterm" name="id2616306"></a><pre class="programlisting">typedef enum _cairo_fill_rule {
 
1117
<a class="indexterm" name="id2633780"></a><pre class="programlisting">typedef enum _cairo_fill_rule {
1118
1118
    CAIRO_FILL_RULE_WINDING,
1119
1119
    CAIRO_FILL_RULE_EVEN_ODD
1120
1120
} cairo_fill_rule_t;
1121
1121
</pre>
1122
1122
<p>
1123
 
<a href="cairo-cairo-t.html#cairo-fill-rule-t"><span class="type">cairo_fill_rule_t</span></a> is used to select how paths are filled. For both
 
1123
<a class="link" href="cairo-cairo-t.html#cairo-fill-rule-t"><span class="type">cairo_fill_rule_t</span></a> is used to select how paths are filled. For both
1124
1124
fill rules, whether or not a point is included in the fill is
1125
1125
determined by taking a ray from that point to infinity and looking
1126
1126
at intersections with the path. The ray can be in any direction,
1138
1138
<col align="left" valign="top">
1139
1139
<tbody>
1140
1140
<tr>
1141
 
<td><span class="term"><a name="CAIRO-FILL-RULE-WINDING:CAPS"></a><code class="literal">CAIRO_FILL_RULE_WINDING</code></span></td>
 
1141
<td><p><span class="term"><a name="CAIRO-FILL-RULE-WINDING:CAPS"></a><code class="literal">CAIRO_FILL_RULE_WINDING</code></span></p></td>
1142
1142
<td> If the path crosses the ray from
1143
1143
left-to-right, counts +1. If the path crosses the ray
1144
1144
from right to left, counts -1. (Left and right are determined
1147
1147
</td>
1148
1148
</tr>
1149
1149
<tr>
1150
 
<td><span class="term"><a name="CAIRO-FILL-RULE-EVEN-ODD:CAPS"></a><code class="literal">CAIRO_FILL_RULE_EVEN_ODD</code></span></td>
 
1150
<td><p><span class="term"><a name="CAIRO-FILL-RULE-EVEN-ODD:CAPS"></a><code class="literal">CAIRO_FILL_RULE_EVEN_ODD</code></span></p></td>
1151
1151
<td> Counts the total number of
1152
1152
intersections, without regard to the orientation of the contour. If
1153
1153
the total number of intersections is odd, the point will be
1159
1159
</div>
1160
1160
<hr>
1161
1161
<div class="refsect2" lang="en">
1162
 
<a name="id2616396"></a><h3>
 
1162
<a name="id2633870"></a><h3>
1163
1163
<a name="cairo-set-fill-rule"></a>cairo_set_fill_rule ()</h3>
1164
 
<a class="indexterm" name="id2616407"></a><pre class="programlisting">void                cairo_set_fill_rule                 (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
1165
 
                                                         <a href="cairo-cairo-t.html#cairo-fill-rule-t">cairo_fill_rule_t</a> fill_rule);</pre>
 
1164
<a class="indexterm" name="id2633880"></a><pre class="programlisting">void                cairo_set_fill_rule                 (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
1165
                                                         <a class="link" href="cairo-cairo-t.html#cairo-fill-rule-t">cairo_fill_rule_t</a> fill_rule);</pre>
1166
1166
<p>
1167
1167
Set the current fill rule within the cairo context. The fill rule
1168
1168
is used to determine which regions are inside or outside a complex
1169
1169
(potentially self-intersecting) path. The current fill rule affects
1170
 
both <a href="cairo-cairo-t.html#cairo-fill"><code class="function">cairo_fill()</code></a> and <a href="cairo-cairo-t.html#cairo-clip"><code class="function">cairo_clip()</code></a>. See <a href="cairo-cairo-t.html#cairo-fill-rule-t"><span class="type">cairo_fill_rule_t</span></a> for details
 
1170
both <a class="link" href="cairo-cairo-t.html#cairo-fill"><code class="function">cairo_fill()</code></a> and <a class="link" href="cairo-cairo-t.html#cairo-clip"><code class="function">cairo_clip()</code></a>. See <a class="link" href="cairo-cairo-t.html#cairo-fill-rule-t"><span class="type">cairo_fill_rule_t</span></a> for details
1171
1171
on the semantics of each available fill rule.</p>
1172
1172
<p>
1173
1173
 
1176
1176
<col align="left" valign="top">
1177
1177
<tbody>
1178
1178
<tr>
1179
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
1180
 
<td> a <a href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>
 
1179
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
 
1180
<td> a <a class="link" href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>
1181
1181
</td>
1182
1182
</tr>
1183
1183
<tr>
1184
 
<td><span class="term"><em class="parameter"><code>fill_rule</code></em>&#160;:</span></td>
1185
 
<td> a fill rule, specified as a <a href="cairo-cairo-t.html#cairo-fill-rule-t"><span class="type">cairo_fill_rule_t</span></a>
 
1184
<td><p><span class="term"><em class="parameter"><code>fill_rule</code></em>&#160;:</span></p></td>
 
1185
<td> a fill rule, specified as a <a class="link" href="cairo-cairo-t.html#cairo-fill-rule-t"><span class="type">cairo_fill_rule_t</span></a>
1186
1186
</td>
1187
1187
</tr>
1188
1188
</tbody>
1190
1190
</div>
1191
1191
<hr>
1192
1192
<div class="refsect2" lang="en">
1193
 
<a name="id2616510"></a><h3>
 
1193
<a name="id2633983"></a><h3>
1194
1194
<a name="cairo-get-fill-rule"></a>cairo_get_fill_rule ()</h3>
1195
 
<a class="indexterm" name="id2616520"></a><pre class="programlisting"><a href="cairo-cairo-t.html#cairo-fill-rule-t">cairo_fill_rule_t</a>   cairo_get_fill_rule                 (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
 
1195
<a class="indexterm" name="id2633994"></a><pre class="programlisting"><a class="link" href="cairo-cairo-t.html#cairo-fill-rule-t">cairo_fill_rule_t</a>   cairo_get_fill_rule                 (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
1196
1196
<p>
1197
 
Gets the current fill rule, as set by <a href="cairo-cairo-t.html#cairo-set-fill-rule"><code class="function">cairo_set_fill_rule()</code></a>.</p>
 
1197
Gets the current fill rule, as set by <a class="link" href="cairo-cairo-t.html#cairo-set-fill-rule"><code class="function">cairo_set_fill_rule()</code></a>.</p>
1198
1198
<p>
1199
1199
 
1200
1200
</p>
1202
1202
<col align="left" valign="top">
1203
1203
<tbody>
1204
1204
<tr>
1205
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
1205
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
1206
1206
<td> a cairo context
1207
1207
</td>
1208
1208
</tr>
1209
1209
<tr>
1210
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 
1210
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
1211
1211
<td> the current fill rule.
1212
1212
</td>
1213
1213
</tr>
1216
1216
</div>
1217
1217
<hr>
1218
1218
<div class="refsect2" lang="en">
1219
 
<a name="id2616583"></a><h3>
 
1219
<a name="id2634056"></a><h3>
1220
1220
<a name="cairo-line-cap-t"></a>enum cairo_line_cap_t</h3>
1221
 
<a class="indexterm" name="id2616593"></a><pre class="programlisting">typedef enum _cairo_line_cap {
 
1221
<a class="indexterm" name="id2634067"></a><pre class="programlisting">typedef enum _cairo_line_cap {
1222
1222
    CAIRO_LINE_CAP_BUTT,
1223
1223
    CAIRO_LINE_CAP_ROUND,
1224
1224
    CAIRO_LINE_CAP_SQUARE
1233
1233
<col align="left" valign="top">
1234
1234
<tbody>
1235
1235
<tr>
1236
 
<td><span class="term"><a name="CAIRO-LINE-CAP-BUTT:CAPS"></a><code class="literal">CAIRO_LINE_CAP_BUTT</code></span></td>
 
1236
<td><p><span class="term"><a name="CAIRO-LINE-CAP-BUTT:CAPS"></a><code class="literal">CAIRO_LINE_CAP_BUTT</code></span></p></td>
1237
1237
<td> start(stop) the line exactly at the start(end) point
1238
1238
</td>
1239
1239
</tr>
1240
1240
<tr>
1241
 
<td><span class="term"><a name="CAIRO-LINE-CAP-ROUND:CAPS"></a><code class="literal">CAIRO_LINE_CAP_ROUND</code></span></td>
 
1241
<td><p><span class="term"><a name="CAIRO-LINE-CAP-ROUND:CAPS"></a><code class="literal">CAIRO_LINE_CAP_ROUND</code></span></p></td>
1242
1242
<td> use a round ending, the center of the circle is the end point
1243
1243
</td>
1244
1244
</tr>
1245
1245
<tr>
1246
 
<td><span class="term"><a name="CAIRO-LINE-CAP-SQUARE:CAPS"></a><code class="literal">CAIRO_LINE_CAP_SQUARE</code></span></td>
 
1246
<td><p><span class="term"><a name="CAIRO-LINE-CAP-SQUARE:CAPS"></a><code class="literal">CAIRO_LINE_CAP_SQUARE</code></span></p></td>
1247
1247
<td> use squared ending, the center of the square is the end point
1248
1248
</td>
1249
1249
</tr>
1252
1252
</div>
1253
1253
<hr>
1254
1254
<div class="refsect2" lang="en">
1255
 
<a name="id2616677"></a><h3>
 
1255
<a name="id2634151"></a><h3>
1256
1256
<a name="cairo-set-line-cap"></a>cairo_set_line_cap ()</h3>
1257
 
<a class="indexterm" name="id2616688"></a><pre class="programlisting">void                cairo_set_line_cap                  (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
1258
 
                                                         <a href="cairo-cairo-t.html#cairo-line-cap-t">cairo_line_cap_t</a> line_cap);</pre>
 
1257
<a class="indexterm" name="id2634161"></a><pre class="programlisting">void                cairo_set_line_cap                  (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
1258
                                                         <a class="link" href="cairo-cairo-t.html#cairo-line-cap-t">cairo_line_cap_t</a> line_cap);</pre>
1259
1259
<p>
1260
1260
Sets the current line cap style within the cairo context. See
1261
 
<a href="cairo-cairo-t.html#cairo-line-cap-t"><span class="type">cairo_line_cap_t</span></a> for details about how the available line cap
 
1261
<a class="link" href="cairo-cairo-t.html#cairo-line-cap-t"><span class="type">cairo_line_cap_t</span></a> for details about how the available line cap
1262
1262
styles are drawn.
1263
1263
</p>
1264
1264
<p>
1265
1265
As with the other stroke parameters, the current line cap style is
1266
 
examined by <a href="cairo-cairo-t.html#cairo-stroke"><code class="function">cairo_stroke()</code></a>, <a href="cairo-cairo-t.html#cairo-stroke-extents"><code class="function">cairo_stroke_extents()</code></a>, and
 
1266
examined by <a class="link" href="cairo-cairo-t.html#cairo-stroke"><code class="function">cairo_stroke()</code></a>, <a class="link" href="cairo-cairo-t.html#cairo-stroke-extents"><code class="function">cairo_stroke_extents()</code></a>, and
1267
1267
<code class="function">cairo_stroke_to_path()</code>, but does not have any effect during path
1268
1268
construction.</p>
1269
1269
<p>
1273
1273
<col align="left" valign="top">
1274
1274
<tbody>
1275
1275
<tr>
1276
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
1276
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
1277
1277
<td> a cairo context
1278
1278
</td>
1279
1279
</tr>
1280
1280
<tr>
1281
 
<td><span class="term"><em class="parameter"><code>line_cap</code></em>&#160;:</span></td>
 
1281
<td><p><span class="term"><em class="parameter"><code>line_cap</code></em>&#160;:</span></p></td>
1282
1282
<td> a line cap style
1283
1283
</td>
1284
1284
</tr>
1287
1287
</div>
1288
1288
<hr>
1289
1289
<div class="refsect2" lang="en">
1290
 
<a name="id2616790"></a><h3>
 
1290
<a name="id2634264"></a><h3>
1291
1291
<a name="cairo-get-line-cap"></a>cairo_get_line_cap ()</h3>
1292
 
<a class="indexterm" name="id2616800"></a><pre class="programlisting"><a href="cairo-cairo-t.html#cairo-line-cap-t">cairo_line_cap_t</a>    cairo_get_line_cap                  (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
 
1292
<a class="indexterm" name="id2634274"></a><pre class="programlisting"><a class="link" href="cairo-cairo-t.html#cairo-line-cap-t">cairo_line_cap_t</a>    cairo_get_line_cap                  (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
1293
1293
<p>
1294
 
Gets the current line cap style, as set by <a href="cairo-cairo-t.html#cairo-set-line-cap"><code class="function">cairo_set_line_cap()</code></a>.</p>
 
1294
Gets the current line cap style, as set by <a class="link" href="cairo-cairo-t.html#cairo-set-line-cap"><code class="function">cairo_set_line_cap()</code></a>.</p>
1295
1295
<p>
1296
1296
 
1297
1297
</p>
1299
1299
<col align="left" valign="top">
1300
1300
<tbody>
1301
1301
<tr>
1302
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
1302
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
1303
1303
<td> a cairo context
1304
1304
</td>
1305
1305
</tr>
1306
1306
<tr>
1307
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 
1307
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
1308
1308
<td> the current line cap style.
1309
1309
</td>
1310
1310
</tr>
1313
1313
</div>
1314
1314
<hr>
1315
1315
<div class="refsect2" lang="en">
1316
 
<a name="id2616864"></a><h3>
 
1316
<a name="id2634337"></a><h3>
1317
1317
<a name="cairo-line-join-t"></a>enum cairo_line_join_t</h3>
1318
 
<a class="indexterm" name="id2616874"></a><pre class="programlisting">typedef enum _cairo_line_join {
 
1318
<a class="indexterm" name="id2634348"></a><pre class="programlisting">typedef enum _cairo_line_join {
1319
1319
    CAIRO_LINE_JOIN_MITER,
1320
1320
    CAIRO_LINE_JOIN_ROUND,
1321
1321
    CAIRO_LINE_JOIN_BEVEL
1330
1330
<col align="left" valign="top">
1331
1331
<tbody>
1332
1332
<tr>
1333
 
<td><span class="term"><a name="CAIRO-LINE-JOIN-MITER:CAPS"></a><code class="literal">CAIRO_LINE_JOIN_MITER</code></span></td>
 
1333
<td><p><span class="term"><a name="CAIRO-LINE-JOIN-MITER:CAPS"></a><code class="literal">CAIRO_LINE_JOIN_MITER</code></span></p></td>
1334
1334
<td> use a sharp (angled) corner, see
1335
 
<a href="cairo-cairo-t.html#cairo-set-miter-limit"><code class="function">cairo_set_miter_limit()</code></a>
 
1335
<a class="link" href="cairo-cairo-t.html#cairo-set-miter-limit"><code class="function">cairo_set_miter_limit()</code></a>
1336
1336
</td>
1337
1337
</tr>
1338
1338
<tr>
1339
 
<td><span class="term"><a name="CAIRO-LINE-JOIN-ROUND:CAPS"></a><code class="literal">CAIRO_LINE_JOIN_ROUND</code></span></td>
 
1339
<td><p><span class="term"><a name="CAIRO-LINE-JOIN-ROUND:CAPS"></a><code class="literal">CAIRO_LINE_JOIN_ROUND</code></span></p></td>
1340
1340
<td> use a rounded join, the center of the circle is the
1341
1341
joint point
1342
1342
</td>
1343
1343
</tr>
1344
1344
<tr>
1345
 
<td><span class="term"><a name="CAIRO-LINE-JOIN-BEVEL:CAPS"></a><code class="literal">CAIRO_LINE_JOIN_BEVEL</code></span></td>
 
1345
<td><p><span class="term"><a name="CAIRO-LINE-JOIN-BEVEL:CAPS"></a><code class="literal">CAIRO_LINE_JOIN_BEVEL</code></span></p></td>
1346
1346
<td> use a cut-off join, the join is cut off at half
1347
1347
the line width from the joint point
1348
1348
</td>
1352
1352
</div>
1353
1353
<hr>
1354
1354
<div class="refsect2" lang="en">
1355
 
<a name="id2616980"></a><h3>
 
1355
<a name="id2634453"></a><h3>
1356
1356
<a name="cairo-set-line-join"></a>cairo_set_line_join ()</h3>
1357
 
<a class="indexterm" name="id2616994"></a><pre class="programlisting">void                cairo_set_line_join                 (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
1358
 
                                                         <a href="cairo-cairo-t.html#cairo-line-join-t">cairo_line_join_t</a> line_join);</pre>
 
1357
<a class="indexterm" name="id2634466"></a><pre class="programlisting">void                cairo_set_line_join                 (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
1358
                                                         <a class="link" href="cairo-cairo-t.html#cairo-line-join-t">cairo_line_join_t</a> line_join);</pre>
1359
1359
<p>
1360
1360
Sets the current line join style within the cairo context. See
1361
 
<a href="cairo-cairo-t.html#cairo-line-join-t"><span class="type">cairo_line_join_t</span></a> for details about how the available line join
 
1361
<a class="link" href="cairo-cairo-t.html#cairo-line-join-t"><span class="type">cairo_line_join_t</span></a> for details about how the available line join
1362
1362
styles are drawn.
1363
1363
</p>
1364
1364
<p>
1365
1365
As with the other stroke parameters, the current line join style is
1366
 
examined by <a href="cairo-cairo-t.html#cairo-stroke"><code class="function">cairo_stroke()</code></a>, <a href="cairo-cairo-t.html#cairo-stroke-extents"><code class="function">cairo_stroke_extents()</code></a>, and
 
1366
examined by <a class="link" href="cairo-cairo-t.html#cairo-stroke"><code class="function">cairo_stroke()</code></a>, <a class="link" href="cairo-cairo-t.html#cairo-stroke-extents"><code class="function">cairo_stroke_extents()</code></a>, and
1367
1367
<code class="function">cairo_stroke_to_path()</code>, but does not have any effect during path
1368
1368
construction.</p>
1369
1369
<p>
1373
1373
<col align="left" valign="top">
1374
1374
<tbody>
1375
1375
<tr>
1376
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
1376
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
1377
1377
<td> a cairo context
1378
1378
</td>
1379
1379
</tr>
1380
1380
<tr>
1381
 
<td><span class="term"><em class="parameter"><code>line_join</code></em>&#160;:</span></td>
 
1381
<td><p><span class="term"><em class="parameter"><code>line_join</code></em>&#160;:</span></p></td>
1382
1382
<td> a line joint style
1383
1383
</td>
1384
1384
</tr>
1387
1387
</div>
1388
1388
<hr>
1389
1389
<div class="refsect2" lang="en">
1390
 
<a name="id2617109"></a><h3>
 
1390
<a name="id2634582"></a><h3>
1391
1391
<a name="cairo-get-line-join"></a>cairo_get_line_join ()</h3>
1392
 
<a class="indexterm" name="id2617123"></a><pre class="programlisting"><a href="cairo-cairo-t.html#cairo-line-join-t">cairo_line_join_t</a>   cairo_get_line_join                 (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
 
1392
<a class="indexterm" name="id2634596"></a><pre class="programlisting"><a class="link" href="cairo-cairo-t.html#cairo-line-join-t">cairo_line_join_t</a>   cairo_get_line_join                 (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
1393
1393
<p>
1394
 
Gets the current line join style, as set by <a href="cairo-cairo-t.html#cairo-set-line-join"><code class="function">cairo_set_line_join()</code></a>.</p>
 
1394
Gets the current line join style, as set by <a class="link" href="cairo-cairo-t.html#cairo-set-line-join"><code class="function">cairo_set_line_join()</code></a>.</p>
1395
1395
<p>
1396
1396
 
1397
1397
</p>
1399
1399
<col align="left" valign="top">
1400
1400
<tbody>
1401
1401
<tr>
1402
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
1402
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
1403
1403
<td> a cairo context
1404
1404
</td>
1405
1405
</tr>
1406
1406
<tr>
1407
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 
1407
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
1408
1408
<td> the current line join style.
1409
1409
</td>
1410
1410
</tr>
1413
1413
</div>
1414
1414
<hr>
1415
1415
<div class="refsect2" lang="en">
1416
 
<a name="id2617194"></a><h3>
 
1416
<a name="id2634667"></a><h3>
1417
1417
<a name="cairo-set-line-width"></a>cairo_set_line_width ()</h3>
1418
 
<a class="indexterm" name="id2617207"></a><pre class="programlisting">void                cairo_set_line_width                (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
1418
<a class="indexterm" name="id2634680"></a><pre class="programlisting">void                cairo_set_line_width                (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
1419
1419
                                                         double width);</pre>
1420
1420
<p>
1421
1421
Sets the current line width within the cairo context. The line
1427
1427
Note: When the description above refers to user space and CTM it
1428
1428
refers to the user space and CTM in effect at the time of the
1429
1429
stroking operation, not the user space and CTM in effect at the
1430
 
time of the call to <a href="cairo-cairo-t.html#cairo-set-line-width"><code class="function">cairo_set_line_width()</code></a>. The simplest usage
 
1430
time of the call to <a class="link" href="cairo-cairo-t.html#cairo-set-line-width"><code class="function">cairo_set_line_width()</code></a>. The simplest usage
1431
1431
makes both of these spaces identical. That is, if there is no
1432
1432
change to the CTM between a call to <code class="function">cairo_set_line_with()</code> and the
1433
1433
stroking operation, then one can just pass user-space values to
1434
 
<a href="cairo-cairo-t.html#cairo-set-line-width"><code class="function">cairo_set_line_width()</code></a> and ignore this note.
 
1434
<a class="link" href="cairo-cairo-t.html#cairo-set-line-width"><code class="function">cairo_set_line_width()</code></a> and ignore this note.
1435
1435
</p>
1436
1436
<p>
1437
1437
As with the other stroke parameters, the current line width is
1438
 
examined by <a href="cairo-cairo-t.html#cairo-stroke"><code class="function">cairo_stroke()</code></a>, <a href="cairo-cairo-t.html#cairo-stroke-extents"><code class="function">cairo_stroke_extents()</code></a>, and
 
1438
examined by <a class="link" href="cairo-cairo-t.html#cairo-stroke"><code class="function">cairo_stroke()</code></a>, <a class="link" href="cairo-cairo-t.html#cairo-stroke-extents"><code class="function">cairo_stroke_extents()</code></a>, and
1439
1439
<code class="function">cairo_stroke_to_path()</code>, but does not have any effect during path
1440
1440
construction.
1441
1441
</p>
1448
1448
<col align="left" valign="top">
1449
1449
<tbody>
1450
1450
<tr>
1451
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
1452
 
<td> a <a href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>
 
1451
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
 
1452
<td> a <a class="link" href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>
1453
1453
</td>
1454
1454
</tr>
1455
1455
<tr>
1456
 
<td><span class="term"><em class="parameter"><code>width</code></em>&#160;:</span></td>
 
1456
<td><p><span class="term"><em class="parameter"><code>width</code></em>&#160;:</span></p></td>
1457
1457
<td> a line width
1458
1458
</td>
1459
1459
</tr>
1462
1462
</div>
1463
1463
<hr>
1464
1464
<div class="refsect2" lang="en">
1465
 
<a name="id2617369"></a><h3>
 
1465
<a name="id2634842"></a><h3>
1466
1466
<a name="cairo-get-line-width"></a>cairo_get_line_width ()</h3>
1467
 
<a class="indexterm" name="id2617382"></a><pre class="programlisting">double              cairo_get_line_width                (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
 
1467
<a class="indexterm" name="id2634855"></a><pre class="programlisting">double              cairo_get_line_width                (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
1468
1468
<p>
1469
1469
This function returns the current line width value exactly as set by
1470
 
<a href="cairo-cairo-t.html#cairo-set-line-width"><code class="function">cairo_set_line_width()</code></a>. Note that the value is unchanged even if
1471
 
the CTM has changed between the calls to <a href="cairo-cairo-t.html#cairo-set-line-width"><code class="function">cairo_set_line_width()</code></a> and
1472
 
<a href="cairo-cairo-t.html#cairo-get-line-width"><code class="function">cairo_get_line_width()</code></a>.</p>
 
1470
<a class="link" href="cairo-cairo-t.html#cairo-set-line-width"><code class="function">cairo_set_line_width()</code></a>. Note that the value is unchanged even if
 
1471
the CTM has changed between the calls to <a class="link" href="cairo-cairo-t.html#cairo-set-line-width"><code class="function">cairo_set_line_width()</code></a> and
 
1472
<a class="link" href="cairo-cairo-t.html#cairo-get-line-width"><code class="function">cairo_get_line_width()</code></a>.</p>
1473
1473
<p>
1474
1474
 
1475
1475
</p>
1477
1477
<col align="left" valign="top">
1478
1478
<tbody>
1479
1479
<tr>
1480
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
1480
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
1481
1481
<td> a cairo context
1482
1482
</td>
1483
1483
</tr>
1484
1484
<tr>
1485
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 
1485
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
1486
1486
<td> the current line width.
1487
1487
</td>
1488
1488
</tr>
1491
1491
</div>
1492
1492
<hr>
1493
1493
<div class="refsect2" lang="en">
1494
 
<a name="id2617475"></a><h3>
 
1494
<a name="id2634948"></a><h3>
1495
1495
<a name="cairo-set-miter-limit"></a>cairo_set_miter_limit ()</h3>
1496
 
<a class="indexterm" name="id2617488"></a><pre class="programlisting">void                cairo_set_miter_limit               (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
1496
<a class="indexterm" name="id2634961"></a><pre class="programlisting">void                cairo_set_miter_limit               (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
1497
1497
                                                         double limit);</pre>
1498
1498
<p>
1499
1499
Sets the current miter limit within the cairo context.
1500
1500
</p>
1501
1501
<p>
1502
 
If the current line join style is set to <a href="cairo-cairo-t.html#CAIRO-LINE-JOIN-MITER:CAPS"><code class="literal">CAIRO_LINE_JOIN_MITER</code></a>
1503
 
(see <a href="cairo-cairo-t.html#cairo-set-line-join"><code class="function">cairo_set_line_join()</code></a>), the miter limit is used to determine
 
1502
If the current line join style is set to <a class="link" href="cairo-cairo-t.html#CAIRO-LINE-JOIN-MITER:CAPS"><code class="literal">CAIRO_LINE_JOIN_MITER</code></a>
 
1503
(see <a class="link" href="cairo-cairo-t.html#cairo-set-line-join"><code class="function">cairo_set_line_join()</code></a>), the miter limit is used to determine
1504
1504
whether the lines should be joined with a bevel instead of a miter.
1505
1505
Cairo divides the length of the miter by the line width.
1506
1506
If the result is greater than the miter limit, the style is
1508
1508
</p>
1509
1509
<p>
1510
1510
As with the other stroke parameters, the current line miter limit is
1511
 
examined by <a href="cairo-cairo-t.html#cairo-stroke"><code class="function">cairo_stroke()</code></a>, <a href="cairo-cairo-t.html#cairo-stroke-extents"><code class="function">cairo_stroke_extents()</code></a>, and
 
1511
examined by <a class="link" href="cairo-cairo-t.html#cairo-stroke"><code class="function">cairo_stroke()</code></a>, <a class="link" href="cairo-cairo-t.html#cairo-stroke-extents"><code class="function">cairo_stroke_extents()</code></a>, and
1512
1512
<code class="function">cairo_stroke_to_path()</code>, but does not have any effect during path
1513
1513
construction.</p>
1514
1514
<p>
1518
1518
<col align="left" valign="top">
1519
1519
<tbody>
1520
1520
<tr>
1521
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
1521
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
1522
1522
<td> a cairo context
1523
1523
</td>
1524
1524
</tr>
1525
1525
<tr>
1526
 
<td><span class="term"><em class="parameter"><code>limit</code></em>&#160;:</span></td>
 
1526
<td><p><span class="term"><em class="parameter"><code>limit</code></em>&#160;:</span></p></td>
1527
1527
<td> miter limit to set
1528
1528
</td>
1529
1529
</tr>
1532
1532
</div>
1533
1533
<hr>
1534
1534
<div class="refsect2" lang="en">
1535
 
<a name="id2617624"></a><h3>
 
1535
<a name="id2635096"></a><h3>
1536
1536
<a name="cairo-get-miter-limit"></a>cairo_get_miter_limit ()</h3>
1537
 
<a class="indexterm" name="id2617637"></a><pre class="programlisting">double              cairo_get_miter_limit               (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
 
1537
<a class="indexterm" name="id2635110"></a><pre class="programlisting">double              cairo_get_miter_limit               (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
1538
1538
<p>
1539
 
Gets the current miter limit, as set by <a href="cairo-cairo-t.html#cairo-set-miter-limit"><code class="function">cairo_set_miter_limit()</code></a>.</p>
 
1539
Gets the current miter limit, as set by <a class="link" href="cairo-cairo-t.html#cairo-set-miter-limit"><code class="function">cairo_set_miter_limit()</code></a>.</p>
1540
1540
<p>
1541
1541
 
1542
1542
</p>
1544
1544
<col align="left" valign="top">
1545
1545
<tbody>
1546
1546
<tr>
1547
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
1547
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
1548
1548
<td> a cairo context
1549
1549
</td>
1550
1550
</tr>
1551
1551
<tr>
1552
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 
1552
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
1553
1553
<td> the current miter limit.
1554
1554
</td>
1555
1555
</tr>
1558
1558
</div>
1559
1559
<hr>
1560
1560
<div class="refsect2" lang="en">
1561
 
<a name="id2617708"></a><h3>
 
1561
<a name="id2635181"></a><h3>
1562
1562
<a name="cairo-operator-t"></a>enum cairo_operator_t</h3>
1563
 
<a class="indexterm" name="id2617722"></a><pre class="programlisting">typedef enum _cairo_operator {
 
1563
<a class="indexterm" name="id2635195"></a><pre class="programlisting">typedef enum _cairo_operator {
1564
1564
    CAIRO_OPERATOR_CLEAR,
1565
1565
 
1566
1566
    CAIRO_OPERATOR_SOURCE,
1586
1586
</div>
1587
1587
<hr>
1588
1588
<div class="refsect2" lang="en">
1589
 
<a name="id2617744"></a><h3>
 
1589
<a name="id2635217"></a><h3>
1590
1590
<a name="cairo-set-operator"></a>cairo_set_operator ()</h3>
1591
 
<a class="indexterm" name="id2617758"></a><pre class="programlisting">void                cairo_set_operator                  (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
1592
 
                                                         <a href="cairo-cairo-t.html#cairo-operator-t">cairo_operator_t</a> op);</pre>
 
1591
<a class="indexterm" name="id2635231"></a><pre class="programlisting">void                cairo_set_operator                  (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
1592
                                                         <a class="link" href="cairo-cairo-t.html#cairo-operator-t">cairo_operator_t</a> op);</pre>
1593
1593
<p>
1594
1594
Sets the compositing operator to be used for all drawing
1595
 
operations. See <a href="cairo-cairo-t.html#cairo-operator-t"><span class="type">cairo_operator_t</span></a> for details on the semantics of
 
1595
operations. See <a class="link" href="cairo-cairo-t.html#cairo-operator-t"><span class="type">cairo_operator_t</span></a> for details on the semantics of
1596
1596
each available compositing operator.
1597
1597
</p>
1598
1598
<p>
1606
1606
<col align="left" valign="top">
1607
1607
<tbody>
1608
1608
<tr>
1609
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
1610
 
<td> a <a href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>
 
1609
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
 
1610
<td> a <a class="link" href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>
1611
1611
</td>
1612
1612
</tr>
1613
1613
<tr>
1614
 
<td><span class="term"><em class="parameter"><code>op</code></em>&#160;:</span></td>
1615
 
<td> a compositing operator, specified as a <a href="cairo-cairo-t.html#cairo-operator-t"><span class="type">cairo_operator_t</span></a>
 
1614
<td><p><span class="term"><em class="parameter"><code>op</code></em>&#160;:</span></p></td>
 
1615
<td> a compositing operator, specified as a <a class="link" href="cairo-cairo-t.html#cairo-operator-t"><span class="type">cairo_operator_t</span></a>
1616
1616
</td>
1617
1617
</tr>
1618
1618
</tbody>
1620
1620
</div>
1621
1621
<hr>
1622
1622
<div class="refsect2" lang="en">
1623
 
<a name="id2617860"></a><h3>
 
1623
<a name="id2635333"></a><h3>
1624
1624
<a name="cairo-get-operator"></a>cairo_get_operator ()</h3>
1625
 
<a class="indexterm" name="id2617873"></a><pre class="programlisting"><a href="cairo-cairo-t.html#cairo-operator-t">cairo_operator_t</a>    cairo_get_operator                  (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
 
1625
<a class="indexterm" name="id2635346"></a><pre class="programlisting"><a class="link" href="cairo-cairo-t.html#cairo-operator-t">cairo_operator_t</a>    cairo_get_operator                  (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
1626
1626
<p>
1627
1627
Gets the current compositing operator for a cairo context.</p>
1628
1628
<p>
1632
1632
<col align="left" valign="top">
1633
1633
<tbody>
1634
1634
<tr>
1635
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
1635
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
1636
1636
<td> a cairo context
1637
1637
</td>
1638
1638
</tr>
1639
1639
<tr>
1640
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 
1640
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
1641
1641
<td> the current compositing operator.
1642
1642
</td>
1643
1643
</tr>
1646
1646
</div>
1647
1647
<hr>
1648
1648
<div class="refsect2" lang="en">
1649
 
<a name="id2617935"></a><h3>
 
1649
<a name="id2635408"></a><h3>
1650
1650
<a name="cairo-set-tolerance"></a>cairo_set_tolerance ()</h3>
1651
 
<a class="indexterm" name="id2617948"></a><pre class="programlisting">void                cairo_set_tolerance                 (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
1651
<a class="indexterm" name="id2635421"></a><pre class="programlisting">void                cairo_set_tolerance                 (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
1652
1652
                                                         double tolerance);</pre>
1653
1653
<p>
1654
1654
Sets the tolerance used when converting paths into trapezoids.
1665
1665
<col align="left" valign="top">
1666
1666
<tbody>
1667
1667
<tr>
1668
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
1669
 
<td> a <a href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>
 
1668
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
 
1669
<td> a <a class="link" href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>
1670
1670
</td>
1671
1671
</tr>
1672
1672
<tr>
1673
 
<td><span class="term"><em class="parameter"><code>tolerance</code></em>&#160;:</span></td>
 
1673
<td><p><span class="term"><em class="parameter"><code>tolerance</code></em>&#160;:</span></p></td>
1674
1674
<td> the tolerance, in device units (typically pixels)
1675
1675
</td>
1676
1676
</tr>
1679
1679
</div>
1680
1680
<hr>
1681
1681
<div class="refsect2" lang="en">
1682
 
<a name="id2618039"></a><h3>
 
1682
<a name="id2635512"></a><h3>
1683
1683
<a name="cairo-get-tolerance"></a>cairo_get_tolerance ()</h3>
1684
 
<a class="indexterm" name="id2618053"></a><pre class="programlisting">double              cairo_get_tolerance                 (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
 
1684
<a class="indexterm" name="id2635526"></a><pre class="programlisting">double              cairo_get_tolerance                 (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
1685
1685
<p>
1686
 
Gets the current tolerance value, as set by <a href="cairo-cairo-t.html#cairo-set-tolerance"><code class="function">cairo_set_tolerance()</code></a>.</p>
 
1686
Gets the current tolerance value, as set by <a class="link" href="cairo-cairo-t.html#cairo-set-tolerance"><code class="function">cairo_set_tolerance()</code></a>.</p>
1687
1687
<p>
1688
1688
 
1689
1689
</p>
1691
1691
<col align="left" valign="top">
1692
1692
<tbody>
1693
1693
<tr>
1694
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
1694
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
1695
1695
<td> a cairo context
1696
1696
</td>
1697
1697
</tr>
1698
1698
<tr>
1699
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 
1699
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
1700
1700
<td> the current tolerance value.
1701
1701
</td>
1702
1702
</tr>
1705
1705
</div>
1706
1706
<hr>
1707
1707
<div class="refsect2" lang="en">
1708
 
<a name="id2618124"></a><h3>
 
1708
<a name="id2635597"></a><h3>
1709
1709
<a name="cairo-clip"></a>cairo_clip ()</h3>
1710
 
<a class="indexterm" name="id2618136"></a><pre class="programlisting">void                cairo_clip                          (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
 
1710
<a class="indexterm" name="id2635609"></a><pre class="programlisting">void                cairo_clip                          (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
1711
1711
<p>
1712
1712
Establishes a new clip region by intersecting the current clip
1713
 
region with the current path as it would be filled by <a href="cairo-cairo-t.html#cairo-fill"><code class="function">cairo_fill()</code></a>
1714
 
and according to the current fill rule (see <a href="cairo-cairo-t.html#cairo-set-fill-rule"><code class="function">cairo_set_fill_rule()</code></a>).
 
1713
region with the current path as it would be filled by <a class="link" href="cairo-cairo-t.html#cairo-fill"><code class="function">cairo_fill()</code></a>
 
1714
and according to the current fill rule (see <a class="link" href="cairo-cairo-t.html#cairo-set-fill-rule"><code class="function">cairo_set_fill_rule()</code></a>).
1715
1715
</p>
1716
1716
<p>
1717
1717
After cairo_clip, the current path will be cleared from the cairo
1723
1723
the current clip region.
1724
1724
</p>
1725
1725
<p>
1726
 
Calling <a href="cairo-cairo-t.html#cairo-clip"><code class="function">cairo_clip()</code></a> can only make the clip region smaller, never
 
1726
Calling <a class="link" href="cairo-cairo-t.html#cairo-clip"><code class="function">cairo_clip()</code></a> can only make the clip region smaller, never
1727
1727
larger. But the current clip is part of the graphics state, so a
1728
1728
temporary restriction of the clip region can be achieved by
1729
 
calling <a href="cairo-cairo-t.html#cairo-clip"><code class="function">cairo_clip()</code></a> within a <a href="cairo-cairo-t.html#cairo-save"><code class="function">cairo_save()</code></a>/<a href="cairo-cairo-t.html#cairo-restore"><code class="function">cairo_restore()</code></a>
 
1729
calling <a class="link" href="cairo-cairo-t.html#cairo-clip"><code class="function">cairo_clip()</code></a> within a <a class="link" href="cairo-cairo-t.html#cairo-save"><code class="function">cairo_save()</code></a>/<a class="link" href="cairo-cairo-t.html#cairo-restore"><code class="function">cairo_restore()</code></a>
1730
1730
pair. The only other means of increasing the size of the clip
1731
 
region is <a href="cairo-cairo-t.html#cairo-reset-clip"><code class="function">cairo_reset_clip()</code></a>.</p>
 
1731
region is <a class="link" href="cairo-cairo-t.html#cairo-reset-clip"><code class="function">cairo_reset_clip()</code></a>.</p>
1732
1732
<p>
1733
1733
 
1734
1734
</p>
1735
1735
<div class="variablelist"><table border="0">
1736
1736
<col align="left" valign="top">
1737
1737
<tbody><tr>
1738
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
1738
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
1739
1739
<td> a cairo context
1740
1740
</td>
1741
1741
</tr></tbody>
1743
1743
</div>
1744
1744
<hr>
1745
1745
<div class="refsect2" lang="en">
1746
 
<a name="id2618274"></a><h3>
 
1746
<a name="id2635747"></a><h3>
1747
1747
<a name="cairo-clip-preserve"></a>cairo_clip_preserve ()</h3>
1748
 
<a class="indexterm" name="id2618288"></a><pre class="programlisting">void                cairo_clip_preserve                 (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
 
1748
<a class="indexterm" name="id2635761"></a><pre class="programlisting">void                cairo_clip_preserve                 (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
1749
1749
<p>
1750
1750
Establishes a new clip region by intersecting the current clip
1751
 
region with the current path as it would be filled by <a href="cairo-cairo-t.html#cairo-fill"><code class="function">cairo_fill()</code></a>
1752
 
and according to the current fill rule (see <a href="cairo-cairo-t.html#cairo-set-fill-rule"><code class="function">cairo_set_fill_rule()</code></a>).
 
1751
region with the current path as it would be filled by <a class="link" href="cairo-cairo-t.html#cairo-fill"><code class="function">cairo_fill()</code></a>
 
1752
and according to the current fill rule (see <a class="link" href="cairo-cairo-t.html#cairo-set-fill-rule"><code class="function">cairo_set_fill_rule()</code></a>).
1753
1753
</p>
1754
1754
<p>
1755
 
Unlike <a href="cairo-cairo-t.html#cairo-clip"><code class="function">cairo_clip()</code></a>, cairo_clip_preserve preserves the path within
 
1755
Unlike <a class="link" href="cairo-cairo-t.html#cairo-clip"><code class="function">cairo_clip()</code></a>, cairo_clip_preserve preserves the path within
1756
1756
the cairo context.
1757
1757
</p>
1758
1758
<p>
1761
1761
the current clip region.
1762
1762
</p>
1763
1763
<p>
1764
 
Calling <a href="cairo-cairo-t.html#cairo-clip"><code class="function">cairo_clip()</code></a> can only make the clip region smaller, never
 
1764
Calling <a class="link" href="cairo-cairo-t.html#cairo-clip"><code class="function">cairo_clip()</code></a> can only make the clip region smaller, never
1765
1765
larger. But the current clip is part of the graphics state, so a
1766
1766
temporary restriction of the clip region can be achieved by
1767
 
calling <a href="cairo-cairo-t.html#cairo-clip"><code class="function">cairo_clip()</code></a> within a <a href="cairo-cairo-t.html#cairo-save"><code class="function">cairo_save()</code></a>/<a href="cairo-cairo-t.html#cairo-restore"><code class="function">cairo_restore()</code></a>
 
1767
calling <a class="link" href="cairo-cairo-t.html#cairo-clip"><code class="function">cairo_clip()</code></a> within a <a class="link" href="cairo-cairo-t.html#cairo-save"><code class="function">cairo_save()</code></a>/<a class="link" href="cairo-cairo-t.html#cairo-restore"><code class="function">cairo_restore()</code></a>
1768
1768
pair. The only other means of increasing the size of the clip
1769
 
region is <a href="cairo-cairo-t.html#cairo-reset-clip"><code class="function">cairo_reset_clip()</code></a>.</p>
 
1769
region is <a class="link" href="cairo-cairo-t.html#cairo-reset-clip"><code class="function">cairo_reset_clip()</code></a>.</p>
1770
1770
<p>
1771
1771
 
1772
1772
</p>
1773
1773
<div class="variablelist"><table border="0">
1774
1774
<col align="left" valign="top">
1775
1775
<tbody><tr>
1776
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
1776
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
1777
1777
<td> a cairo context
1778
1778
</td>
1779
1779
</tr></tbody>
1781
1781
</div>
1782
1782
<hr>
1783
1783
<div class="refsect2" lang="en">
1784
 
<a name="id2618435"></a><h3>
 
1784
<a name="id2635908"></a><h3>
1785
1785
<a name="cairo-clip-extents"></a>cairo_clip_extents ()</h3>
1786
 
<a class="indexterm" name="id2618451"></a><pre class="programlisting">void                cairo_clip_extents                  (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
1786
<a class="indexterm" name="id2635924"></a><pre class="programlisting">void                cairo_clip_extents                  (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
1787
1787
                                                         double *x1,
1788
1788
                                                         double *y1,
1789
1789
                                                         double *x2,
1798
1798
<col align="left" valign="top">
1799
1799
<tbody>
1800
1800
<tr>
1801
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
1801
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
1802
1802
<td> a cairo context
1803
1803
</td>
1804
1804
</tr>
1805
1805
<tr>
1806
 
<td><span class="term"><em class="parameter"><code>x1</code></em>&#160;:</span></td>
 
1806
<td><p><span class="term"><em class="parameter"><code>x1</code></em>&#160;:</span></p></td>
1807
1807
<td> left of the resulting extents
1808
1808
</td>
1809
1809
</tr>
1810
1810
<tr>
1811
 
<td><span class="term"><em class="parameter"><code>y1</code></em>&#160;:</span></td>
 
1811
<td><p><span class="term"><em class="parameter"><code>y1</code></em>&#160;:</span></p></td>
1812
1812
<td> top of the resulting extents
1813
1813
</td>
1814
1814
</tr>
1815
1815
<tr>
1816
 
<td><span class="term"><em class="parameter"><code>x2</code></em>&#160;:</span></td>
 
1816
<td><p><span class="term"><em class="parameter"><code>x2</code></em>&#160;:</span></p></td>
1817
1817
<td> right of the resulting extents
1818
1818
</td>
1819
1819
</tr>
1820
1820
<tr>
1821
 
<td><span class="term"><em class="parameter"><code>y2</code></em>&#160;:</span></td>
 
1821
<td><p><span class="term"><em class="parameter"><code>y2</code></em>&#160;:</span></p></td>
1822
1822
<td> bottom of the resulting extents
1823
1823
</td>
1824
1824
</tr>
1829
1829
</div>
1830
1830
<hr>
1831
1831
<div class="refsect2" lang="en">
1832
 
<a name="id2618596"></a><h3>
 
1832
<a name="id2636068"></a><h3>
1833
1833
<a name="cairo-reset-clip"></a>cairo_reset_clip ()</h3>
1834
 
<a class="indexterm" name="id2618608"></a><pre class="programlisting">void                cairo_reset_clip                    (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
 
1834
<a class="indexterm" name="id2636081"></a><pre class="programlisting">void                cairo_reset_clip                    (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
1835
1835
<p>
1836
1836
Reset the current clip region to its original, unrestricted
1837
1837
state. That is, set the clip region to an infinitely large shape
1841
1841
</p>
1842
1842
<p>
1843
1843
Note that code meant to be reusable should not call
1844
 
<a href="cairo-cairo-t.html#cairo-reset-clip"><code class="function">cairo_reset_clip()</code></a> as it will cause results unexpected by
1845
 
higher-level code which calls <a href="cairo-cairo-t.html#cairo-clip"><code class="function">cairo_clip()</code></a>. Consider using
1846
 
<a href="cairo-cairo-t.html#cairo-save"><code class="function">cairo_save()</code></a> and <a href="cairo-cairo-t.html#cairo-restore"><code class="function">cairo_restore()</code></a> around <a href="cairo-cairo-t.html#cairo-clip"><code class="function">cairo_clip()</code></a> as a more
 
1844
<a class="link" href="cairo-cairo-t.html#cairo-reset-clip"><code class="function">cairo_reset_clip()</code></a> as it will cause results unexpected by
 
1845
higher-level code which calls <a class="link" href="cairo-cairo-t.html#cairo-clip"><code class="function">cairo_clip()</code></a>. Consider using
 
1846
<a class="link" href="cairo-cairo-t.html#cairo-save"><code class="function">cairo_save()</code></a> and <a class="link" href="cairo-cairo-t.html#cairo-restore"><code class="function">cairo_restore()</code></a> around <a class="link" href="cairo-cairo-t.html#cairo-clip"><code class="function">cairo_clip()</code></a> as a more
1847
1847
robust means of temporarily restricting the clip region.</p>
1848
1848
<p>
1849
1849
 
1851
1851
<div class="variablelist"><table border="0">
1852
1852
<col align="left" valign="top">
1853
1853
<tbody><tr>
1854
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
1854
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
1855
1855
<td> a cairo context
1856
1856
</td>
1857
1857
</tr></tbody>
1859
1859
</div>
1860
1860
<hr>
1861
1861
<div class="refsect2" lang="en">
1862
 
<a name="id2618718"></a><h3>
 
1862
<a name="id2636190"></a><h3>
1863
1863
<a name="cairo-rectangle-t"></a>cairo_rectangle_t</h3>
1864
 
<a class="indexterm" name="id2618733"></a><pre class="programlisting">typedef struct {
 
1864
<a class="indexterm" name="id2636206"></a><pre class="programlisting">typedef struct {
1865
1865
    double x, y, width, height;
1866
1866
} cairo_rectangle_t;
1867
1867
</pre>
1874
1874
<col align="left" valign="top">
1875
1875
<tbody>
1876
1876
<tr>
1877
 
<td><span class="term">double&#160;<em class="structfield"><code>x</code></em>;</span></td>
 
1877
<td><p><span class="term">double&#160;<em class="structfield"><code>x</code></em>;</span></p></td>
1878
1878
<td> X coordinate of the left side of the rectangle
1879
1879
</td>
1880
1880
</tr>
1881
1881
<tr>
1882
 
<td><span class="term">double&#160;<em class="structfield"><code>y</code></em>;</span></td>
 
1882
<td><p><span class="term">double&#160;<em class="structfield"><code>y</code></em>;</span></p></td>
1883
1883
<td> Y coordinate of the the top side of the rectangle
1884
1884
</td>
1885
1885
</tr>
1886
1886
<tr>
1887
 
<td><span class="term">double&#160;<em class="structfield"><code>width</code></em>;</span></td>
 
1887
<td><p><span class="term">double&#160;<em class="structfield"><code>width</code></em>;</span></p></td>
1888
1888
<td> width of the rectangle
1889
1889
</td>
1890
1890
</tr>
1891
1891
<tr>
1892
 
<td><span class="term">double&#160;<em class="structfield"><code>height</code></em>;</span></td>
 
1892
<td><p><span class="term">double&#160;<em class="structfield"><code>height</code></em>;</span></p></td>
1893
1893
<td> height of the rectangle
1894
1894
</td>
1895
1895
</tr>
1900
1900
</div>
1901
1901
<hr>
1902
1902
<div class="refsect2" lang="en">
1903
 
<a name="id2618850"></a><h3>
 
1903
<a name="id2636323"></a><h3>
1904
1904
<a name="cairo-rectangle-list-t"></a>cairo_rectangle_list_t</h3>
1905
 
<a class="indexterm" name="id2618866"></a><pre class="programlisting">typedef struct {
 
1905
<a class="indexterm" name="id2636339"></a><pre class="programlisting">typedef struct {
1906
1906
    cairo_status_t     status;
1907
1907
    cairo_rectangle_t *rectangles;
1908
1908
    int                num_rectangles;
1918
1918
<col align="left" valign="top">
1919
1919
<tbody>
1920
1920
<tr>
1921
 
<td><span class="term"><a href="cairo-Error-Handling.html#cairo-status-t">cairo_status_t</a>&#160;<em class="structfield"><code>status</code></em>;</span></td>
 
1921
<td><p><span class="term"><a class="link" href="cairo-Error-Handling.html#cairo-status-t">cairo_status_t</a>&#160;<em class="structfield"><code>status</code></em>;</span></p></td>
1922
1922
<td> Error status of the rectangle list
1923
1923
</td>
1924
1924
</tr>
1925
1925
<tr>
1926
 
<td><span class="term"><a href="cairo-cairo-t.html#cairo-rectangle-t">cairo_rectangle_t</a>&#160;*<em class="structfield"><code>rectangles</code></em>;</span></td>
 
1926
<td><p><span class="term"><a class="link" href="cairo-cairo-t.html#cairo-rectangle-t">cairo_rectangle_t</a>&#160;*<em class="structfield"><code>rectangles</code></em>;</span></p></td>
1927
1927
<td> Array containing the rectangles
1928
1928
</td>
1929
1929
</tr>
1930
1930
<tr>
1931
 
<td><span class="term">int&#160;<em class="structfield"><code>num_rectangles</code></em>;</span></td>
 
1931
<td><p><span class="term">int&#160;<em class="structfield"><code>num_rectangles</code></em>;</span></p></td>
1932
1932
<td> Number of rectangles in this list
1933
1933
</td>
1934
1934
</tr>
1939
1939
</div>
1940
1940
<hr>
1941
1941
<div class="refsect2" lang="en">
1942
 
<a name="id2618965"></a><h3>
 
1942
<a name="id2636438"></a><h3>
1943
1943
<a name="cairo-rectangle-list-destroy"></a>cairo_rectangle_list_destroy ()</h3>
1944
 
<a class="indexterm" name="id2618981"></a><pre class="programlisting">void                cairo_rectangle_list_destroy        (<a href="cairo-cairo-t.html#cairo-rectangle-list-t">cairo_rectangle_list_t</a> *rectangle_list);</pre>
 
1944
<a class="indexterm" name="id2636454"></a><pre class="programlisting">void                cairo_rectangle_list_destroy        (<a class="link" href="cairo-cairo-t.html#cairo-rectangle-list-t">cairo_rectangle_list_t</a> *rectangle_list);</pre>
1945
1945
<p>
1946
1946
Unconditionally frees <em class="parameter"><code>rectangle_list</code></em> and all associated
1947
1947
references. After this call, the <em class="parameter"><code>rectangle_list</code></em> pointer must not
1952
1952
<div class="variablelist"><table border="0">
1953
1953
<col align="left" valign="top">
1954
1954
<tbody><tr>
1955
 
<td><span class="term"><em class="parameter"><code>rectangle_list</code></em>&#160;:</span></td>
 
1955
<td><p><span class="term"><em class="parameter"><code>rectangle_list</code></em>&#160;:</span></p></td>
1956
1956
<td> a rectangle list, as obtained from <code class="function">cairo_copy_clip_rectangles()</code>
1957
1957
</td>
1958
1958
</tr></tbody>
1962
1962
</div>
1963
1963
<hr>
1964
1964
<div class="refsect2" lang="en">
1965
 
<a name="id2619063"></a><h3>
 
1965
<a name="id2636536"></a><h3>
1966
1966
<a name="cairo-copy-clip-rectangle-list"></a>cairo_copy_clip_rectangle_list ()</h3>
1967
 
<a class="indexterm" name="id2619079"></a><pre class="programlisting"><a href="cairo-cairo-t.html#cairo-rectangle-list-t">cairo_rectangle_list_t</a>* cairo_copy_clip_rectangle_list  (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
 
1967
<a class="indexterm" name="id2636552"></a><pre class="programlisting"><a class="link" href="cairo-cairo-t.html#cairo-rectangle-list-t">cairo_rectangle_list_t</a>* cairo_copy_clip_rectangle_list  (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
1968
1968
<p>
1969
1969
Gets the current clip region as a list of rectangles in user coordinates.
1970
1970
Never returns <code class="literal">NULL</code>.
1985
1985
<col align="left" valign="top">
1986
1986
<tbody>
1987
1987
<tr>
1988
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
1988
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
1989
1989
<td> a cairo context
1990
1990
</td>
1991
1991
</tr>
1992
1992
<tr>
1993
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 
1993
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
1994
1994
<td> the current clip region as a list of rectangles in user coordinates.
1995
1995
 
1996
1996
</td>
2002
2002
</div>
2003
2003
<hr>
2004
2004
<div class="refsect2" lang="en">
2005
 
<a name="id2619171"></a><h3>
 
2005
<a name="id2636644"></a><h3>
2006
2006
<a name="cairo-fill"></a>cairo_fill ()</h3>
2007
 
<a class="indexterm" name="id2619184"></a><pre class="programlisting">void                cairo_fill                          (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
 
2007
<a class="indexterm" name="id2636657"></a><pre class="programlisting">void                cairo_fill                          (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
2008
2008
<p>
2009
2009
A drawing operator that fills the current path according to the
2010
2010
current fill rule, (each sub-path is implicitly closed before being
2011
2011
filled). After cairo_fill, the current path will be cleared from
2012
 
the cairo context. See <a href="cairo-cairo-t.html#cairo-set-fill-rule"><code class="function">cairo_set_fill_rule()</code></a> and
2013
 
<a href="cairo-cairo-t.html#cairo-fill-preserve"><code class="function">cairo_fill_preserve()</code></a>.</p>
 
2012
the cairo context. See <a class="link" href="cairo-cairo-t.html#cairo-set-fill-rule"><code class="function">cairo_set_fill_rule()</code></a> and
 
2013
<a class="link" href="cairo-cairo-t.html#cairo-fill-preserve"><code class="function">cairo_fill_preserve()</code></a>.</p>
2014
2014
<p>
2015
2015
 
2016
2016
</p>
2017
2017
<div class="variablelist"><table border="0">
2018
2018
<col align="left" valign="top">
2019
2019
<tbody><tr>
2020
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
2020
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
2021
2021
<td> a cairo context
2022
2022
</td>
2023
2023
</tr></tbody>
2025
2025
</div>
2026
2026
<hr>
2027
2027
<div class="refsect2" lang="en">
2028
 
<a name="id2619257"></a><h3>
 
2028
<a name="id2636730"></a><h3>
2029
2029
<a name="cairo-fill-preserve"></a>cairo_fill_preserve ()</h3>
2030
 
<a class="indexterm" name="id2619270"></a><pre class="programlisting">void                cairo_fill_preserve                 (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
 
2030
<a class="indexterm" name="id2636743"></a><pre class="programlisting">void                cairo_fill_preserve                 (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
2031
2031
<p>
2032
2032
A drawing operator that fills the current path according to the
2033
2033
current fill rule, (each sub-path is implicitly closed before being
2034
 
filled). Unlike <a href="cairo-cairo-t.html#cairo-fill"><code class="function">cairo_fill()</code></a>, cairo_fill_preserve preserves the
 
2034
filled). Unlike <a class="link" href="cairo-cairo-t.html#cairo-fill"><code class="function">cairo_fill()</code></a>, cairo_fill_preserve preserves the
2035
2035
path within the cairo context.
2036
2036
</p>
2037
2037
<p>
2038
 
See <a href="cairo-cairo-t.html#cairo-set-fill-rule"><code class="function">cairo_set_fill_rule()</code></a> and <a href="cairo-cairo-t.html#cairo-fill"><code class="function">cairo_fill()</code></a>.</p>
 
2038
See <a class="link" href="cairo-cairo-t.html#cairo-set-fill-rule"><code class="function">cairo_set_fill_rule()</code></a> and <a class="link" href="cairo-cairo-t.html#cairo-fill"><code class="function">cairo_fill()</code></a>.</p>
2039
2039
<p>
2040
2040
 
2041
2041
</p>
2042
2042
<div class="variablelist"><table border="0">
2043
2043
<col align="left" valign="top">
2044
2044
<tbody><tr>
2045
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
2045
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
2046
2046
<td> a cairo context
2047
2047
</td>
2048
2048
</tr></tbody>
2050
2050
</div>
2051
2051
<hr>
2052
2052
<div class="refsect2" lang="en">
2053
 
<a name="id2619356"></a><h3>
 
2053
<a name="id2636829"></a><h3>
2054
2054
<a name="cairo-fill-extents"></a>cairo_fill_extents ()</h3>
2055
 
<a class="indexterm" name="id2619369"></a><pre class="programlisting">void                cairo_fill_extents                  (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
2055
<a class="indexterm" name="id2636842"></a><pre class="programlisting">void                cairo_fill_extents                  (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
2056
2056
                                                         double *x1,
2057
2057
                                                         double *y1,
2058
2058
                                                         double *x2,
2059
2059
                                                         double *y2);</pre>
2060
2060
<p>
2061
2061
Computes a bounding box in user coordinates covering the area that
2062
 
would be affected by a <a href="cairo-cairo-t.html#cairo-fill"><code class="function">cairo_fill()</code></a> operation given the current path
 
2062
would be affected by a <a class="link" href="cairo-cairo-t.html#cairo-fill"><code class="function">cairo_fill()</code></a> operation given the current path
2063
2063
and fill parameters. If the current path is empty, returns an empty
2064
2064
rectangle (0,0, 0,0). Surface dimensions and clipping are not taken
2065
2065
into account.
2066
2066
</p>
2067
2067
<p>
2068
 
See <a href="cairo-cairo-t.html#cairo-fill"><code class="function">cairo_fill()</code></a>, <a href="cairo-cairo-t.html#cairo-set-fill-rule"><code class="function">cairo_set_fill_rule()</code></a> and <a href="cairo-cairo-t.html#cairo-fill-preserve"><code class="function">cairo_fill_preserve()</code></a>.</p>
 
2068
See <a class="link" href="cairo-cairo-t.html#cairo-fill"><code class="function">cairo_fill()</code></a>, <a class="link" href="cairo-cairo-t.html#cairo-set-fill-rule"><code class="function">cairo_set_fill_rule()</code></a> and <a class="link" href="cairo-cairo-t.html#cairo-fill-preserve"><code class="function">cairo_fill_preserve()</code></a>.</p>
2069
2069
<p>
2070
2070
 
2071
2071
</p>
2073
2073
<col align="left" valign="top">
2074
2074
<tbody>
2075
2075
<tr>
2076
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
2076
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
2077
2077
<td> a cairo context
2078
2078
</td>
2079
2079
</tr>
2080
2080
<tr>
2081
 
<td><span class="term"><em class="parameter"><code>x1</code></em>&#160;:</span></td>
 
2081
<td><p><span class="term"><em class="parameter"><code>x1</code></em>&#160;:</span></p></td>
2082
2082
<td> left of the resulting extents
2083
2083
</td>
2084
2084
</tr>
2085
2085
<tr>
2086
 
<td><span class="term"><em class="parameter"><code>y1</code></em>&#160;:</span></td>
 
2086
<td><p><span class="term"><em class="parameter"><code>y1</code></em>&#160;:</span></p></td>
2087
2087
<td> top of the resulting extents
2088
2088
</td>
2089
2089
</tr>
2090
2090
<tr>
2091
 
<td><span class="term"><em class="parameter"><code>x2</code></em>&#160;:</span></td>
 
2091
<td><p><span class="term"><em class="parameter"><code>x2</code></em>&#160;:</span></p></td>
2092
2092
<td> right of the resulting extents
2093
2093
</td>
2094
2094
</tr>
2095
2095
<tr>
2096
 
<td><span class="term"><em class="parameter"><code>y2</code></em>&#160;:</span></td>
 
2096
<td><p><span class="term"><em class="parameter"><code>y2</code></em>&#160;:</span></p></td>
2097
2097
<td> bottom of the resulting extents
2098
2098
</td>
2099
2099
</tr>
2102
2102
</div>
2103
2103
<hr>
2104
2104
<div class="refsect2" lang="en">
2105
 
<a name="id2619552"></a><h3>
 
2105
<a name="id2637025"></a><h3>
2106
2106
<a name="cairo-in-fill"></a>cairo_in_fill ()</h3>
2107
 
<a class="indexterm" name="id2619565"></a><pre class="programlisting"><a href="cairo-Types.html#cairo-bool-t">cairo_bool_t</a>        cairo_in_fill                       (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
2107
<a class="indexterm" name="id2637038"></a><pre class="programlisting"><a class="link" href="cairo-Types.html#cairo-bool-t">cairo_bool_t</a>        cairo_in_fill                       (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
2108
2108
                                                         double x,
2109
2109
                                                         double y);</pre>
2110
2110
<p>
2111
2111
Tests whether the given point is inside the area that would be
2112
 
affected by a <a href="cairo-cairo-t.html#cairo-fill"><code class="function">cairo_fill()</code></a> operation given the current path and
 
2112
affected by a <a class="link" href="cairo-cairo-t.html#cairo-fill"><code class="function">cairo_fill()</code></a> operation given the current path and
2113
2113
filling parameters. Surface dimensions and clipping are not taken
2114
2114
into account.
2115
2115
</p>
2116
2116
<p>
2117
 
See <a href="cairo-cairo-t.html#cairo-fill"><code class="function">cairo_fill()</code></a>, <a href="cairo-cairo-t.html#cairo-set-fill-rule"><code class="function">cairo_set_fill_rule()</code></a> and <a href="cairo-cairo-t.html#cairo-fill-preserve"><code class="function">cairo_fill_preserve()</code></a>.</p>
 
2117
See <a class="link" href="cairo-cairo-t.html#cairo-fill"><code class="function">cairo_fill()</code></a>, <a class="link" href="cairo-cairo-t.html#cairo-set-fill-rule"><code class="function">cairo_set_fill_rule()</code></a> and <a class="link" href="cairo-cairo-t.html#cairo-fill-preserve"><code class="function">cairo_fill_preserve()</code></a>.</p>
2118
2118
<p>
2119
2119
 
2120
2120
</p>
2122
2122
<col align="left" valign="top">
2123
2123
<tbody>
2124
2124
<tr>
2125
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
2125
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
2126
2126
<td> a cairo context
2127
2127
</td>
2128
2128
</tr>
2129
2129
<tr>
2130
 
<td><span class="term"><em class="parameter"><code>x</code></em>&#160;:</span></td>
 
2130
<td><p><span class="term"><em class="parameter"><code>x</code></em>&#160;:</span></p></td>
2131
2131
<td> X coordinate of the point to test
2132
2132
</td>
2133
2133
</tr>
2134
2134
<tr>
2135
 
<td><span class="term"><em class="parameter"><code>y</code></em>&#160;:</span></td>
 
2135
<td><p><span class="term"><em class="parameter"><code>y</code></em>&#160;:</span></p></td>
2136
2136
<td> Y coordinate of the point to test
2137
2137
</td>
2138
2138
</tr>
2139
2139
<tr>
2140
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 
2140
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
2141
2141
<td> A non-zero value if the point is inside, or zero if
2142
2142
outside.
2143
2143
</td>
2147
2147
</div>
2148
2148
<hr>
2149
2149
<div class="refsect2" lang="en">
2150
 
<a name="id2619715"></a><h3>
 
2150
<a name="id2637188"></a><h3>
2151
2151
<a name="cairo-mask"></a>cairo_mask ()</h3>
2152
 
<a class="indexterm" name="id2619728"></a><pre class="programlisting">void                cairo_mask                          (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
2153
 
                                                         <a href="cairo-Patterns.html#cairo-pattern-t">cairo_pattern_t</a> *pattern);</pre>
 
2152
<a class="indexterm" name="id2637201"></a><pre class="programlisting">void                cairo_mask                          (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
2153
                                                         <a class="link" href="cairo-Patterns.html#cairo-pattern-t">cairo_pattern_t</a> *pattern);</pre>
2154
2154
<p>
2155
2155
A drawing operator that paints the current source
2156
2156
using the alpha channel of <em class="parameter"><code>pattern</code></em> as a mask. (Opaque
2163
2163
<col align="left" valign="top">
2164
2164
<tbody>
2165
2165
<tr>
2166
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
2166
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
2167
2167
<td> a cairo context
2168
2168
</td>
2169
2169
</tr>
2170
2170
<tr>
2171
 
<td><span class="term"><em class="parameter"><code>pattern</code></em>&#160;:</span></td>
2172
 
<td> a <a href="cairo-Patterns.html#cairo-pattern-t"><span class="type">cairo_pattern_t</span></a>
 
2171
<td><p><span class="term"><em class="parameter"><code>pattern</code></em>&#160;:</span></p></td>
 
2172
<td> a <a class="link" href="cairo-Patterns.html#cairo-pattern-t"><span class="type">cairo_pattern_t</span></a>
2173
2173
</td>
2174
2174
</tr>
2175
2175
</tbody>
2177
2177
</div>
2178
2178
<hr>
2179
2179
<div class="refsect2" lang="en">
2180
 
<a name="id2619821"></a><h3>
 
2180
<a name="id2637294"></a><h3>
2181
2181
<a name="cairo-mask-surface"></a>cairo_mask_surface ()</h3>
2182
 
<a class="indexterm" name="id2619835"></a><pre class="programlisting">void                cairo_mask_surface                  (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
2183
 
                                                         <a href="cairo-cairo-surface-t.html#cairo-surface-t">cairo_surface_t</a> *surface,
 
2182
<a class="indexterm" name="id2637308"></a><pre class="programlisting">void                cairo_mask_surface                  (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
2183
                                                         <a class="link" href="cairo-cairo-surface-t.html#cairo-surface-t">cairo_surface_t</a> *surface,
2184
2184
                                                         double surface_x,
2185
2185
                                                         double surface_y);</pre>
2186
2186
<p>
2195
2195
<col align="left" valign="top">
2196
2196
<tbody>
2197
2197
<tr>
2198
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
2198
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
2199
2199
<td> a cairo context
2200
2200
</td>
2201
2201
</tr>
2202
2202
<tr>
2203
 
<td><span class="term"><em class="parameter"><code>surface</code></em>&#160;:</span></td>
2204
 
<td> a <a href="cairo-cairo-surface-t.html#cairo-surface-t"><span class="type">cairo_surface_t</span></a>
 
2203
<td><p><span class="term"><em class="parameter"><code>surface</code></em>&#160;:</span></p></td>
 
2204
<td> a <a class="link" href="cairo-cairo-surface-t.html#cairo-surface-t"><span class="type">cairo_surface_t</span></a>
2205
2205
</td>
2206
2206
</tr>
2207
2207
<tr>
2208
 
<td><span class="term"><em class="parameter"><code>surface_x</code></em>&#160;:</span></td>
 
2208
<td><p><span class="term"><em class="parameter"><code>surface_x</code></em>&#160;:</span></p></td>
2209
2209
<td> X coordinate at which to place the origin of <em class="parameter"><code>surface</code></em>
2210
2210
</td>
2211
2211
</tr>
2212
2212
<tr>
2213
 
<td><span class="term"><em class="parameter"><code>surface_y</code></em>&#160;:</span></td>
 
2213
<td><p><span class="term"><em class="parameter"><code>surface_y</code></em>&#160;:</span></p></td>
2214
2214
<td> Y coordinate at which to place the origin of <em class="parameter"><code>surface</code></em>
2215
2215
</td>
2216
2216
</tr>
2219
2219
</div>
2220
2220
<hr>
2221
2221
<div class="refsect2" lang="en">
2222
 
<a name="id2619984"></a><h3>
 
2222
<a name="id2637457"></a><h3>
2223
2223
<a name="cairo-paint"></a>cairo_paint ()</h3>
2224
 
<a class="indexterm" name="id2619997"></a><pre class="programlisting">void                cairo_paint                         (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
 
2224
<a class="indexterm" name="id2637470"></a><pre class="programlisting">void                cairo_paint                         (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
2225
2225
<p>
2226
2226
A drawing operator that paints the current source everywhere within
2227
2227
the current clip region.</p>
2231
2231
<div class="variablelist"><table border="0">
2232
2232
<col align="left" valign="top">
2233
2233
<tbody><tr>
2234
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
2234
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
2235
2235
<td> a cairo context
2236
2236
</td>
2237
2237
</tr></tbody>
2239
2239
</div>
2240
2240
<hr>
2241
2241
<div class="refsect2" lang="en">
2242
 
<a name="id2620049"></a><h3>
 
2242
<a name="id2637522"></a><h3>
2243
2243
<a name="cairo-paint-with-alpha"></a>cairo_paint_with_alpha ()</h3>
2244
 
<a class="indexterm" name="id2620062"></a><pre class="programlisting">void                cairo_paint_with_alpha              (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
2244
<a class="indexterm" name="id2637535"></a><pre class="programlisting">void                cairo_paint_with_alpha              (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
2245
2245
                                                         double alpha);</pre>
2246
2246
<p>
2247
2247
A drawing operator that paints the current source everywhere within
2248
2248
the current clip region using a mask of constant alpha value
2249
 
<em class="parameter"><code>alpha</code></em>. The effect is similar to <a href="cairo-cairo-t.html#cairo-paint"><code class="function">cairo_paint()</code></a>, but the drawing
 
2249
<em class="parameter"><code>alpha</code></em>. The effect is similar to <a class="link" href="cairo-cairo-t.html#cairo-paint"><code class="function">cairo_paint()</code></a>, but the drawing
2250
2250
is faded out using the alpha value.</p>
2251
2251
<p>
2252
2252
 
2255
2255
<col align="left" valign="top">
2256
2256
<tbody>
2257
2257
<tr>
2258
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
2258
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
2259
2259
<td> a cairo context
2260
2260
</td>
2261
2261
</tr>
2262
2262
<tr>
2263
 
<td><span class="term"><em class="parameter"><code>alpha</code></em>&#160;:</span></td>
 
2263
<td><p><span class="term"><em class="parameter"><code>alpha</code></em>&#160;:</span></p></td>
2264
2264
<td> alpha value, between 0 (transparent) and 1 (opaque)
2265
2265
</td>
2266
2266
</tr>
2269
2269
</div>
2270
2270
<hr>
2271
2271
<div class="refsect2" lang="en">
2272
 
<a name="id2620153"></a><h3>
 
2272
<a name="id2637626"></a><h3>
2273
2273
<a name="cairo-stroke"></a>cairo_stroke ()</h3>
2274
 
<a class="indexterm" name="id2620166"></a><pre class="programlisting">void                cairo_stroke                        (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
 
2274
<a class="indexterm" name="id2637639"></a><pre class="programlisting">void                cairo_stroke                        (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
2275
2275
<p>
2276
2276
A drawing operator that strokes the current path according to the
2277
2277
current line width, line join, line cap, and dash settings. After
2278
2278
cairo_stroke, the current path will be cleared from the cairo
2279
 
context. See <a href="cairo-cairo-t.html#cairo-set-line-width"><code class="function">cairo_set_line_width()</code></a>, <a href="cairo-cairo-t.html#cairo-set-line-join"><code class="function">cairo_set_line_join()</code></a>,
2280
 
<a href="cairo-cairo-t.html#cairo-set-line-cap"><code class="function">cairo_set_line_cap()</code></a>, <a href="cairo-cairo-t.html#cairo-set-dash"><code class="function">cairo_set_dash()</code></a>, and
2281
 
<a href="cairo-cairo-t.html#cairo-stroke-preserve"><code class="function">cairo_stroke_preserve()</code></a>.
 
2279
context. See <a class="link" href="cairo-cairo-t.html#cairo-set-line-width"><code class="function">cairo_set_line_width()</code></a>, <a class="link" href="cairo-cairo-t.html#cairo-set-line-join"><code class="function">cairo_set_line_join()</code></a>,
 
2280
<a class="link" href="cairo-cairo-t.html#cairo-set-line-cap"><code class="function">cairo_set_line_cap()</code></a>, <a class="link" href="cairo-cairo-t.html#cairo-set-dash"><code class="function">cairo_set_dash()</code></a>, and
 
2281
<a class="link" href="cairo-cairo-t.html#cairo-stroke-preserve"><code class="function">cairo_stroke_preserve()</code></a>.
2282
2282
</p>
2283
2283
<p>
2284
2284
Note: Degenerate segments and sub-paths are treated specially and
2286
2286
situations:
2287
2287
</p>
2288
2288
<p>
2289
 
1. Zero-length "on" segments set in <a href="cairo-cairo-t.html#cairo-set-dash"><code class="function">cairo_set_dash()</code></a>. If the cap
 
2289
1. Zero-length "on" segments set in <a class="link" href="cairo-cairo-t.html#cairo-set-dash"><code class="function">cairo_set_dash()</code></a>. If the cap
2290
2290
style is CAIRO_LINE_CAP_ROUND or CAIRO_LINE_CAP_SQUARE then these
2291
2291
segments will be drawn as circular dots or squares respectively. In
2292
2292
the case of CAIRO_LINE_CAP_SQUARE, the orientation of the squares
2293
2293
is determined by the direction of the underlying path.
2294
2294
</p>
2295
2295
<p>
2296
 
2. A sub-path created by <a href="cairo-Paths.html#cairo-move-to"><code class="function">cairo_move_to()</code></a> followed by either a
2297
 
<a href="cairo-Paths.html#cairo-close-path"><code class="function">cairo_close_path()</code></a> or one or more calls to <a href="cairo-Paths.html#cairo-line-to"><code class="function">cairo_line_to()</code></a> to the
2298
 
same coordinate as the <a href="cairo-Paths.html#cairo-move-to"><code class="function">cairo_move_to()</code></a>. If the cap style is
 
2296
2. A sub-path created by <a class="link" href="cairo-Paths.html#cairo-move-to"><code class="function">cairo_move_to()</code></a> followed by either a
 
2297
<a class="link" href="cairo-Paths.html#cairo-close-path"><code class="function">cairo_close_path()</code></a> or one or more calls to <a class="link" href="cairo-Paths.html#cairo-line-to"><code class="function">cairo_line_to()</code></a> to the
 
2298
same coordinate as the <a class="link" href="cairo-Paths.html#cairo-move-to"><code class="function">cairo_move_to()</code></a>. If the cap style is
2299
2299
CAIRO_LINE_CAP_ROUND then these sub-paths will be drawn as circular
2300
2300
dots. Note that in the case of CAIRO_LINE_CAP_SQUARE a degenerate
2301
2301
sub-path will not be drawn at all, (since the correct orientation
2310
2310
<div class="variablelist"><table border="0">
2311
2311
<col align="left" valign="top">
2312
2312
<tbody><tr>
2313
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
2313
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
2314
2314
<td> a cairo context
2315
2315
</td>
2316
2316
</tr></tbody>
2318
2318
</div>
2319
2319
<hr>
2320
2320
<div class="refsect2" lang="en">
2321
 
<a name="id2620346"></a><h3>
 
2321
<a name="id2637818"></a><h3>
2322
2322
<a name="cairo-stroke-preserve"></a>cairo_stroke_preserve ()</h3>
2323
 
<a class="indexterm" name="id2620359"></a><pre class="programlisting">void                cairo_stroke_preserve               (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
 
2323
<a class="indexterm" name="id2637832"></a><pre class="programlisting">void                cairo_stroke_preserve               (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
2324
2324
<p>
2325
2325
A drawing operator that strokes the current path according to the
2326
2326
current line width, line join, line cap, and dash settings. Unlike
2327
 
<a href="cairo-cairo-t.html#cairo-stroke"><code class="function">cairo_stroke()</code></a>, cairo_stroke_preserve preserves the path within the
 
2327
<a class="link" href="cairo-cairo-t.html#cairo-stroke"><code class="function">cairo_stroke()</code></a>, cairo_stroke_preserve preserves the path within the
2328
2328
cairo context.
2329
2329
</p>
2330
2330
<p>
2331
 
See <a href="cairo-cairo-t.html#cairo-set-line-width"><code class="function">cairo_set_line_width()</code></a>, <a href="cairo-cairo-t.html#cairo-set-line-join"><code class="function">cairo_set_line_join()</code></a>,
2332
 
<a href="cairo-cairo-t.html#cairo-set-line-cap"><code class="function">cairo_set_line_cap()</code></a>, <a href="cairo-cairo-t.html#cairo-set-dash"><code class="function">cairo_set_dash()</code></a>, and
2333
 
<a href="cairo-cairo-t.html#cairo-stroke-preserve"><code class="function">cairo_stroke_preserve()</code></a>.</p>
 
2331
See <a class="link" href="cairo-cairo-t.html#cairo-set-line-width"><code class="function">cairo_set_line_width()</code></a>, <a class="link" href="cairo-cairo-t.html#cairo-set-line-join"><code class="function">cairo_set_line_join()</code></a>,
 
2332
<a class="link" href="cairo-cairo-t.html#cairo-set-line-cap"><code class="function">cairo_set_line_cap()</code></a>, <a class="link" href="cairo-cairo-t.html#cairo-set-dash"><code class="function">cairo_set_dash()</code></a>, and
 
2333
<a class="link" href="cairo-cairo-t.html#cairo-stroke-preserve"><code class="function">cairo_stroke_preserve()</code></a>.</p>
2334
2334
<p>
2335
2335
 
2336
2336
</p>
2337
2337
<div class="variablelist"><table border="0">
2338
2338
<col align="left" valign="top">
2339
2339
<tbody><tr>
2340
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
2340
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
2341
2341
<td> a cairo context
2342
2342
</td>
2343
2343
</tr></tbody>
2345
2345
</div>
2346
2346
<hr>
2347
2347
<div class="refsect2" lang="en">
2348
 
<a name="id2620474"></a><h3>
 
2348
<a name="id2637947"></a><h3>
2349
2349
<a name="cairo-stroke-extents"></a>cairo_stroke_extents ()</h3>
2350
 
<a class="indexterm" name="id2620488"></a><pre class="programlisting">void                cairo_stroke_extents                (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
2350
<a class="indexterm" name="id2637961"></a><pre class="programlisting">void                cairo_stroke_extents                (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
2351
2351
                                                         double *x1,
2352
2352
                                                         double *y1,
2353
2353
                                                         double *x2,
2354
2354
                                                         double *y2);</pre>
2355
2355
<p>
2356
2356
Computes a bounding box in user coordinates covering the area that
2357
 
would be affected by a <a href="cairo-cairo-t.html#cairo-stroke"><code class="function">cairo_stroke()</code></a> operation operation given the
 
2357
would be affected by a <a class="link" href="cairo-cairo-t.html#cairo-stroke"><code class="function">cairo_stroke()</code></a> operation operation given the
2358
2358
current path and stroke parameters. If the current path is empty,</p>
2359
2359
<p>
2360
2360
 
2363
2363
<col align="left" valign="top">
2364
2364
<tbody>
2365
2365
<tr>
2366
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
2366
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
2367
2367
<td> a cairo context
2368
2368
</td>
2369
2369
</tr>
2370
2370
<tr>
2371
 
<td><span class="term"><em class="parameter"><code>x1</code></em>&#160;:</span></td>
 
2371
<td><p><span class="term"><em class="parameter"><code>x1</code></em>&#160;:</span></p></td>
2372
2372
<td> left of the resulting extents
2373
2373
</td>
2374
2374
</tr>
2375
2375
<tr>
2376
 
<td><span class="term"><em class="parameter"><code>y1</code></em>&#160;:</span></td>
 
2376
<td><p><span class="term"><em class="parameter"><code>y1</code></em>&#160;:</span></p></td>
2377
2377
<td> top of the resulting extents
2378
2378
</td>
2379
2379
</tr>
2380
2380
<tr>
2381
 
<td><span class="term"><em class="parameter"><code>x2</code></em>&#160;:</span></td>
 
2381
<td><p><span class="term"><em class="parameter"><code>x2</code></em>&#160;:</span></p></td>
2382
2382
<td> right of the resulting extents
2383
2383
</td>
2384
2384
</tr>
2385
2385
<tr>
2386
 
<td><span class="term"><em class="parameter"><code>y2</code></em>&#160;:</span></td>
 
2386
<td><p><span class="term"><em class="parameter"><code>y2</code></em>&#160;:</span></p></td>
2387
2387
<td> bottom of the resulting extents
2388
2388
</td>
2389
2389
</tr>
2392
2392
</div>
2393
2393
<hr>
2394
2394
<div class="refsect2" lang="en">
2395
 
<a name="id2620637"></a><h3>
 
2395
<a name="id2638110"></a><h3>
2396
2396
<a name="cairo-in-stroke"></a>cairo_in_stroke ()</h3>
2397
 
<a class="indexterm" name="id2620650"></a><pre class="programlisting"><a href="cairo-Types.html#cairo-bool-t">cairo_bool_t</a>        cairo_in_stroke                     (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
2397
<a class="indexterm" name="id2638122"></a><pre class="programlisting"><a class="link" href="cairo-Types.html#cairo-bool-t">cairo_bool_t</a>        cairo_in_stroke                     (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
2398
2398
                                                         double x,
2399
2399
                                                         double y);</pre>
2400
2400
<p>
2401
2401
Tests whether the given point is inside the area that would be
2402
 
affected by a <a href="cairo-cairo-t.html#cairo-stroke"><code class="function">cairo_stroke()</code></a> operation given the current path and
 
2402
affected by a <a class="link" href="cairo-cairo-t.html#cairo-stroke"><code class="function">cairo_stroke()</code></a> operation given the current path and
2403
2403
stroking parameters. Surface dimensions and clipping are not taken
2404
2404
into account.
2405
2405
</p>
2406
2406
<p>
2407
 
See <a href="cairo-cairo-t.html#cairo-stroke"><code class="function">cairo_stroke()</code></a>, <a href="cairo-cairo-t.html#cairo-set-line-width"><code class="function">cairo_set_line_width()</code></a>, <a href="cairo-cairo-t.html#cairo-set-line-join"><code class="function">cairo_set_line_join()</code></a>,
2408
 
<a href="cairo-cairo-t.html#cairo-set-line-cap"><code class="function">cairo_set_line_cap()</code></a>, <a href="cairo-cairo-t.html#cairo-set-dash"><code class="function">cairo_set_dash()</code></a>, and
2409
 
<a href="cairo-cairo-t.html#cairo-stroke-preserve"><code class="function">cairo_stroke_preserve()</code></a>.</p>
 
2407
See <a class="link" href="cairo-cairo-t.html#cairo-stroke"><code class="function">cairo_stroke()</code></a>, <a class="link" href="cairo-cairo-t.html#cairo-set-line-width"><code class="function">cairo_set_line_width()</code></a>, <a class="link" href="cairo-cairo-t.html#cairo-set-line-join"><code class="function">cairo_set_line_join()</code></a>,
 
2408
<a class="link" href="cairo-cairo-t.html#cairo-set-line-cap"><code class="function">cairo_set_line_cap()</code></a>, <a class="link" href="cairo-cairo-t.html#cairo-set-dash"><code class="function">cairo_set_dash()</code></a>, and
 
2409
<a class="link" href="cairo-cairo-t.html#cairo-stroke-preserve"><code class="function">cairo_stroke_preserve()</code></a>.</p>
2410
2410
<p>
2411
2411
 
2412
2412
</p>
2414
2414
<col align="left" valign="top">
2415
2415
<tbody>
2416
2416
<tr>
2417
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
2417
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
2418
2418
<td> a cairo context
2419
2419
</td>
2420
2420
</tr>
2421
2421
<tr>
2422
 
<td><span class="term"><em class="parameter"><code>x</code></em>&#160;:</span></td>
 
2422
<td><p><span class="term"><em class="parameter"><code>x</code></em>&#160;:</span></p></td>
2423
2423
<td> X coordinate of the point to test
2424
2424
</td>
2425
2425
</tr>
2426
2426
<tr>
2427
 
<td><span class="term"><em class="parameter"><code>y</code></em>&#160;:</span></td>
 
2427
<td><p><span class="term"><em class="parameter"><code>y</code></em>&#160;:</span></p></td>
2428
2428
<td> Y coordinate of the point to test
2429
2429
</td>
2430
2430
</tr>
2431
2431
<tr>
2432
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 
2432
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
2433
2433
<td> A non-zero value if the point is inside, or zero if
2434
2434
outside.
2435
2435
</td>
2439
2439
</div>
2440
2440
<hr>
2441
2441
<div class="refsect2" lang="en">
2442
 
<a name="id2620829"></a><h3>
 
2442
<a name="id2638302"></a><h3>
2443
2443
<a name="cairo-copy-page"></a>cairo_copy_page ()</h3>
2444
 
<a class="indexterm" name="id2620843"></a><pre class="programlisting">void                cairo_copy_page                     (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
 
2444
<a class="indexterm" name="id2638316"></a><pre class="programlisting">void                cairo_copy_page                     (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
2445
2445
<p>
2446
2446
Emits the current page for backends that support multiple pages, but
2447
2447
doesn't clear it, so, the contents of the current page will be retained
2448
 
for the next page too.  Use <a href="cairo-cairo-t.html#cairo-show-page"><code class="function">cairo_show_page()</code></a> if you want to get an
2449
 
empty page after the emission.</p>
 
2448
for the next page too.  Use <a class="link" href="cairo-cairo-t.html#cairo-show-page"><code class="function">cairo_show_page()</code></a> if you want to get an
 
2449
empty page after the emission.
 
2450
</p>
 
2451
<p>
 
2452
This is a convenience function that simply calls
 
2453
<a class="link" href="cairo-cairo-surface-t.html#cairo-surface-copy-page"><code class="function">cairo_surface_copy_page()</code></a> on <em class="parameter"><code>cr</code></em>'s target.</p>
2450
2454
<p>
2451
2455
 
2452
2456
</p>
2453
2457
<div class="variablelist"><table border="0">
2454
2458
<col align="left" valign="top">
2455
2459
<tbody><tr>
2456
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
2460
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
2457
2461
<td> a cairo context
2458
2462
</td>
2459
2463
</tr></tbody>
2461
2465
</div>
2462
2466
<hr>
2463
2467
<div class="refsect2" lang="en">
2464
 
<a name="id2620906"></a><h3>
 
2468
<a name="id2638399"></a><h3>
2465
2469
<a name="cairo-show-page"></a>cairo_show_page ()</h3>
2466
 
<a class="indexterm" name="id2620919"></a><pre class="programlisting">void                cairo_show_page                     (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
 
2470
<a class="indexterm" name="id2638412"></a><pre class="programlisting">void                cairo_show_page                     (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
2467
2471
<p>
2468
2472
Emits and clears the current page for backends that support multiple
2469
 
pages.  Use <a href="cairo-cairo-t.html#cairo-copy-page"><code class="function">cairo_copy_page()</code></a> if you don't want to clear the page.</p>
 
2473
pages.  Use <a class="link" href="cairo-cairo-t.html#cairo-copy-page"><code class="function">cairo_copy_page()</code></a> if you don't want to clear the page.
 
2474
</p>
 
2475
<p>
 
2476
This is a convenience function that simply calls
 
2477
<a class="link" href="cairo-cairo-surface-t.html#cairo-surface-show-page"><code class="function">cairo_surface_show_page()</code></a> on <em class="parameter"><code>cr</code></em>'s target.</p>
2470
2478
<p>
2471
2479
 
2472
2480
</p>
2473
2481
<div class="variablelist"><table border="0">
2474
2482
<col align="left" valign="top">
2475
2483
<tbody><tr>
2476
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
 
2484
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
2477
2485
<td> a cairo context
2478
2486
</td>
2479
2487
</tr></tbody>
2481
2489
</div>
2482
2490
<hr>
2483
2491
<div class="refsect2" lang="en">
2484
 
<a name="id2620980"></a><h3>
 
2492
<a name="id2638494"></a><h3>
2485
2493
<a name="cairo-get-reference-count"></a>cairo_get_reference_count ()</h3>
2486
 
<a class="indexterm" name="id2620996"></a><pre class="programlisting">unsigned int        cairo_get_reference_count           (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
 
2494
<a class="indexterm" name="id2638510"></a><pre class="programlisting">unsigned int        cairo_get_reference_count           (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr);</pre>
2487
2495
<p>
2488
2496
Returns the current reference count of <em class="parameter"><code>cr</code></em>.</p>
2489
2497
<p>
2493
2501
<col align="left" valign="top">
2494
2502
<tbody>
2495
2503
<tr>
2496
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
2497
 
<td> a <a href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>
 
2504
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
 
2505
<td> a <a class="link" href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>
2498
2506
</td>
2499
2507
</tr>
2500
2508
<tr>
2501
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 
2509
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
2502
2510
<td> the current reference count of <em class="parameter"><code>cr</code></em>.  If the
2503
2511
object is a nil object, 0 will be returned.
2504
2512
 
2511
2519
</div>
2512
2520
<hr>
2513
2521
<div class="refsect2" lang="en">
2514
 
<a name="id2621085"></a><h3>
 
2522
<a name="id2638599"></a><h3>
2515
2523
<a name="cairo-set-user-data"></a>cairo_set_user_data ()</h3>
2516
 
<a class="indexterm" name="id2621102"></a><pre class="programlisting"><a href="cairo-Error-Handling.html#cairo-status-t">cairo_status_t</a>      cairo_set_user_data                 (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
2517
 
                                                         const <a href="cairo-Types.html#cairo-user-data-key-t">cairo_user_data_key_t</a> *key,
 
2524
<a class="indexterm" name="id2638615"></a><pre class="programlisting"><a class="link" href="cairo-Error-Handling.html#cairo-status-t">cairo_status_t</a>      cairo_set_user_data                 (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
2525
                                                         const <a class="link" href="cairo-Types.html#cairo-user-data-key-t">cairo_user_data_key_t</a> *key,
2518
2526
                                                         void *user_data,
2519
 
                                                         <a href="cairo-Types.html#cairo-destroy-func-t">cairo_destroy_func_t</a> destroy);</pre>
 
2527
                                                         <a class="link" href="cairo-Types.html#cairo-destroy-func-t">cairo_destroy_func_t</a> destroy);</pre>
2520
2528
<p>
2521
2529
Attach user data to <em class="parameter"><code>cr</code></em>.  To remove user data from a surface,
2522
2530
call this function with the key that was used to set it and <code class="literal">NULL</code>
2528
2536
<col align="left" valign="top">
2529
2537
<tbody>
2530
2538
<tr>
2531
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
2532
 
<td> a <a href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>
2533
 
</td>
2534
 
</tr>
2535
 
<tr>
2536
 
<td><span class="term"><em class="parameter"><code>key</code></em>&#160;:</span></td>
2537
 
<td> the address of a <a href="cairo-Types.html#cairo-user-data-key-t"><span class="type">cairo_user_data_key_t</span></a> to attach the user data to
2538
 
</td>
2539
 
</tr>
2540
 
<tr>
2541
 
<td><span class="term"><em class="parameter"><code>user_data</code></em>&#160;:</span></td>
2542
 
<td> the user data to attach to the <a href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>
2543
 
</td>
2544
 
</tr>
2545
 
<tr>
2546
 
<td><span class="term"><em class="parameter"><code>destroy</code></em>&#160;:</span></td>
2547
 
<td> a <a href="cairo-Types.html#cairo-destroy-func-t"><span class="type">cairo_destroy_func_t</span></a> which will be called when the
2548
 
<a href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a> is destroyed or when new user data is attached using the
 
2539
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
 
2540
<td> a <a class="link" href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>
 
2541
</td>
 
2542
</tr>
 
2543
<tr>
 
2544
<td><p><span class="term"><em class="parameter"><code>key</code></em>&#160;:</span></p></td>
 
2545
<td> the address of a <a class="link" href="cairo-Types.html#cairo-user-data-key-t"><span class="type">cairo_user_data_key_t</span></a> to attach the user data to
 
2546
</td>
 
2547
</tr>
 
2548
<tr>
 
2549
<td><p><span class="term"><em class="parameter"><code>user_data</code></em>&#160;:</span></p></td>
 
2550
<td> the user data to attach to the <a class="link" href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>
 
2551
</td>
 
2552
</tr>
 
2553
<tr>
 
2554
<td><p><span class="term"><em class="parameter"><code>destroy</code></em>&#160;:</span></p></td>
 
2555
<td> a <a class="link" href="cairo-Types.html#cairo-destroy-func-t"><span class="type">cairo_destroy_func_t</span></a> which will be called when the
 
2556
<a class="link" href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a> is destroyed or when new user data is attached using the
2549
2557
same key.
2550
2558
</td>
2551
2559
</tr>
2552
2560
<tr>
2553
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
2554
 
<td> <a href="cairo-Error-Handling.html#CAIRO-STATUS-SUCCESS:CAPS"><code class="literal">CAIRO_STATUS_SUCCESS</code></a> or <a href="cairo-Error-Handling.html#CAIRO-STATUS-NO-MEMORY:CAPS"><code class="literal">CAIRO_STATUS_NO_MEMORY</code></a> if a
 
2561
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
 
2562
<td> <a class="link" href="cairo-Error-Handling.html#CAIRO-STATUS-SUCCESS:CAPS"><code class="literal">CAIRO_STATUS_SUCCESS</code></a> or <a class="link" href="cairo-Error-Handling.html#CAIRO-STATUS-NO-MEMORY:CAPS"><code class="literal">CAIRO_STATUS_NO_MEMORY</code></a> if a
2555
2563
slot could not be allocated for the user data.
2556
2564
 
2557
2565
</td>
2563
2571
</div>
2564
2572
<hr>
2565
2573
<div class="refsect2" lang="en">
2566
 
<a name="id2621316"></a><h3>
 
2574
<a name="id2638830"></a><h3>
2567
2575
<a name="cairo-get-user-data"></a>cairo_get_user_data ()</h3>
2568
 
<a class="indexterm" name="id2621332"></a><pre class="programlisting">void*               cairo_get_user_data                 (<a href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
2569
 
                                                         const <a href="cairo-Types.html#cairo-user-data-key-t">cairo_user_data_key_t</a> *key);</pre>
 
2576
<a class="indexterm" name="id2638845"></a><pre class="programlisting">void*               cairo_get_user_data                 (<a class="link" href="cairo-cairo-t.html#cairo-t">cairo_t</a> *cr,
 
2577
                                                         const <a class="link" href="cairo-Types.html#cairo-user-data-key-t">cairo_user_data_key_t</a> *key);</pre>
2570
2578
<p>
2571
2579
Return user data previously attached to <em class="parameter"><code>cr</code></em> using the specified
2572
2580
key.  If no user data has been attached with the given key this
2578
2586
<col align="left" valign="top">
2579
2587
<tbody>
2580
2588
<tr>
2581
 
<td><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></td>
2582
 
<td> a <a href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>
 
2589
<td><p><span class="term"><em class="parameter"><code>cr</code></em>&#160;:</span></p></td>
 
2590
<td> a <a class="link" href="cairo-cairo-t.html#cairo-t"><span class="type">cairo_t</span></a>
2583
2591
</td>
2584
2592
</tr>
2585
2593
<tr>
2586
 
<td><span class="term"><em class="parameter"><code>key</code></em>&#160;:</span></td>
2587
 
<td> the address of the <a href="cairo-Types.html#cairo-user-data-key-t"><span class="type">cairo_user_data_key_t</span></a> the user data was
 
2594
<td><p><span class="term"><em class="parameter"><code>key</code></em>&#160;:</span></p></td>
 
2595
<td> the address of the <a class="link" href="cairo-Types.html#cairo-user-data-key-t"><span class="type">cairo_user_data_key_t</span></a> the user data was
2588
2596
attached to
2589
2597
</td>
2590
2598
</tr>
2591
2599
<tr>
2592
 
<td><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></td>
 
2600
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span>&#160;:</span></p></td>
2593
2601
<td> the user data previously attached or <code class="literal">NULL</code>.
2594
2602
 
2595
2603
</td>
2600
2608
</p>
2601
2609
</div>
2602
2610
</div>
 
2611
<div class="refsect1" lang="en">
 
2612
<a name="id2638978"></a><div class="refsect2" lang="en"><a name="id2638979"></a></div>
 
2613
<hr>
 
2614
<div class="refsect2" lang="en"><a name="id2638980"></a></div>
 
2615
</div>
2603
2616
</div>
2604
2617
</body>
2605
2618
</html>