cairo 1.7.0-x86-mswin32 → 1.8.0-x86-mswin32

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of cairo might be problematic. Click here for more details.

Files changed (167) hide show
  1. data/ChangeLog +32 -0
  2. data/NEWS +9 -1
  3. data/README +1 -0
  4. data/Rakefile +2 -2
  5. data/cairo/DLL_FAQ.txt +397 -0
  6. data/cairo/README.txt +53 -0
  7. data/cairo/USAGE.txt +94 -0
  8. data/cairo/bin/libcairo-2.dll +0 -0
  9. data/cairo/bin/libpng12-0.dll +0 -0
  10. data/cairo/bin/zlib1.dll +0 -0
  11. data/cairo/include/cairo/cairo-deprecated.h +0 -4
  12. data/cairo/include/cairo/cairo-features.h +7 -22
  13. data/cairo/include/cairo/cairo-pdf.h +1 -1
  14. data/cairo/include/cairo/cairo-ps.h +1 -1
  15. data/cairo/include/cairo/cairo-svg.h +1 -1
  16. data/cairo/include/cairo/cairo-version.h +8 -0
  17. data/cairo/include/cairo/cairo-win32.h +9 -1
  18. data/cairo/include/cairo/cairo.h +420 -32
  19. data/cairo/include/libpng12/png.h +3592 -0
  20. data/cairo/include/libpng12/pngconf.h +1481 -0
  21. data/cairo/include/png.h +36 -13
  22. data/cairo/include/pngconf.h +3 -3
  23. data/cairo/include/zconf.h +332 -0
  24. data/cairo/include/zlib.h +1357 -0
  25. data/cairo/lib/cairo.def +22 -0
  26. data/cairo/lib/cairo.lib +0 -0
  27. data/cairo/lib/libcairo.dll.a +0 -0
  28. data/cairo/lib/libpng.def +1 -0
  29. data/cairo/lib/libpng.lib +0 -0
  30. data/cairo/lib/libpng12.dll.a +0 -0
  31. data/cairo/lib/pkgconfig/cairo-pdf.pc +5 -5
  32. data/cairo/lib/pkgconfig/cairo-png.pc +5 -5
  33. data/cairo/lib/pkgconfig/cairo-ps.pc +5 -5
  34. data/cairo/lib/pkgconfig/cairo-svg.pc +4 -4
  35. data/cairo/lib/pkgconfig/cairo-win32-font.pc +4 -4
  36. data/cairo/lib/pkgconfig/cairo-win32.pc +4 -4
  37. data/cairo/lib/pkgconfig/cairo.pc +4 -4
  38. data/cairo/lib/pkgconfig/libpng.pc +3 -2
  39. data/cairo/lib/pkgconfig/libpng12.pc +3 -2
  40. data/cairo/lib/zdll.exp +0 -0
  41. data/cairo/lib/zdll.lib +0 -0
  42. data/cairo/lib/zlib.def +60 -0
  43. data/cairo/manifest/cairo-dev_1.8.0-1_win32.mft +76 -0
  44. data/cairo/manifest/cairo_1.8.0-1_win32.mft +5 -0
  45. data/cairo/manifest/{libpng-dev-1.2.29.mft → libpng-dev_1.2.32-1_win32.mft} +5 -2
  46. data/cairo/manifest/libpng_1.2.32-1_win32.mft +2 -0
  47. data/cairo/share/doc/{cairo-1.6.4-2 → cairo_1.8.0-1_win32}/COPYING +0 -0
  48. data/cairo/share/doc/{cairo-1.6.4-2 → cairo_1.8.0-1_win32}/COPYING-LGPL-2.1 +0 -0
  49. data/cairo/share/doc/{cairo-1.6.4-2 → cairo_1.8.0-1_win32}/COPYING-MPL-1.1 +0 -0
  50. data/cairo/share/gtk-doc/html/cairo/bindings-errors.html +15 -11
  51. data/cairo/share/gtk-doc/html/cairo/bindings-fonts.html +15 -11
  52. data/cairo/share/gtk-doc/html/cairo/bindings-memory.html +20 -16
  53. data/cairo/share/gtk-doc/html/cairo/bindings-overloading.html +16 -12
  54. data/cairo/share/gtk-doc/html/cairo/bindings-path.html +17 -13
  55. data/cairo/share/gtk-doc/html/cairo/bindings-patterns.html +25 -21
  56. data/cairo/share/gtk-doc/html/cairo/bindings-return-values.html +17 -13
  57. data/cairo/share/gtk-doc/html/cairo/bindings-streams.html +14 -10
  58. data/cairo/share/gtk-doc/html/cairo/bindings-surfaces.html +19 -15
  59. data/cairo/share/gtk-doc/html/cairo/cairo-context.html +2721 -0
  60. data/cairo/share/gtk-doc/html/cairo/cairo-drawing.html +57 -0
  61. data/cairo/share/gtk-doc/html/cairo/cairo-error-status.html +361 -0
  62. data/cairo/share/gtk-doc/html/cairo/cairo-font-face.html +418 -0
  63. data/cairo/share/gtk-doc/html/cairo/cairo-font-options.html +695 -0
  64. data/cairo/share/gtk-doc/html/cairo/cairo-fonts.html +63 -0
  65. data/cairo/share/gtk-doc/html/cairo/cairo-ft-font.html +318 -0
  66. data/cairo/share/gtk-doc/html/cairo/cairo-image-surface.html +486 -0
  67. data/cairo/share/gtk-doc/html/cairo/{cairo-cairo-matrix-t.html → cairo-matrix.html} +137 -156
  68. data/cairo/share/gtk-doc/html/cairo/{cairo-Paths.html → cairo-paths.html} +275 -306
  69. data/cairo/share/gtk-doc/html/cairo/cairo-pattern.html +1524 -0
  70. data/cairo/share/gtk-doc/html/cairo/{cairo-PDF-Surfaces.html → cairo-pdf-surface.html} +60 -70
  71. data/cairo/share/gtk-doc/html/cairo/cairo-png-functions.html +332 -0
  72. data/cairo/share/gtk-doc/html/cairo/{cairo-PostScript-Surfaces.html → cairo-ps-surface.html} +131 -150
  73. data/cairo/share/gtk-doc/html/cairo/cairo-quartz-font.html +153 -0
  74. data/cairo/share/gtk-doc/html/cairo/{cairo-Quartz-Surfaces.html → cairo-quartz-surface.html} +53 -62
  75. data/cairo/share/gtk-doc/html/cairo/cairo-scaled-font.html +1051 -0
  76. data/cairo/share/gtk-doc/html/cairo/cairo-support.html +54 -0
  77. data/cairo/share/gtk-doc/html/cairo/cairo-surface.html +1064 -0
  78. data/cairo/share/gtk-doc/html/cairo/cairo-surfaces.html +69 -0
  79. data/cairo/share/gtk-doc/html/cairo/cairo-svg-surface.html +324 -0
  80. data/cairo/share/gtk-doc/html/cairo/cairo-text.html +1264 -0
  81. data/cairo/share/gtk-doc/html/cairo/{cairo-Transformations.html → cairo-transformations.html} +98 -115
  82. data/cairo/share/gtk-doc/html/cairo/cairo-types.html +134 -0
  83. data/cairo/share/gtk-doc/html/cairo/cairo-user-font.html +769 -0
  84. data/cairo/share/gtk-doc/html/cairo/cairo-version-info.html +355 -0
  85. data/cairo/share/gtk-doc/html/cairo/cairo-win32-font.html +366 -0
  86. data/cairo/share/gtk-doc/html/cairo/cairo-win32-surface.html +321 -0
  87. data/cairo/share/gtk-doc/html/cairo/{cairo-XLib-Surfaces.html → cairo-xlib-surface.html} +104 -121
  88. data/cairo/share/gtk-doc/html/cairo/cairo.devhelp +390 -405
  89. data/cairo/share/gtk-doc/html/cairo/cairo.devhelp2 +390 -405
  90. data/cairo/share/gtk-doc/html/cairo/index-1.2.html +63 -59
  91. data/cairo/share/gtk-doc/html/cairo/index-1.4.html +45 -41
  92. data/cairo/share/gtk-doc/html/cairo/index-1.6.html +29 -23
  93. data/cairo/share/gtk-doc/html/cairo/index-1.8.html +107 -0
  94. data/cairo/share/gtk-doc/html/cairo/index-all.html +759 -0
  95. data/cairo/share/gtk-doc/html/cairo/index.html +51 -41
  96. data/cairo/share/gtk-doc/html/cairo/index.sgml +478 -466
  97. data/cairo/share/gtk-doc/html/cairo/language-bindings.html +22 -18
  98. data/cairo/share/gtk-doc/html/cairo/style.css +14 -2
  99. data/cairo/share/man/man3/libpng.3 +443 -17
  100. data/cairo/share/man/man3/libpngpf.3 +618 -102
  101. data/cairo/share/man/man5/png.5 +1 -1
  102. data/cairo/src/tml/make/cairo_1.8.0-1_win32.log +1021 -0
  103. data/cairo/src/tml/make/cairo_1.8.0-1_win32.sh +68 -0
  104. data/cairo/src/tml/make/libpng_1.2.32-1_win32.log +269 -0
  105. data/cairo/src/tml/make/libpng_1.2.32-1_win32.sh +63 -0
  106. data/cairo/test/example_d.exe +0 -0
  107. data/cairo/test/minigzip_d.exe +0 -0
  108. data/cairo/test/testzlib_d.exe +0 -0
  109. data/cairo/test/untgz_d.exe +0 -0
  110. data/doc/en/cairo-context.html +81 -91
  111. data/doc/en/cairo-font-options.html +11 -26
  112. data/doc/en/cairo-text-cluster-flag.html +35 -0
  113. data/doc/en/cairo-user-font-face-text-to-glyphs-data.html +3 -3
  114. data/doc/en/cairo.html +38 -42
  115. data/doc/en/index.html +129 -142
  116. data/doc/ja/cairo-font-options.html +3 -25
  117. data/doc/ja/cairo-text-cluster-flag.html +46 -0
  118. data/doc/ja/cairo-user-font-face-text-to-glyphs-data.html +16 -15
  119. data/doc/ja/cairo.html +3 -7
  120. data/doc/ja/index.html +9 -17
  121. data/src/cairo.def +1 -1
  122. data/src/cairo.so +0 -0
  123. data/src/lib/cairo/constants.rb +3 -1
  124. data/src/libruby-cairo.a +0 -0
  125. data/src/rb_cairo.c +2 -2
  126. data/src/rb_cairo.h +5 -5
  127. data/src/rb_cairo_constants.c +12 -19
  128. data/src/rb_cairo_context.c +25 -21
  129. data/src/rb_cairo_font_face.c +44 -29
  130. data/src/rb_cairo_font_options.c +1 -23
  131. data/src/rb_cairo_scaled_font.c +5 -5
  132. data/test/test_constants.rb +6 -9
  133. data/test/test_context.rb +0 -12
  134. data/test/test_font_face.rb +7 -7
  135. data/test/test_font_options.rb +2 -21
  136. data/test/test_scaled_font.rb +3 -3
  137. data/test/test_text_to_glyphs_data.rb +19 -15
  138. metadata +68 -45
  139. data/cairo/make/cairo-1.6.4-2.sh +0 -55
  140. data/cairo/make/libpng-1.2.29.sh +0 -35
  141. data/cairo/manifest/cairo-1.6.4-2.mft +0 -6
  142. data/cairo/manifest/cairo-dev-1.6.4-2.mft +0 -72
  143. data/cairo/manifest/libpng-1.2.29.mft +0 -2
  144. data/cairo/share/gtk-doc/html/cairo/Drawing.html +0 -53
  145. data/cairo/share/gtk-doc/html/cairo/Fonts.html +0 -56
  146. data/cairo/share/gtk-doc/html/cairo/Support.html +0 -50
  147. data/cairo/share/gtk-doc/html/cairo/Surfaces.html +0 -65
  148. data/cairo/share/gtk-doc/html/cairo/cairo-Error-Handling.html +0 -328
  149. data/cairo/share/gtk-doc/html/cairo/cairo-Font-Options.html +0 -720
  150. data/cairo/share/gtk-doc/html/cairo/cairo-FreeType-Fonts.html +0 -297
  151. data/cairo/share/gtk-doc/html/cairo/cairo-Image-Surfaces.html +0 -484
  152. data/cairo/share/gtk-doc/html/cairo/cairo-PNG-Support.html +0 -345
  153. data/cairo/share/gtk-doc/html/cairo/cairo-Patterns.html +0 -1560
  154. data/cairo/share/gtk-doc/html/cairo/cairo-Quartz-Fonts.html +0 -161
  155. data/cairo/share/gtk-doc/html/cairo/cairo-SVG-Surfaces.html +0 -337
  156. data/cairo/share/gtk-doc/html/cairo/cairo-Scaled-Fonts.html +0 -823
  157. data/cairo/share/gtk-doc/html/cairo/cairo-Text.html +0 -836
  158. data/cairo/share/gtk-doc/html/cairo/cairo-Types.html +0 -143
  159. data/cairo/share/gtk-doc/html/cairo/cairo-Version-Information.html +0 -325
  160. data/cairo/share/gtk-doc/html/cairo/cairo-Win32-Fonts.html +0 -381
  161. data/cairo/share/gtk-doc/html/cairo/cairo-Win32-Surfaces.html +0 -331
  162. data/cairo/share/gtk-doc/html/cairo/cairo-cairo-font-face-t.html +0 -427
  163. data/cairo/share/gtk-doc/html/cairo/cairo-cairo-surface-t.html +0 -995
  164. data/cairo/share/gtk-doc/html/cairo/cairo-cairo-t.html +0 -2795
  165. data/cairo/share/gtk-doc/html/cairo/ix01.html +0 -693
  166. data/doc/en/cairo-lcd-filter.html +0 -39
  167. data/doc/ja/cairo-lcd-filter.html +0 -63
@@ -0,0 +1,57 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2
+ <html>
3
+ <head>
4
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
5
+ <title>Drawing</title>
6
+ <meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
7
+ <link rel="start" href="index.html" title="Cairo: A Vector Graphics Library">
8
+ <link rel="up" href="index.html" title="Cairo: A Vector Graphics Library">
9
+ <link rel="prev" href="index.html" title="Cairo: A Vector Graphics Library">
10
+ <link rel="next" href="cairo-context.html" title="cairo_t">
11
+ <meta name="generator" content="GTK-Doc V1.10 (XML mode)">
12
+ <link rel="stylesheet" href="style.css" type="text/css">
13
+ <link rel="chapter" href="cairo-drawing.html" title="Drawing">
14
+ <link rel="chapter" href="cairo-fonts.html" title="Fonts">
15
+ <link rel="chapter" href="cairo-surfaces.html" title="Surfaces">
16
+ <link rel="chapter" href="cairo-support.html" title="Utilities">
17
+ <link rel="index" href="index-all.html" title="Index">
18
+ <link rel="index" href="index-1.2.html" title="Index of new symbols in 1.2">
19
+ <link rel="index" href="index-1.4.html" title="Index of new symbols in 1.4">
20
+ <link rel="index" href="index-1.6.html" title="Index of new symbols in 1.6">
21
+ <link rel="index" href="index-1.8.html" title="Index of new symbols in 1.8">
22
+ <link rel="appendix" href="language-bindings.html" title="Appendix A. Creating a language binding for cairo">
23
+ </head>
24
+ <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
25
+ <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle">
26
+ <td><a accesskey="p" href="index.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
27
+ <td> </td>
28
+ <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
29
+ <th width="100%" align="center">Cairo: A Vector Graphics Library</th>
30
+ <td><a accesskey="n" href="cairo-context.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
31
+ </tr></table>
32
+ <div class="chapter" lang="en">
33
+ <div class="titlepage"><div><div><h2 class="title">
34
+ <a name="cairo-drawing"></a>Drawing</h2></div></div></div>
35
+ <div class="toc"><dl>
36
+ <dt>
37
+ <span class="refentrytitle"><a href="cairo-context.html">cairo_t</a></span><span class="refpurpose"> — The cairo drawing context</span>
38
+ </dt>
39
+ <dt>
40
+ <span class="refentrytitle"><a href="cairo-paths.html">Paths</a></span><span class="refpurpose"> — Creating paths and manipulating path data</span>
41
+ </dt>
42
+ <dt>
43
+ <span class="refentrytitle"><a href="cairo-pattern.html">cairo_pattern_t</a></span><span class="refpurpose"> — Sources for drawing</span>
44
+ </dt>
45
+ <dt>
46
+ <span class="refentrytitle"><a href="cairo-transformations.html">Transformations</a></span><span class="refpurpose"> — Manipulating the current transformation matrix</span>
47
+ </dt>
48
+ <dt>
49
+ <span class="refentrytitle"><a href="cairo-text.html">Text</a></span><span class="refpurpose"> — Rendering text and glyphs</span>
50
+ </dt>
51
+ </dl></div>
52
+ </div>
53
+ <div class="footer">
54
+ <hr>
55
+ Generated by GTK-Doc V1.10</div>
56
+ </body>
57
+ </html>
@@ -0,0 +1,361 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2
+ <html>
3
+ <head>
4
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
5
+ <title>Error handling</title>
6
+ <meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
7
+ <link rel="start" href="index.html" title="Cairo: A Vector Graphics Library">
8
+ <link rel="up" href="cairo-support.html" title="Utilities">
9
+ <link rel="prev" href="cairo-matrix.html" title="cairo_matrix_t">
10
+ <link rel="next" href="cairo-version-info.html" title="Version Information">
11
+ <meta name="generator" content="GTK-Doc V1.10 (XML mode)">
12
+ <link rel="stylesheet" href="style.css" type="text/css">
13
+ <link rel="chapter" href="cairo-drawing.html" title="Drawing">
14
+ <link rel="chapter" href="cairo-fonts.html" title="Fonts">
15
+ <link rel="chapter" href="cairo-surfaces.html" title="Surfaces">
16
+ <link rel="chapter" href="cairo-support.html" title="Utilities">
17
+ <link rel="index" href="index-all.html" title="Index">
18
+ <link rel="index" href="index-1.2.html" title="Index of new symbols in 1.2">
19
+ <link rel="index" href="index-1.4.html" title="Index of new symbols in 1.4">
20
+ <link rel="index" href="index-1.6.html" title="Index of new symbols in 1.6">
21
+ <link rel="index" href="index-1.8.html" title="Index of new symbols in 1.8">
22
+ <link rel="appendix" href="language-bindings.html" title="Appendix A. Creating a language binding for cairo">
23
+ </head>
24
+ <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
25
+ <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
26
+ <tr valign="middle">
27
+ <td><a accesskey="p" href="cairo-matrix.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
28
+ <td><a accesskey="u" href="cairo-support.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
29
+ <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
30
+ <th width="100%" align="center">Cairo: A Vector Graphics Library</th>
31
+ <td><a accesskey="n" href="cairo-version-info.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
32
+ </tr>
33
+ <tr><td colspan="5" class="shortcuts"><nobr><a href="#cairo-error-status.synopsis" class="shortcut">Top</a>
34
+  | 
35
+ <a href="#cairo-error-status.description" class="shortcut">Description</a></nobr></td></tr>
36
+ </table>
37
+ <div class="refentry" lang="en">
38
+ <a name="cairo-error-status"></a><div class="titlepage"></div>
39
+ <div class="refnamediv"><table width="100%"><tr>
40
+ <td valign="top">
41
+ <h2><span class="refentrytitle"><a name="cairo-error-status.top_of_page"></a>Error handling</span></h2>
42
+ <p>Error handling — Decoding cairo's status</p>
43
+ </td>
44
+ <td valign="top" align="right"></td>
45
+ </tr></table></div>
46
+ <div class="refsynopsisdiv">
47
+ <a name="cairo-error-status.synopsis"></a><h2>Synopsis</h2>
48
+ <pre class="synopsis">
49
+ enum <a class="link" href="cairo-error-status.html#cairo-status-t" title="enum cairo_status_t">cairo_status_t</a>;
50
+ const char* <a class="link" href="cairo-error-status.html#cairo-status-to-string" title="cairo_status_to_string ()">cairo_status_to_string</a> (<a class="link" href="cairo-error-status.html#cairo-status-t" title="enum cairo_status_t">cairo_status_t</a> status);
51
+ void <a class="link" href="cairo-error-status.html#cairo-debug-reset-static-data" title="cairo_debug_reset_static_data ()">cairo_debug_reset_static_data</a> (void);
52
+ </pre>
53
+ </div>
54
+ <div class="refsect1" lang="en">
55
+ <a name="cairo-error-status.description"></a><h2>Description</h2>
56
+ <p>
57
+ Cairo uses a single status type to represent all kinds of errors. A status
58
+ value of <a class="link" href="cairo-error-status.html#CAIRO-STATUS-SUCCESS:CAPS"><code class="literal">CAIRO_STATUS_SUCCESS</code></a> represents no error and has an integer value
59
+ of zero. All other status values represent an error.
60
+ </p>
61
+ <p>
62
+ Cairo's error handling is designed to be easy to use and safe. All major
63
+ cairo objects <em class="firstterm">retain</em> an error status internally which
64
+ can be queried anytime by the users using cairo*<code class="function">_status()</code> calls. In
65
+ the mean time, it is safe to call all cairo functions normally even if the
66
+ underlying object is in an error status. This means that no error handling
67
+ code is required before or after each individual cairo function call.
68
+ </p>
69
+ </div>
70
+ <div class="refsect1" lang="en">
71
+ <a name="cairo-error-status.details"></a><h2>Details</h2>
72
+ <div class="refsect2" lang="en">
73
+ <a name="cairo-status-t"></a><h3>enum cairo_status_t</h3>
74
+ <pre class="programlisting">typedef enum _cairo_status {
75
+ CAIRO_STATUS_SUCCESS = 0,
76
+ CAIRO_STATUS_NO_MEMORY,
77
+ CAIRO_STATUS_INVALID_RESTORE,
78
+ CAIRO_STATUS_INVALID_POP_GROUP,
79
+ CAIRO_STATUS_NO_CURRENT_POINT,
80
+ CAIRO_STATUS_INVALID_MATRIX,
81
+ CAIRO_STATUS_INVALID_STATUS,
82
+ CAIRO_STATUS_NULL_POINTER,
83
+ CAIRO_STATUS_INVALID_STRING,
84
+ CAIRO_STATUS_INVALID_PATH_DATA,
85
+ CAIRO_STATUS_READ_ERROR,
86
+ CAIRO_STATUS_WRITE_ERROR,
87
+ CAIRO_STATUS_SURFACE_FINISHED,
88
+ CAIRO_STATUS_SURFACE_TYPE_MISMATCH,
89
+ CAIRO_STATUS_PATTERN_TYPE_MISMATCH,
90
+ CAIRO_STATUS_INVALID_CONTENT,
91
+ CAIRO_STATUS_INVALID_FORMAT,
92
+ CAIRO_STATUS_INVALID_VISUAL,
93
+ CAIRO_STATUS_FILE_NOT_FOUND,
94
+ CAIRO_STATUS_INVALID_DASH,
95
+ CAIRO_STATUS_INVALID_DSC_COMMENT,
96
+ CAIRO_STATUS_INVALID_INDEX,
97
+ CAIRO_STATUS_CLIP_NOT_REPRESENTABLE,
98
+ CAIRO_STATUS_TEMP_FILE_ERROR,
99
+ CAIRO_STATUS_INVALID_STRIDE,
100
+ CAIRO_STATUS_FONT_TYPE_MISMATCH,
101
+ CAIRO_STATUS_USER_FONT_IMMUTABLE,
102
+ CAIRO_STATUS_USER_FONT_ERROR,
103
+ CAIRO_STATUS_NEGATIVE_COUNT,
104
+ CAIRO_STATUS_INVALID_CLUSTERS,
105
+ CAIRO_STATUS_INVALID_SLANT,
106
+ CAIRO_STATUS_INVALID_WEIGHT
107
+ /* after adding a new error: update CAIRO_STATUS_LAST_STATUS in cairoint.h */
108
+ } cairo_status_t;
109
+ </pre>
110
+ <p>
111
+ <a class="link" href="cairo-error-status.html#cairo-status-t" title="enum cairo_status_t"><span class="type">cairo_status_t</span></a> is used to indicate errors that can occur when
112
+ using Cairo. In some cases it is returned directly by functions.
113
+ but when using <a class="link" href="cairo-context.html#cairo-t" title="cairo_t"><span class="type">cairo_t</span></a>, the last error, if any, is stored in
114
+ the context and can be retrieved with <a class="link" href="cairo-context.html#cairo-status" title="cairo_status ()"><code class="function">cairo_status()</code></a>.
115
+ </p>
116
+ <p>
117
+ New entries may be added in future versions. Use <a class="link" href="cairo-error-status.html#cairo-status-to-string" title="cairo_status_to_string ()"><code class="function">cairo_status_to_string()</code></a>
118
+ to get a human-readable representation of an error message.</p>
119
+ <p>
120
+
121
+ </p>
122
+ <div class="variablelist"><table border="0">
123
+ <col align="left" valign="top">
124
+ <tbody>
125
+ <tr>
126
+ <td><p><a name="CAIRO-STATUS-SUCCESS:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_SUCCESS</code></span></p></td>
127
+ <td> no error has occurred
128
+ </td>
129
+ </tr>
130
+ <tr>
131
+ <td><p><a name="CAIRO-STATUS-NO-MEMORY:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_NO_MEMORY</code></span></p></td>
132
+ <td> out of memory
133
+ </td>
134
+ </tr>
135
+ <tr>
136
+ <td><p><a name="CAIRO-STATUS-INVALID-RESTORE:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_INVALID_RESTORE</code></span></p></td>
137
+ <td> <a class="link" href="cairo-context.html#cairo-restore" title="cairo_restore ()"><code class="function">cairo_restore()</code></a> called without matching <a class="link" href="cairo-context.html#cairo-save" title="cairo_save ()"><code class="function">cairo_save()</code></a>
138
+ </td>
139
+ </tr>
140
+ <tr>
141
+ <td><p><a name="CAIRO-STATUS-INVALID-POP-GROUP:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_INVALID_POP_GROUP</code></span></p></td>
142
+ <td> no saved group to pop
143
+ </td>
144
+ </tr>
145
+ <tr>
146
+ <td><p><a name="CAIRO-STATUS-NO-CURRENT-POINT:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_NO_CURRENT_POINT</code></span></p></td>
147
+ <td> no current point defined
148
+ </td>
149
+ </tr>
150
+ <tr>
151
+ <td><p><a name="CAIRO-STATUS-INVALID-MATRIX:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_INVALID_MATRIX</code></span></p></td>
152
+ <td> invalid matrix (not invertible)
153
+ </td>
154
+ </tr>
155
+ <tr>
156
+ <td><p><a name="CAIRO-STATUS-INVALID-STATUS:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_INVALID_STATUS</code></span></p></td>
157
+ <td> invalid value for an input <a class="link" href="cairo-error-status.html#cairo-status-t" title="enum cairo_status_t"><span class="type">cairo_status_t</span></a>
158
+ </td>
159
+ </tr>
160
+ <tr>
161
+ <td><p><a name="CAIRO-STATUS-NULL-POINTER:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_NULL_POINTER</code></span></p></td>
162
+ <td> <code class="literal">NULL</code> pointer
163
+ </td>
164
+ </tr>
165
+ <tr>
166
+ <td><p><a name="CAIRO-STATUS-INVALID-STRING:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_INVALID_STRING</code></span></p></td>
167
+ <td> input string not valid UTF-8
168
+ </td>
169
+ </tr>
170
+ <tr>
171
+ <td><p><a name="CAIRO-STATUS-INVALID-PATH-DATA:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_INVALID_PATH_DATA</code></span></p></td>
172
+ <td> input path data not valid
173
+ </td>
174
+ </tr>
175
+ <tr>
176
+ <td><p><a name="CAIRO-STATUS-READ-ERROR:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_READ_ERROR</code></span></p></td>
177
+ <td> error while reading from input stream
178
+ </td>
179
+ </tr>
180
+ <tr>
181
+ <td><p><a name="CAIRO-STATUS-WRITE-ERROR:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_WRITE_ERROR</code></span></p></td>
182
+ <td> error while writing to output stream
183
+ </td>
184
+ </tr>
185
+ <tr>
186
+ <td><p><a name="CAIRO-STATUS-SURFACE-FINISHED:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_SURFACE_FINISHED</code></span></p></td>
187
+ <td> target surface has been finished
188
+ </td>
189
+ </tr>
190
+ <tr>
191
+ <td><p><a name="CAIRO-STATUS-SURFACE-TYPE-MISMATCH:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_SURFACE_TYPE_MISMATCH</code></span></p></td>
192
+ <td> the surface type is not appropriate for the operation
193
+ </td>
194
+ </tr>
195
+ <tr>
196
+ <td><p><a name="CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></span></p></td>
197
+ <td> the pattern type is not appropriate for the operation
198
+ </td>
199
+ </tr>
200
+ <tr>
201
+ <td><p><a name="CAIRO-STATUS-INVALID-CONTENT:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_INVALID_CONTENT</code></span></p></td>
202
+ <td> invalid value for an input <a class="link" href="cairo-surface.html#cairo-content-t" title="enum cairo_content_t"><span class="type">cairo_content_t</span></a>
203
+ </td>
204
+ </tr>
205
+ <tr>
206
+ <td><p><a name="CAIRO-STATUS-INVALID-FORMAT:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_INVALID_FORMAT</code></span></p></td>
207
+ <td> invalid value for an input <a class="link" href="cairo-image-surface.html#cairo-format-t" title="enum cairo_format_t"><span class="type">cairo_format_t</span></a>
208
+ </td>
209
+ </tr>
210
+ <tr>
211
+ <td><p><a name="CAIRO-STATUS-INVALID-VISUAL:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_INVALID_VISUAL</code></span></p></td>
212
+ <td> invalid value for an input Visual*
213
+ </td>
214
+ </tr>
215
+ <tr>
216
+ <td><p><a name="CAIRO-STATUS-FILE-NOT-FOUND:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_FILE_NOT_FOUND</code></span></p></td>
217
+ <td> file not found
218
+ </td>
219
+ </tr>
220
+ <tr>
221
+ <td><p><a name="CAIRO-STATUS-INVALID-DASH:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_INVALID_DASH</code></span></p></td>
222
+ <td> invalid value for a dash setting
223
+ </td>
224
+ </tr>
225
+ <tr>
226
+ <td><p><a name="CAIRO-STATUS-INVALID-DSC-COMMENT:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_INVALID_DSC_COMMENT</code></span></p></td>
227
+ <td> invalid value for a DSC comment (Since 1.2)
228
+ </td>
229
+ </tr>
230
+ <tr>
231
+ <td><p><a name="CAIRO-STATUS-INVALID-INDEX:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_INVALID_INDEX</code></span></p></td>
232
+ <td> invalid index passed to getter (Since 1.4)
233
+ </td>
234
+ </tr>
235
+ <tr>
236
+ <td><p><a name="CAIRO-STATUS-CLIP-NOT-REPRESENTABLE:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_CLIP_NOT_REPRESENTABLE</code></span></p></td>
237
+ <td> clip region not representable in desired format (Since 1.4)
238
+ </td>
239
+ </tr>
240
+ <tr>
241
+ <td><p><a name="CAIRO-STATUS-TEMP-FILE-ERROR:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_TEMP_FILE_ERROR</code></span></p></td>
242
+ <td> error creating or writing to a temporary file (Since 1.6)
243
+ </td>
244
+ </tr>
245
+ <tr>
246
+ <td><p><a name="CAIRO-STATUS-INVALID-STRIDE:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_INVALID_STRIDE</code></span></p></td>
247
+ <td> invalid value for stride (Since 1.6)
248
+ </td>
249
+ </tr>
250
+ <tr>
251
+ <td><p><a name="CAIRO-STATUS-FONT-TYPE-MISMATCH:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_FONT_TYPE_MISMATCH</code></span></p></td>
252
+ <td> the font type is not appropriate for the operation (Since 1.8)
253
+ </td>
254
+ </tr>
255
+ <tr>
256
+ <td><p><a name="CAIRO-STATUS-USER-FONT-IMMUTABLE:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_USER_FONT_IMMUTABLE</code></span></p></td>
257
+ <td> the user-font is immutable (Since 1.8)
258
+ </td>
259
+ </tr>
260
+ <tr>
261
+ <td><p><a name="CAIRO-STATUS-USER-FONT-ERROR:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_USER_FONT_ERROR</code></span></p></td>
262
+ <td> error occurred in a user-font callback function (Since 1.8)
263
+ </td>
264
+ </tr>
265
+ <tr>
266
+ <td><p><a name="CAIRO-STATUS-NEGATIVE-COUNT:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_NEGATIVE_COUNT</code></span></p></td>
267
+ <td> negative number used where it is not allowed (Since 1.8)
268
+ </td>
269
+ </tr>
270
+ <tr>
271
+ <td><p><a name="CAIRO-STATUS-INVALID-CLUSTERS:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_INVALID_CLUSTERS</code></span></p></td>
272
+ <td> input clusters do not represent the accompanying text and glyph array (Since 1.8)
273
+ </td>
274
+ </tr>
275
+ <tr>
276
+ <td><p><a name="CAIRO-STATUS-INVALID-SLANT:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_INVALID_SLANT</code></span></p></td>
277
+ <td> invalid value for an input <a class="link" href="cairo-text.html#cairo-font-slant-t" title="enum cairo_font_slant_t"><span class="type">cairo_font_slant_t</span></a> (Since 1.8)
278
+ </td>
279
+ </tr>
280
+ <tr>
281
+ <td><p><a name="CAIRO-STATUS-INVALID-WEIGHT:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_INVALID_WEIGHT</code></span></p></td>
282
+ <td> invalid value for an input <a class="link" href="cairo-text.html#cairo-font-weight-t" title="enum cairo_font_weight_t"><span class="type">cairo_font_weight_t</span></a> (Since 1.8)
283
+ </td>
284
+ </tr>
285
+ </tbody>
286
+ </table></div>
287
+ </div>
288
+ <hr>
289
+ <div class="refsect2" lang="en">
290
+ <a name="cairo-status-to-string"></a><h3>cairo_status_to_string ()</h3>
291
+ <pre class="programlisting">const char* cairo_status_to_string (<a class="link" href="cairo-error-status.html#cairo-status-t" title="enum cairo_status_t">cairo_status_t</a> status);</pre>
292
+ <p>
293
+ Provides a human-readable description of a <a class="link" href="cairo-error-status.html#cairo-status-t" title="enum cairo_status_t"><span class="type">cairo_status_t</span></a>.</p>
294
+ <p>
295
+
296
+ </p>
297
+ <div class="variablelist"><table border="0">
298
+ <col align="left" valign="top">
299
+ <tbody>
300
+ <tr>
301
+ <td><p><span class="term"><em class="parameter"><code>status</code></em> :</span></p></td>
302
+ <td> a cairo status
303
+ </td>
304
+ </tr>
305
+ <tr>
306
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
307
+ <td> a string representation of the status
308
+ </td>
309
+ </tr>
310
+ </tbody>
311
+ </table></div>
312
+ </div>
313
+ <hr>
314
+ <div class="refsect2" lang="en">
315
+ <a name="cairo-debug-reset-static-data"></a><h3>cairo_debug_reset_static_data ()</h3>
316
+ <pre class="programlisting">void cairo_debug_reset_static_data (void);</pre>
317
+ <p>
318
+ Resets all static data within cairo to its original state,
319
+ (ie. identical to the state at the time of program invocation). For
320
+ example, all caches within cairo will be flushed empty.
321
+ </p>
322
+ <p>
323
+ This function is intended to be useful when using memory-checking
324
+ tools such as valgrind. When valgrind's memcheck analyzes a
325
+ cairo-using program without a call to <a class="link" href="cairo-error-status.html#cairo-debug-reset-static-data" title="cairo_debug_reset_static_data ()"><code class="function">cairo_debug_reset_static_data()</code></a>,
326
+ it will report all data reachable via cairo's static objects as
327
+ "still reachable". Calling <a class="link" href="cairo-error-status.html#cairo-debug-reset-static-data" title="cairo_debug_reset_static_data ()"><code class="function">cairo_debug_reset_static_data()</code></a> just prior
328
+ to program termination will make it easier to get squeaky clean
329
+ reports from valgrind.
330
+ </p>
331
+ <p>
332
+ WARNING: It is only safe to call this function when there are no
333
+ active cairo objects remaining, (ie. the appropriate destroy
334
+ functions have been called as necessary). If there are active cairo
335
+ objects, this call is likely to cause a crash, (eg. an assertion
336
+ failure due to a hash table being destroyed when non-empty).</p>
337
+ <p>
338
+
339
+ </p>
340
+ </div>
341
+ </div>
342
+ <div class="refsect1" lang="en">
343
+ <a name="cairo-error-status.see-also"></a><h2>See Also</h2>
344
+ <p>
345
+ </p>
346
+ <div class="itemizedlist"><ul type="disc">
347
+ <li><a class="link" href="cairo-context.html#cairo-status" title="cairo_status ()"><code class="function">cairo_status()</code></a></li>
348
+ <li><a class="link" href="cairo-surface.html#cairo-surface-status" title="cairo_surface_status ()"><code class="function">cairo_surface_status()</code></a></li>
349
+ <li><a class="link" href="cairo-pattern.html#cairo-pattern-status" title="cairo_pattern_status ()"><code class="function">cairo_pattern_status()</code></a></li>
350
+ <li><a class="link" href="cairo-font-face.html#cairo-font-face-status" title="cairo_font_face_status ()"><code class="function">cairo_font_face_status()</code></a></li>
351
+ <li><a class="link" href="cairo-scaled-font.html#cairo-scaled-font-status" title="cairo_scaled_font_status ()"><code class="function">cairo_scaled_font_status()</code></a></li>
352
+ </ul></div>
353
+ <p>
354
+ </p>
355
+ </div>
356
+ </div>
357
+ <div class="footer">
358
+ <hr>
359
+ Generated by GTK-Doc V1.10</div>
360
+ </body>
361
+ </html>
@@ -0,0 +1,418 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2
+ <html>
3
+ <head>
4
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
5
+ <title>cairo_font_face_t</title>
6
+ <meta name="generator" content="DocBook XSL Stylesheets V1.73.2">
7
+ <link rel="start" href="index.html" title="Cairo: A Vector Graphics Library">
8
+ <link rel="up" href="cairo-fonts.html" title="Fonts">
9
+ <link rel="prev" href="cairo-fonts.html" title="Fonts">
10
+ <link rel="next" href="cairo-scaled-font.html" title="cairo_scaled_font_t">
11
+ <meta name="generator" content="GTK-Doc V1.10 (XML mode)">
12
+ <link rel="stylesheet" href="style.css" type="text/css">
13
+ <link rel="chapter" href="cairo-drawing.html" title="Drawing">
14
+ <link rel="chapter" href="cairo-fonts.html" title="Fonts">
15
+ <link rel="chapter" href="cairo-surfaces.html" title="Surfaces">
16
+ <link rel="chapter" href="cairo-support.html" title="Utilities">
17
+ <link rel="index" href="index-all.html" title="Index">
18
+ <link rel="index" href="index-1.2.html" title="Index of new symbols in 1.2">
19
+ <link rel="index" href="index-1.4.html" title="Index of new symbols in 1.4">
20
+ <link rel="index" href="index-1.6.html" title="Index of new symbols in 1.6">
21
+ <link rel="index" href="index-1.8.html" title="Index of new symbols in 1.8">
22
+ <link rel="appendix" href="language-bindings.html" title="Appendix A. Creating a language binding for cairo">
23
+ </head>
24
+ <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
25
+ <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
26
+ <tr valign="middle">
27
+ <td><a accesskey="p" href="cairo-fonts.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
28
+ <td><a accesskey="u" href="cairo-fonts.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
29
+ <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
30
+ <th width="100%" align="center">Cairo: A Vector Graphics Library</th>
31
+ <td><a accesskey="n" href="cairo-scaled-font.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
32
+ </tr>
33
+ <tr><td colspan="5" class="shortcuts"><nobr><a href="#cairo-font-face.synopsis" class="shortcut">Top</a>
34
+  | 
35
+ <a href="#cairo-font-face.description" class="shortcut">Description</a></nobr></td></tr>
36
+ </table>
37
+ <div class="refentry" lang="en">
38
+ <a name="cairo-font-face"></a><div class="titlepage"></div>
39
+ <div class="refnamediv"><table width="100%"><tr>
40
+ <td valign="top">
41
+ <h2><span class="refentrytitle"><a name="cairo-font-face.top_of_page"></a>cairo_font_face_t</span></h2>
42
+ <p>cairo_font_face_t — Base class for font faces</p>
43
+ </td>
44
+ <td valign="top" align="right"></td>
45
+ </tr></table></div>
46
+ <div class="refsynopsisdiv">
47
+ <a name="cairo-font-face.synopsis"></a><h2>Synopsis</h2>
48
+ <pre class="synopsis">
49
+ typedef <a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t">cairo_font_face_t</a>;
50
+ <a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t">cairo_font_face_t</a>* <a class="link" href="cairo-font-face.html#cairo-font-face-reference" title="cairo_font_face_reference ()">cairo_font_face_reference</a> (<a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t">cairo_font_face_t</a> *font_face);
51
+ void <a class="link" href="cairo-font-face.html#cairo-font-face-destroy" title="cairo_font_face_destroy ()">cairo_font_face_destroy</a> (<a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t">cairo_font_face_t</a> *font_face);
52
+ <a class="link" href="cairo-error-status.html#cairo-status-t" title="enum cairo_status_t">cairo_status_t</a> <a class="link" href="cairo-font-face.html#cairo-font-face-status" title="cairo_font_face_status ()">cairo_font_face_status</a> (<a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t">cairo_font_face_t</a> *font_face);
53
+ enum <a class="link" href="cairo-font-face.html#cairo-font-type-t" title="enum cairo_font_type_t">cairo_font_type_t</a>;
54
+ <a class="link" href="cairo-font-face.html#cairo-font-type-t" title="enum cairo_font_type_t">cairo_font_type_t</a> <a class="link" href="cairo-font-face.html#cairo-font-face-get-type" title="cairo_font_face_get_type ()">cairo_font_face_get_type</a> (<a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t">cairo_font_face_t</a> *font_face);
55
+ unsigned int <a class="link" href="cairo-font-face.html#cairo-font-face-get-reference-count" title="cairo_font_face_get_reference_count ()">cairo_font_face_get_reference_count</a> (<a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t">cairo_font_face_t</a> *font_face);
56
+ <a class="link" href="cairo-error-status.html#cairo-status-t" title="enum cairo_status_t">cairo_status_t</a> <a class="link" href="cairo-font-face.html#cairo-font-face-set-user-data" title="cairo_font_face_set_user_data ()">cairo_font_face_set_user_data</a> (<a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t">cairo_font_face_t</a> *font_face,
57
+ const <a class="link" href="cairo-types.html#cairo-user-data-key-t" title="cairo_user_data_key_t">cairo_user_data_key_t</a> *key,
58
+ void *user_data,
59
+ <a class="link" href="cairo-types.html#cairo-destroy-func-t" title="cairo_destroy_func_t ()">cairo_destroy_func_t</a> destroy);
60
+ void* <a class="link" href="cairo-font-face.html#cairo-font-face-get-user-data" title="cairo_font_face_get_user_data ()">cairo_font_face_get_user_data</a> (<a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t">cairo_font_face_t</a> *font_face,
61
+ const <a class="link" href="cairo-types.html#cairo-user-data-key-t" title="cairo_user_data_key_t">cairo_user_data_key_t</a> *key);
62
+ </pre>
63
+ </div>
64
+ <div class="refsect1" lang="en">
65
+ <a name="cairo-font-face.description"></a><h2>Description</h2>
66
+ <p>
67
+ <a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t"><span class="type">cairo_font_face_t</span></a> represents a particular font at a particular weight,
68
+ slant, and other characteristic but no size, transformation, or size.
69
+ </p>
70
+ <p>
71
+ Font faces are created using <em class="firstterm">font-backend</em>-specific
72
+ constructors, typically of the form
73
+ cairo_<span class="emphasis"><em>backend</em></span><code class="function">_font_face_create()</code>,
74
+ or implicitly using the <em class="firstterm">toy</em> text API by way of
75
+ <a class="link" href="cairo-text.html#cairo-select-font-face" title="cairo_select_font_face ()"><code class="function">cairo_select_font_face()</code></a>. The resulting face can be accessed using
76
+ <a class="link" href="cairo-text.html#cairo-get-font-face" title="cairo_get_font_face ()"><code class="function">cairo_get_font_face()</code></a>.
77
+ </p>
78
+ </div>
79
+ <div class="refsect1" lang="en">
80
+ <a name="cairo-font-face.details"></a><h2>Details</h2>
81
+ <div class="refsect2" lang="en">
82
+ <a name="cairo-font-face-t"></a><h3>cairo_font_face_t</h3>
83
+ <pre class="programlisting">typedef struct _cairo_font_face cairo_font_face_t;
84
+ </pre>
85
+ <p>
86
+ A <a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t"><span class="type">cairo_font_face_t</span></a> specifies all aspects of a font other
87
+ than the size or font matrix (a font matrix is used to distort
88
+ a font by sheering it or scaling it unequally in the two
89
+ directions) . A font face can be set on a <a class="link" href="cairo-context.html#cairo-t" title="cairo_t"><span class="type">cairo_t</span></a> by using
90
+ <a class="link" href="cairo-text.html#cairo-set-font-face" title="cairo_set_font_face ()"><code class="function">cairo_set_font_face()</code></a>; the size and font matrix are set with
91
+ <a class="link" href="cairo-text.html#cairo-set-font-size" title="cairo_set_font_size ()"><code class="function">cairo_set_font_size()</code></a> and <a class="link" href="cairo-text.html#cairo-set-font-matrix" title="cairo_set_font_matrix ()"><code class="function">cairo_set_font_matrix()</code></a>.
92
+ </p>
93
+ <p>
94
+ There are various types of font faces, depending on the
95
+ <em class="firstterm">font backend</em> they use. The type of a
96
+ font face can be queried using <a class="link" href="cairo-font-face.html#cairo-font-face-get-type" title="cairo_font_face_get_type ()"><code class="function">cairo_font_face_get_type()</code></a>.
97
+ </p>
98
+ <p>
99
+ Memory management of <a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t"><span class="type">cairo_font_face_t</span></a> is done with
100
+ <a class="link" href="cairo-font-face.html#cairo-font-face-reference" title="cairo_font_face_reference ()"><code class="function">cairo_font_face_reference()</code></a> and <a class="link" href="cairo-font-face.html#cairo-font-face-destroy" title="cairo_font_face_destroy ()"><code class="function">cairo_font_face_destroy()</code></a>.</p>
101
+ <p>
102
+
103
+ </p>
104
+ </div>
105
+ <hr>
106
+ <div class="refsect2" lang="en">
107
+ <a name="cairo-font-face-reference"></a><h3>cairo_font_face_reference ()</h3>
108
+ <pre class="programlisting"><a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t">cairo_font_face_t</a>* cairo_font_face_reference (<a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t">cairo_font_face_t</a> *font_face);</pre>
109
+ <p>
110
+ Increases the reference count on <em class="parameter"><code>font_face</code></em> by one. This prevents
111
+ <em class="parameter"><code>font_face</code></em> from being destroyed until a matching call to
112
+ <a class="link" href="cairo-font-face.html#cairo-font-face-destroy" title="cairo_font_face_destroy ()"><code class="function">cairo_font_face_destroy()</code></a> is made.
113
+ </p>
114
+ <p>
115
+ The number of references to a <a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t"><span class="type">cairo_font_face_t</span></a> can be get using
116
+ <a class="link" href="cairo-font-face.html#cairo-font-face-get-reference-count" title="cairo_font_face_get_reference_count ()"><code class="function">cairo_font_face_get_reference_count()</code></a>.</p>
117
+ <p>
118
+
119
+ </p>
120
+ <div class="variablelist"><table border="0">
121
+ <col align="left" valign="top">
122
+ <tbody>
123
+ <tr>
124
+ <td><p><span class="term"><em class="parameter"><code>font_face</code></em> :</span></p></td>
125
+ <td> a <a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t"><span class="type">cairo_font_face_t</span></a>, (may be <code class="literal">NULL</code> in which case this
126
+ function does nothing).
127
+ </td>
128
+ </tr>
129
+ <tr>
130
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
131
+ <td> the referenced <a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t"><span class="type">cairo_font_face_t</span></a>.
132
+ </td>
133
+ </tr>
134
+ </tbody>
135
+ </table></div>
136
+ </div>
137
+ <hr>
138
+ <div class="refsect2" lang="en">
139
+ <a name="cairo-font-face-destroy"></a><h3>cairo_font_face_destroy ()</h3>
140
+ <pre class="programlisting">void cairo_font_face_destroy (<a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t">cairo_font_face_t</a> *font_face);</pre>
141
+ <p>
142
+ Decreases the reference count on <em class="parameter"><code>font_face</code></em> by one. If the result
143
+ is zero, then <em class="parameter"><code>font_face</code></em> and all associated resources are freed.
144
+ See <a class="link" href="cairo-font-face.html#cairo-font-face-reference" title="cairo_font_face_reference ()"><code class="function">cairo_font_face_reference()</code></a>.</p>
145
+ <p>
146
+
147
+ </p>
148
+ <div class="variablelist"><table border="0">
149
+ <col align="left" valign="top">
150
+ <tbody><tr>
151
+ <td><p><span class="term"><em class="parameter"><code>font_face</code></em> :</span></p></td>
152
+ <td> a <a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t"><span class="type">cairo_font_face_t</span></a>
153
+ </td>
154
+ </tr></tbody>
155
+ </table></div>
156
+ </div>
157
+ <hr>
158
+ <div class="refsect2" lang="en">
159
+ <a name="cairo-font-face-status"></a><h3>cairo_font_face_status ()</h3>
160
+ <pre class="programlisting"><a class="link" href="cairo-error-status.html#cairo-status-t" title="enum cairo_status_t">cairo_status_t</a> cairo_font_face_status (<a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t">cairo_font_face_t</a> *font_face);</pre>
161
+ <p>
162
+ Checks whether an error has previously occurred for this
163
+ font face</p>
164
+ <p>
165
+
166
+ </p>
167
+ <div class="variablelist"><table border="0">
168
+ <col align="left" valign="top">
169
+ <tbody>
170
+ <tr>
171
+ <td><p><span class="term"><em class="parameter"><code>font_face</code></em> :</span></p></td>
172
+ <td> a <a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t"><span class="type">cairo_font_face_t</span></a>
173
+ </td>
174
+ </tr>
175
+ <tr>
176
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
177
+ <td> <a class="link" href="cairo-error-status.html#CAIRO-STATUS-SUCCESS:CAPS"><code class="literal">CAIRO_STATUS_SUCCESS</code></a> or another error such as
178
+ <a class="link" href="cairo-error-status.html#CAIRO-STATUS-NO-MEMORY:CAPS"><code class="literal">CAIRO_STATUS_NO_MEMORY</code></a>.
179
+ </td>
180
+ </tr>
181
+ </tbody>
182
+ </table></div>
183
+ </div>
184
+ <hr>
185
+ <div class="refsect2" lang="en">
186
+ <a name="cairo-font-type-t"></a><h3>enum cairo_font_type_t</h3>
187
+ <pre class="programlisting">typedef enum _cairo_font_type {
188
+ CAIRO_FONT_TYPE_TOY,
189
+ CAIRO_FONT_TYPE_FT,
190
+ CAIRO_FONT_TYPE_WIN32,
191
+ CAIRO_FONT_TYPE_QUARTZ,
192
+ CAIRO_FONT_TYPE_USER
193
+ } cairo_font_type_t;
194
+ </pre>
195
+ <p>
196
+ <a class="link" href="cairo-font-face.html#cairo-font-type-t" title="enum cairo_font_type_t"><span class="type">cairo_font_type_t</span></a> is used to describe the type of a given font
197
+ face or scaled font. The font types are also known as "font
198
+ backends" within cairo.
199
+ </p>
200
+ <p>
201
+ The type of a font face is determined by the function used to
202
+ create it, which will generally be of the form
203
+ cairo_<span class="emphasis"><em>type</em></span><code class="function">_font_face_create()</code>. The font face type can be queried
204
+ with <a class="link" href="cairo-font-face.html#cairo-font-face-get-type" title="cairo_font_face_get_type ()"><code class="function">cairo_font_face_get_type()</code></a>
205
+ </p>
206
+ <p>
207
+ The various <a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t"><span class="type">cairo_font_face_t</span></a> functions can be used with a font face
208
+ of any type.
209
+ </p>
210
+ <p>
211
+ The type of a scaled font is determined by the type of the font
212
+ face passed to <a class="link" href="cairo-scaled-font.html#cairo-scaled-font-create" title="cairo_scaled_font_create ()"><code class="function">cairo_scaled_font_create()</code></a>. The scaled font type can
213
+ be queried with <a class="link" href="cairo-scaled-font.html#cairo-scaled-font-get-type" title="cairo_scaled_font_get_type ()"><code class="function">cairo_scaled_font_get_type()</code></a>
214
+ </p>
215
+ <p>
216
+ The various <a class="link" href="cairo-scaled-font.html#cairo-scaled-font-t" title="cairo_scaled_font_t"><span class="type">cairo_scaled_font_t</span></a> functions can be used with scaled
217
+ fonts of any type, but some font backends also provide
218
+ type-specific functions that must only be called with a scaled font
219
+ of the appropriate type. These functions have names that begin with
220
+ cairo_<span class="emphasis"><em>type</em></span><code class="function">_scaled_font()</code> such as <a class="link" href="cairo-ft-font.html#cairo-ft-scaled-font-lock-face" title="cairo_ft_scaled_font_lock_face ()"><code class="function">cairo_ft_scaled_font_lock_face()</code></a>.
221
+ </p>
222
+ <p>
223
+ The behavior of calling a type-specific function with a scaled font
224
+ of the wrong type is undefined.
225
+ </p>
226
+ <p>
227
+ New entries may be added in future versions.</p>
228
+ <p>
229
+
230
+ </p>
231
+ <div class="variablelist"><table border="0">
232
+ <col align="left" valign="top">
233
+ <tbody>
234
+ <tr>
235
+ <td><p><a name="CAIRO-FONT-TYPE-TOY:CAPS"></a><span class="term"><code class="literal">CAIRO_FONT_TYPE_TOY</code></span></p></td>
236
+ <td> The font was created using cairo's toy font api
237
+ </td>
238
+ </tr>
239
+ <tr>
240
+ <td><p><a name="CAIRO-FONT-TYPE-FT:CAPS"></a><span class="term"><code class="literal">CAIRO_FONT_TYPE_FT</code></span></p></td>
241
+ <td> The font is of type FreeType
242
+ </td>
243
+ </tr>
244
+ <tr>
245
+ <td><p><a name="CAIRO-FONT-TYPE-WIN32:CAPS"></a><span class="term"><code class="literal">CAIRO_FONT_TYPE_WIN32</code></span></p></td>
246
+ <td> The font is of type Win32
247
+ </td>
248
+ </tr>
249
+ <tr>
250
+ <td><p><a name="CAIRO-FONT-TYPE-QUARTZ:CAPS"></a><span class="term"><code class="literal">CAIRO_FONT_TYPE_QUARTZ</code></span></p></td>
251
+ <td> The font is of type Quartz (Since: 1.6)
252
+ </td>
253
+ </tr>
254
+ <tr>
255
+ <td><p><a name="CAIRO-FONT-TYPE-USER:CAPS"></a><span class="term"><code class="literal">CAIRO_FONT_TYPE_USER</code></span></p></td>
256
+ <td> The font was create using cairo's user font api (Since: 1.8)
257
+ </td>
258
+ </tr>
259
+ </tbody>
260
+ </table></div>
261
+ <p class="since">Since 1.2
262
+ </p>
263
+ </div>
264
+ <hr>
265
+ <div class="refsect2" lang="en">
266
+ <a name="cairo-font-face-get-type"></a><h3>cairo_font_face_get_type ()</h3>
267
+ <pre class="programlisting"><a class="link" href="cairo-font-face.html#cairo-font-type-t" title="enum cairo_font_type_t">cairo_font_type_t</a> cairo_font_face_get_type (<a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t">cairo_font_face_t</a> *font_face);</pre>
268
+ <p>
269
+ This function returns the type of the backend used to create
270
+ a font face. See <a class="link" href="cairo-font-face.html#cairo-font-type-t" title="enum cairo_font_type_t"><span class="type">cairo_font_type_t</span></a> for available types.</p>
271
+ <p>
272
+
273
+ </p>
274
+ <div class="variablelist"><table border="0">
275
+ <col align="left" valign="top">
276
+ <tbody>
277
+ <tr>
278
+ <td><p><span class="term"><em class="parameter"><code>font_face</code></em> :</span></p></td>
279
+ <td> a font face
280
+ </td>
281
+ </tr>
282
+ <tr>
283
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
284
+ <td> The type of <em class="parameter"><code>font_face</code></em>.
285
+
286
+ </td>
287
+ </tr>
288
+ </tbody>
289
+ </table></div>
290
+ <p class="since">Since 1.2
291
+ </p>
292
+ </div>
293
+ <hr>
294
+ <div class="refsect2" lang="en">
295
+ <a name="cairo-font-face-get-reference-count"></a><h3>cairo_font_face_get_reference_count ()</h3>
296
+ <pre class="programlisting">unsigned int cairo_font_face_get_reference_count (<a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t">cairo_font_face_t</a> *font_face);</pre>
297
+ <p>
298
+ Returns the current reference count of <em class="parameter"><code>font_face</code></em>.</p>
299
+ <p>
300
+
301
+ </p>
302
+ <div class="variablelist"><table border="0">
303
+ <col align="left" valign="top">
304
+ <tbody>
305
+ <tr>
306
+ <td><p><span class="term"><em class="parameter"><code>font_face</code></em> :</span></p></td>
307
+ <td> a <a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t"><span class="type">cairo_font_face_t</span></a>
308
+ </td>
309
+ </tr>
310
+ <tr>
311
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
312
+ <td> the current reference count of <em class="parameter"><code>font_face</code></em>. If the
313
+ object is a nil object, 0 will be returned.
314
+
315
+ </td>
316
+ </tr>
317
+ </tbody>
318
+ </table></div>
319
+ <p class="since">Since 1.4
320
+ </p>
321
+ </div>
322
+ <hr>
323
+ <div class="refsect2" lang="en">
324
+ <a name="cairo-font-face-set-user-data"></a><h3>cairo_font_face_set_user_data ()</h3>
325
+ <pre class="programlisting"><a class="link" href="cairo-error-status.html#cairo-status-t" title="enum cairo_status_t">cairo_status_t</a> cairo_font_face_set_user_data (<a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t">cairo_font_face_t</a> *font_face,
326
+ const <a class="link" href="cairo-types.html#cairo-user-data-key-t" title="cairo_user_data_key_t">cairo_user_data_key_t</a> *key,
327
+ void *user_data,
328
+ <a class="link" href="cairo-types.html#cairo-destroy-func-t" title="cairo_destroy_func_t ()">cairo_destroy_func_t</a> destroy);</pre>
329
+ <p>
330
+ Attach user data to <em class="parameter"><code>font_face</code></em>. To remove user data from a font face,
331
+ call this function with the key that was used to set it and <code class="literal">NULL</code>
332
+ for <em class="parameter"><code>data</code></em>.</p>
333
+ <p>
334
+
335
+ </p>
336
+ <div class="variablelist"><table border="0">
337
+ <col align="left" valign="top">
338
+ <tbody>
339
+ <tr>
340
+ <td><p><span class="term"><em class="parameter"><code>font_face</code></em> :</span></p></td>
341
+ <td> a <a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t"><span class="type">cairo_font_face_t</span></a>
342
+ </td>
343
+ </tr>
344
+ <tr>
345
+ <td><p><span class="term"><em class="parameter"><code>key</code></em> :</span></p></td>
346
+ <td> the address of a <a class="link" href="cairo-types.html#cairo-user-data-key-t" title="cairo_user_data_key_t"><span class="type">cairo_user_data_key_t</span></a> to attach the user data to
347
+ </td>
348
+ </tr>
349
+ <tr>
350
+ <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
351
+ <td> the user data to attach to the font face
352
+ </td>
353
+ </tr>
354
+ <tr>
355
+ <td><p><span class="term"><em class="parameter"><code>destroy</code></em> :</span></p></td>
356
+ <td> a <a class="link" href="cairo-types.html#cairo-destroy-func-t" title="cairo_destroy_func_t ()"><span class="type">cairo_destroy_func_t</span></a> which will be called when the
357
+ font face is destroyed or when new user data is attached using the
358
+ same key.
359
+ </td>
360
+ </tr>
361
+ <tr>
362
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
363
+ <td> <a class="link" href="cairo-error-status.html#CAIRO-STATUS-SUCCESS:CAPS"><code class="literal">CAIRO_STATUS_SUCCESS</code></a> or <a class="link" href="cairo-error-status.html#CAIRO-STATUS-NO-MEMORY:CAPS"><code class="literal">CAIRO_STATUS_NO_MEMORY</code></a> if a
364
+ slot could not be allocated for the user data.
365
+ </td>
366
+ </tr>
367
+ </tbody>
368
+ </table></div>
369
+ </div>
370
+ <hr>
371
+ <div class="refsect2" lang="en">
372
+ <a name="cairo-font-face-get-user-data"></a><h3>cairo_font_face_get_user_data ()</h3>
373
+ <pre class="programlisting">void* cairo_font_face_get_user_data (<a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t">cairo_font_face_t</a> *font_face,
374
+ const <a class="link" href="cairo-types.html#cairo-user-data-key-t" title="cairo_user_data_key_t">cairo_user_data_key_t</a> *key);</pre>
375
+ <p>
376
+ Return user data previously attached to <em class="parameter"><code>font_face</code></em> using the specified
377
+ key. If no user data has been attached with the given key this
378
+ function returns <code class="literal">NULL</code>.</p>
379
+ <p>
380
+
381
+ </p>
382
+ <div class="variablelist"><table border="0">
383
+ <col align="left" valign="top">
384
+ <tbody>
385
+ <tr>
386
+ <td><p><span class="term"><em class="parameter"><code>font_face</code></em> :</span></p></td>
387
+ <td> a <a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t"><span class="type">cairo_font_face_t</span></a>
388
+ </td>
389
+ </tr>
390
+ <tr>
391
+ <td><p><span class="term"><em class="parameter"><code>key</code></em> :</span></p></td>
392
+ <td> the address of the <a class="link" href="cairo-types.html#cairo-user-data-key-t" title="cairo_user_data_key_t"><span class="type">cairo_user_data_key_t</span></a> the user data was
393
+ attached to
394
+ </td>
395
+ </tr>
396
+ <tr>
397
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
398
+ <td> the user data previously attached or <code class="literal">NULL</code>.
399
+ </td>
400
+ </tr>
401
+ </tbody>
402
+ </table></div>
403
+ </div>
404
+ </div>
405
+ <div class="refsect1" lang="en">
406
+ <a name="cairo-font-face.see-also"></a><h2>See Also</h2>
407
+ <p>
408
+ </p>
409
+ <div class="itemizedlist"><ul type="disc"><li><a class="link" href="cairo-scaled-font.html#cairo-scaled-font-t" title="cairo_scaled_font_t"><span class="type">cairo_scaled_font_t</span></a></li></ul></div>
410
+ <p>
411
+ </p>
412
+ </div>
413
+ </div>
414
+ <div class="footer">
415
+ <hr>
416
+ Generated by GTK-Doc V1.10</div>
417
+ </body>
418
+ </html>