cairo 1.14.0-x64-mingw32

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 (636) hide show
  1. checksums.yaml +7 -0
  2. data/AUTHORS +7 -0
  3. data/COPYING +59 -0
  4. data/GPL +340 -0
  5. data/Gemfile +5 -0
  6. data/NEWS +429 -0
  7. data/README.rdoc +120 -0
  8. data/Rakefile +620 -0
  9. data/ext/cairo/cairo.def +140 -0
  10. data/ext/cairo/depend +3 -0
  11. data/ext/cairo/extconf.rb +202 -0
  12. data/ext/cairo/rb_cairo.c +111 -0
  13. data/ext/cairo/rb_cairo.h +348 -0
  14. data/ext/cairo/rb_cairo_constants.c +673 -0
  15. data/ext/cairo/rb_cairo_context.c +1741 -0
  16. data/ext/cairo/rb_cairo_device.c +475 -0
  17. data/ext/cairo/rb_cairo_exception.c +446 -0
  18. data/ext/cairo/rb_cairo_font_extents.c +200 -0
  19. data/ext/cairo/rb_cairo_font_face.c +726 -0
  20. data/ext/cairo/rb_cairo_font_options.c +197 -0
  21. data/ext/cairo/rb_cairo_glyph.c +161 -0
  22. data/ext/cairo/rb_cairo_io.c +166 -0
  23. data/ext/cairo/rb_cairo_io.h +44 -0
  24. data/ext/cairo/rb_cairo_matrix.c +366 -0
  25. data/ext/cairo/rb_cairo_path.c +459 -0
  26. data/ext/cairo/rb_cairo_pattern.c +1192 -0
  27. data/ext/cairo/rb_cairo_private.c +255 -0
  28. data/ext/cairo/rb_cairo_private.h +129 -0
  29. data/ext/cairo/rb_cairo_rectangle.c +83 -0
  30. data/ext/cairo/rb_cairo_region.c +385 -0
  31. data/ext/cairo/rb_cairo_scaled_font.c +235 -0
  32. data/ext/cairo/rb_cairo_surface.c +2284 -0
  33. data/ext/cairo/rb_cairo_text_cluster.c +151 -0
  34. data/ext/cairo/rb_cairo_text_extents.c +221 -0
  35. data/lib/2.0/cairo.so +0 -0
  36. data/lib/2.1/cairo.so +0 -0
  37. data/lib/2.2/cairo.so +0 -0
  38. data/lib/cairo.rb +154 -0
  39. data/lib/cairo/color.rb +267 -0
  40. data/lib/cairo/colors.rb +656 -0
  41. data/lib/cairo/constants.rb +24 -0
  42. data/lib/cairo/context.rb +29 -0
  43. data/lib/cairo/context/blur.rb +45 -0
  44. data/lib/cairo/context/circle.rb +9 -0
  45. data/lib/cairo/context/color.rb +11 -0
  46. data/lib/cairo/context/path.rb +117 -0
  47. data/lib/cairo/context/rectangle.rb +33 -0
  48. data/lib/cairo/context/triangle.rb +12 -0
  49. data/lib/cairo/device.rb +13 -0
  50. data/lib/cairo/paper.rb +183 -0
  51. data/lib/cairo/papers.rb +65 -0
  52. data/lib/cairo/path.rb +15 -0
  53. data/lib/cairo/pattern.rb +12 -0
  54. data/lib/cairo/point.rb +7 -0
  55. data/lib/cairo/surface.rb +13 -0
  56. data/samples/agg/aa_test.rb +304 -0
  57. data/samples/blur.rb +46 -0
  58. data/samples/pac-nomralize.rb +170 -0
  59. data/samples/pac-tee.rb +170 -0
  60. data/samples/pac.rb +98 -0
  61. data/samples/png.rb +44 -0
  62. data/samples/scalable.rb +55 -0
  63. data/samples/text-on-path.rb +59 -0
  64. data/samples/text2.rb +130 -0
  65. data/test/cairo-test-utils.rb +44 -0
  66. data/test/run-test.rb +29 -0
  67. data/test/test_color.rb +17 -0
  68. data/test/test_constants.rb +27 -0
  69. data/test/test_context.rb +105 -0
  70. data/test/test_exception.rb +36 -0
  71. data/test/test_font_extents.rb +36 -0
  72. data/test/test_font_face.rb +257 -0
  73. data/test/test_font_options.rb +13 -0
  74. data/test/test_image_surface.rb +28 -0
  75. data/test/test_paper.rb +81 -0
  76. data/test/test_quartz_image_surface.rb +13 -0
  77. data/test/test_raster_source_pattern.rb +162 -0
  78. data/test/test_recording_surface.rb +19 -0
  79. data/test/test_region.rb +102 -0
  80. data/test/test_scaled_font.rb +34 -0
  81. data/test/test_script_device.rb +46 -0
  82. data/test/test_script_surface.rb +13 -0
  83. data/test/test_surface.rb +61 -0
  84. data/test/test_tee_surface.rb +32 -0
  85. data/test/test_text_cluster.rb +32 -0
  86. data/test/test_text_extents.rb +40 -0
  87. data/test/test_text_to_glyphs_data.rb +51 -0
  88. data/test/test_xml_device.rb +22 -0
  89. data/test/test_xml_surface.rb +34 -0
  90. data/vendor/local/bin/fc-cache.exe +0 -0
  91. data/vendor/local/bin/fc-cat.exe +0 -0
  92. data/vendor/local/bin/fc-list.exe +0 -0
  93. data/vendor/local/bin/fc-match.exe +0 -0
  94. data/vendor/local/bin/fc-pattern.exe +0 -0
  95. data/vendor/local/bin/fc-query.exe +0 -0
  96. data/vendor/local/bin/fc-scan.exe +0 -0
  97. data/vendor/local/bin/fc-validate.exe +0 -0
  98. data/vendor/local/bin/freetype-config +163 -0
  99. data/vendor/local/bin/libcairo-2.dll +0 -0
  100. data/vendor/local/bin/libcairo-gobject-2.dll +0 -0
  101. data/vendor/local/bin/libcairo-script-interpreter-2.dll +0 -0
  102. data/vendor/local/bin/libfontconfig-1.dll +0 -0
  103. data/vendor/local/bin/libfreetype-6.dll +0 -0
  104. data/vendor/local/bin/libgcc_s_seh-1.dll +0 -0
  105. data/vendor/local/bin/libpixman-1-0.dll +0 -0
  106. data/vendor/local/bin/libpng-config +127 -0
  107. data/vendor/local/bin/libpng16-16.dll +0 -0
  108. data/vendor/local/bin/libpng16-config +127 -0
  109. data/vendor/local/bin/libstdc++-6.dll +0 -0
  110. data/vendor/local/bin/libwinpthread-1.dll +0 -0
  111. data/vendor/local/bin/libxml2-2.dll +0 -0
  112. data/vendor/local/bin/png-fix-itxt.exe +0 -0
  113. data/vendor/local/bin/pngfix.exe +0 -0
  114. data/vendor/local/bin/xml2-config +106 -0
  115. data/vendor/local/bin/xmlcatalog.exe +0 -0
  116. data/vendor/local/bin/xmllint.exe +0 -0
  117. data/vendor/local/bin/zlib1.dll +0 -0
  118. data/vendor/local/etc/fonts/conf.d/10-scale-bitmap-fonts.conf +81 -0
  119. data/vendor/local/etc/fonts/conf.d/20-unhint-small-vera.conf +48 -0
  120. data/vendor/local/etc/fonts/conf.d/30-metric-aliases.conf +546 -0
  121. data/vendor/local/etc/fonts/conf.d/30-urw-aliases.conf +24 -0
  122. data/vendor/local/etc/fonts/conf.d/40-nonlatin.conf +231 -0
  123. data/vendor/local/etc/fonts/conf.d/45-latin.conf +189 -0
  124. data/vendor/local/etc/fonts/conf.d/49-sansserif.conf +21 -0
  125. data/vendor/local/etc/fonts/conf.d/50-user.conf +15 -0
  126. data/vendor/local/etc/fonts/conf.d/51-local.conf +6 -0
  127. data/vendor/local/etc/fonts/conf.d/60-latin.conf +70 -0
  128. data/vendor/local/etc/fonts/conf.d/65-fonts-persian.conf +419 -0
  129. data/vendor/local/etc/fonts/conf.d/65-nonlatin.conf +196 -0
  130. data/vendor/local/etc/fonts/conf.d/69-unifont.conf +28 -0
  131. data/vendor/local/etc/fonts/conf.d/80-delicious.conf +19 -0
  132. data/vendor/local/etc/fonts/conf.d/90-synthetic.conf +64 -0
  133. data/vendor/local/etc/fonts/conf.d/README +23 -0
  134. data/vendor/local/etc/fonts/fonts.conf +155 -0
  135. data/vendor/local/include/cairo/cairo-deprecated.h +123 -0
  136. data/vendor/local/include/cairo/cairo-features.h +31 -0
  137. data/vendor/local/include/cairo/cairo-ft.h +118 -0
  138. data/vendor/local/include/cairo/cairo-gobject.h +192 -0
  139. data/vendor/local/include/cairo/cairo-pdf.h +94 -0
  140. data/vendor/local/include/cairo/cairo-ps.h +116 -0
  141. data/vendor/local/include/cairo/cairo-script-interpreter.h +124 -0
  142. data/vendor/local/include/cairo/cairo-script.h +98 -0
  143. data/vendor/local/include/cairo/cairo-svg.h +84 -0
  144. data/vendor/local/include/cairo/cairo-version.h +8 -0
  145. data/vendor/local/include/cairo/cairo-win32.h +112 -0
  146. data/vendor/local/include/cairo/cairo.h +3153 -0
  147. data/vendor/local/include/fontconfig/fcfreetype.h +59 -0
  148. data/vendor/local/include/fontconfig/fcprivate.h +124 -0
  149. data/vendor/local/include/fontconfig/fontconfig.h +1010 -0
  150. data/vendor/local/include/freetype2/config/ftconfig.h +706 -0
  151. data/vendor/local/include/freetype2/config/ftheader.h +832 -0
  152. data/vendor/local/include/freetype2/config/ftmodule.h +20 -0
  153. data/vendor/local/include/freetype2/config/ftoption.h +846 -0
  154. data/vendor/local/include/freetype2/config/ftstdlib.h +174 -0
  155. data/vendor/local/include/freetype2/freetype.h +4076 -0
  156. data/vendor/local/include/freetype2/ft2build.h +42 -0
  157. data/vendor/local/include/freetype2/ftadvanc.h +182 -0
  158. data/vendor/local/include/freetype2/ftautoh.h +402 -0
  159. data/vendor/local/include/freetype2/ftbbox.h +102 -0
  160. data/vendor/local/include/freetype2/ftbdf.h +210 -0
  161. data/vendor/local/include/freetype2/ftbitmap.h +227 -0
  162. data/vendor/local/include/freetype2/ftbzip2.h +102 -0
  163. data/vendor/local/include/freetype2/ftcache.h +1057 -0
  164. data/vendor/local/include/freetype2/ftcffdrv.h +254 -0
  165. data/vendor/local/include/freetype2/ftchapters.h +121 -0
  166. data/vendor/local/include/freetype2/ftcid.h +166 -0
  167. data/vendor/local/include/freetype2/fterrdef.h +249 -0
  168. data/vendor/local/include/freetype2/fterrors.h +198 -0
  169. data/vendor/local/include/freetype2/ftgasp.h +128 -0
  170. data/vendor/local/include/freetype2/ftglyph.h +620 -0
  171. data/vendor/local/include/freetype2/ftgxval.h +358 -0
  172. data/vendor/local/include/freetype2/ftgzip.h +149 -0
  173. data/vendor/local/include/freetype2/ftimage.h +1322 -0
  174. data/vendor/local/include/freetype2/ftincrem.h +353 -0
  175. data/vendor/local/include/freetype2/ftlcdfil.h +251 -0
  176. data/vendor/local/include/freetype2/ftlist.h +277 -0
  177. data/vendor/local/include/freetype2/ftlzw.h +99 -0
  178. data/vendor/local/include/freetype2/ftmac.h +274 -0
  179. data/vendor/local/include/freetype2/ftmm.h +377 -0
  180. data/vendor/local/include/freetype2/ftmodapi.h +641 -0
  181. data/vendor/local/include/freetype2/ftmoderr.h +194 -0
  182. data/vendor/local/include/freetype2/ftotval.h +203 -0
  183. data/vendor/local/include/freetype2/ftoutln.h +572 -0
  184. data/vendor/local/include/freetype2/ftpfr.h +172 -0
  185. data/vendor/local/include/freetype2/ftrender.h +238 -0
  186. data/vendor/local/include/freetype2/ftsizes.h +159 -0
  187. data/vendor/local/include/freetype2/ftsnames.h +200 -0
  188. data/vendor/local/include/freetype2/ftstroke.h +751 -0
  189. data/vendor/local/include/freetype2/ftsynth.h +81 -0
  190. data/vendor/local/include/freetype2/ftsystem.h +347 -0
  191. data/vendor/local/include/freetype2/fttrigon.h +350 -0
  192. data/vendor/local/include/freetype2/ftttdrv.h +170 -0
  193. data/vendor/local/include/freetype2/fttypes.h +598 -0
  194. data/vendor/local/include/freetype2/ftwinfnt.h +275 -0
  195. data/vendor/local/include/freetype2/ftxf86.h +83 -0
  196. data/vendor/local/include/freetype2/t1tables.h +662 -0
  197. data/vendor/local/include/freetype2/ttnameid.h +1237 -0
  198. data/vendor/local/include/freetype2/tttables.h +787 -0
  199. data/vendor/local/include/freetype2/tttags.h +111 -0
  200. data/vendor/local/include/freetype2/ttunpat.h +59 -0
  201. data/vendor/local/include/libpng16/png.h +3276 -0
  202. data/vendor/local/include/libpng16/pngconf.h +644 -0
  203. data/vendor/local/include/libpng16/pnglibconf.h +208 -0
  204. data/vendor/local/include/libxml2/libxml/DOCBparser.h +96 -0
  205. data/vendor/local/include/libxml2/libxml/HTMLparser.h +306 -0
  206. data/vendor/local/include/libxml2/libxml/HTMLtree.h +147 -0
  207. data/vendor/local/include/libxml2/libxml/SAX.h +173 -0
  208. data/vendor/local/include/libxml2/libxml/SAX2.h +178 -0
  209. data/vendor/local/include/libxml2/libxml/c14n.h +126 -0
  210. data/vendor/local/include/libxml2/libxml/catalog.h +182 -0
  211. data/vendor/local/include/libxml2/libxml/chvalid.h +230 -0
  212. data/vendor/local/include/libxml2/libxml/debugXML.h +217 -0
  213. data/vendor/local/include/libxml2/libxml/dict.h +80 -0
  214. data/vendor/local/include/libxml2/libxml/encoding.h +240 -0
  215. data/vendor/local/include/libxml2/libxml/entities.h +151 -0
  216. data/vendor/local/include/libxml2/libxml/globals.h +509 -0
  217. data/vendor/local/include/libxml2/libxml/hash.h +233 -0
  218. data/vendor/local/include/libxml2/libxml/list.h +137 -0
  219. data/vendor/local/include/libxml2/libxml/nanoftp.h +163 -0
  220. data/vendor/local/include/libxml2/libxml/nanohttp.h +81 -0
  221. data/vendor/local/include/libxml2/libxml/parser.h +1241 -0
  222. data/vendor/local/include/libxml2/libxml/parserInternals.h +644 -0
  223. data/vendor/local/include/libxml2/libxml/pattern.h +100 -0
  224. data/vendor/local/include/libxml2/libxml/relaxng.h +217 -0
  225. data/vendor/local/include/libxml2/libxml/schemasInternals.h +958 -0
  226. data/vendor/local/include/libxml2/libxml/schematron.h +142 -0
  227. data/vendor/local/include/libxml2/libxml/threads.h +84 -0
  228. data/vendor/local/include/libxml2/libxml/tree.h +1310 -0
  229. data/vendor/local/include/libxml2/libxml/uri.h +94 -0
  230. data/vendor/local/include/libxml2/libxml/valid.h +458 -0
  231. data/vendor/local/include/libxml2/libxml/xinclude.h +129 -0
  232. data/vendor/local/include/libxml2/libxml/xlink.h +189 -0
  233. data/vendor/local/include/libxml2/libxml/xmlIO.h +366 -0
  234. data/vendor/local/include/libxml2/libxml/xmlautomata.h +146 -0
  235. data/vendor/local/include/libxml2/libxml/xmlerror.h +945 -0
  236. data/vendor/local/include/libxml2/libxml/xmlexports.h +162 -0
  237. data/vendor/local/include/libxml2/libxml/xmlmemory.h +224 -0
  238. data/vendor/local/include/libxml2/libxml/xmlmodule.h +57 -0
  239. data/vendor/local/include/libxml2/libxml/xmlreader.h +428 -0
  240. data/vendor/local/include/libxml2/libxml/xmlregexp.h +222 -0
  241. data/vendor/local/include/libxml2/libxml/xmlsave.h +88 -0
  242. data/vendor/local/include/libxml2/libxml/xmlschemas.h +246 -0
  243. data/vendor/local/include/libxml2/libxml/xmlschemastypes.h +151 -0
  244. data/vendor/local/include/libxml2/libxml/xmlstring.h +140 -0
  245. data/vendor/local/include/libxml2/libxml/xmlunicode.h +202 -0
  246. data/vendor/local/include/libxml2/libxml/xmlversion.h +489 -0
  247. data/vendor/local/include/libxml2/libxml/xmlwriter.h +488 -0
  248. data/vendor/local/include/libxml2/libxml/xpath.h +557 -0
  249. data/vendor/local/include/libxml2/libxml/xpathInternals.h +632 -0
  250. data/vendor/local/include/libxml2/libxml/xpointer.h +114 -0
  251. data/vendor/local/include/pixman-1/pixman-version.h +50 -0
  252. data/vendor/local/include/pixman-1/pixman.h +1111 -0
  253. data/vendor/local/include/png.h +3276 -0
  254. data/vendor/local/include/pngconf.h +644 -0
  255. data/vendor/local/include/pnglibconf.h +208 -0
  256. data/vendor/local/include/zconf.h +511 -0
  257. data/vendor/local/include/zlib.h +1768 -0
  258. data/vendor/local/lib/cmake/libxml2/libxml2-config.cmake +50 -0
  259. data/vendor/local/lib/fontconfig.def +207 -0
  260. data/vendor/local/lib/libcairo-gobject.a +0 -0
  261. data/vendor/local/lib/libcairo-gobject.dll.a +0 -0
  262. data/vendor/local/lib/libcairo-gobject.la +41 -0
  263. data/vendor/local/lib/libcairo-script-interpreter.a +0 -0
  264. data/vendor/local/lib/libcairo-script-interpreter.dll.a +0 -0
  265. data/vendor/local/lib/libcairo-script-interpreter.la +41 -0
  266. data/vendor/local/lib/libcairo.a +0 -0
  267. data/vendor/local/lib/libcairo.dll.a +0 -0
  268. data/vendor/local/lib/libcairo.la +41 -0
  269. data/vendor/local/lib/libfontconfig.dll.a +0 -0
  270. data/vendor/local/lib/libfontconfig.la +41 -0
  271. data/vendor/local/lib/libfreetype.a +0 -0
  272. data/vendor/local/lib/libfreetype.dll.a +0 -0
  273. data/vendor/local/lib/libfreetype.la +41 -0
  274. data/vendor/local/lib/libpixman-1.a +0 -0
  275. data/vendor/local/lib/libpixman-1.dll.a +0 -0
  276. data/vendor/local/lib/libpixman-1.la +41 -0
  277. data/vendor/local/lib/libpng.a +0 -0
  278. data/vendor/local/lib/libpng.dll.a +0 -0
  279. data/vendor/local/lib/libpng.la +41 -0
  280. data/vendor/local/lib/libpng16.a +0 -0
  281. data/vendor/local/lib/libpng16.dll.a +0 -0
  282. data/vendor/local/lib/libpng16.la +41 -0
  283. data/vendor/local/lib/libxml2.a +0 -0
  284. data/vendor/local/lib/libxml2.dll.a +0 -0
  285. data/vendor/local/lib/libxml2.la +41 -0
  286. data/vendor/local/lib/libz.a +0 -0
  287. data/vendor/local/lib/libz.dll.a +0 -0
  288. data/vendor/local/lib/pkgconfig/cairo-fc.pc +12 -0
  289. data/vendor/local/lib/pkgconfig/cairo-ft.pc +12 -0
  290. data/vendor/local/lib/pkgconfig/cairo-gobject.pc +12 -0
  291. data/vendor/local/lib/pkgconfig/cairo-pdf.pc +12 -0
  292. data/vendor/local/lib/pkgconfig/cairo-png.pc +12 -0
  293. data/vendor/local/lib/pkgconfig/cairo-ps.pc +12 -0
  294. data/vendor/local/lib/pkgconfig/cairo-script.pc +12 -0
  295. data/vendor/local/lib/pkgconfig/cairo-svg.pc +12 -0
  296. data/vendor/local/lib/pkgconfig/cairo-win32-font.pc +12 -0
  297. data/vendor/local/lib/pkgconfig/cairo-win32.pc +12 -0
  298. data/vendor/local/lib/pkgconfig/cairo.pc +13 -0
  299. data/vendor/local/lib/pkgconfig/fontconfig.pc +18 -0
  300. data/vendor/local/lib/pkgconfig/freetype2.pc +14 -0
  301. data/vendor/local/lib/pkgconfig/libpng.pc +11 -0
  302. data/vendor/local/lib/pkgconfig/libpng16.pc +11 -0
  303. data/vendor/local/lib/pkgconfig/libxml-2.0.pc +13 -0
  304. data/vendor/local/lib/pkgconfig/pixman-1.pc +11 -0
  305. data/vendor/local/lib/pkgconfig/zlib.pc +13 -0
  306. data/vendor/local/lib/xml2Conf.sh +8 -0
  307. data/vendor/local/share/aclocal/freetype2.m4 +194 -0
  308. data/vendor/local/share/aclocal/libxml.m4 +188 -0
  309. data/vendor/local/share/doc/libxml2-2.9.2/Copyright +23 -0
  310. data/vendor/local/share/doc/libxml2-2.9.2/examples/testHTML.c +880 -0
  311. data/vendor/local/share/doc/libxml2-2.9.2/examples/testSAX.c +1198 -0
  312. data/vendor/local/share/doc/libxml2-2.9.2/examples/testXPath.c +229 -0
  313. data/vendor/local/share/doc/libxml2-2.9.2/examples/xmllint.c +3801 -0
  314. data/vendor/local/share/doc/libxml2-2.9.2/html/DOM.gif +0 -0
  315. data/vendor/local/share/doc/libxml2-2.9.2/html/FAQ.html +299 -0
  316. data/vendor/local/share/doc/libxml2-2.9.2/html/Libxml2-Logo-180x168.gif +0 -0
  317. data/vendor/local/share/doc/libxml2-2.9.2/html/Libxml2-Logo-90x34.gif +0 -0
  318. data/vendor/local/share/doc/libxml2-2.9.2/html/encoding.html +217 -0
  319. data/vendor/local/share/doc/libxml2-2.9.2/html/examples.xml +751 -0
  320. data/vendor/local/share/doc/libxml2-2.9.2/html/examples.xsl +174 -0
  321. data/vendor/local/share/doc/libxml2-2.9.2/html/html/book1.html +13 -0
  322. data/vendor/local/share/doc/libxml2-2.9.2/html/html/home.png +0 -0
  323. data/vendor/local/share/doc/libxml2-2.9.2/html/html/index.html +13 -0
  324. data/vendor/local/share/doc/libxml2-2.9.2/html/html/left.png +0 -0
  325. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-DOCBparser.html +51 -0
  326. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-HTMLparser.html +184 -0
  327. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-HTMLtree.html +73 -0
  328. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-SAX.html +125 -0
  329. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-SAX2.html +128 -0
  330. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-c14n.html +38 -0
  331. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-catalog.html +142 -0
  332. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-chvalid.html +72 -0
  333. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-debugXML.html +120 -0
  334. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-dict.html +58 -0
  335. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-encoding.html +124 -0
  336. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-entities.html +79 -0
  337. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-globals.html +152 -0
  338. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-hash.html +116 -0
  339. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-lib.html +13 -0
  340. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-list.html +120 -0
  341. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-nanoftp.html +94 -0
  342. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-nanohttp.html +65 -0
  343. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-parser.html +559 -0
  344. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-parserInternals.html +322 -0
  345. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-pattern.html +76 -0
  346. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-relaxng.html +162 -0
  347. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-schemasInternals.html +373 -0
  348. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-schematron.html +81 -0
  349. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-threads.html +72 -0
  350. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-tree.html +990 -0
  351. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-uri.html +73 -0
  352. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-valid.html +289 -0
  353. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xinclude.html +59 -0
  354. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xlink.html +82 -0
  355. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xmlIO.html +212 -0
  356. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xmlautomata.html +85 -0
  357. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xmlerror.html +865 -0
  358. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xmlexports.html +20 -0
  359. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xmlmemory.html +107 -0
  360. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xmlmodule.html +38 -0
  361. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xmlreader.html +330 -0
  362. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xmlregexp.html +143 -0
  363. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xmlsave.html +60 -0
  364. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xmlschemas.html +185 -0
  365. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xmlschemastypes.html +123 -0
  366. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xmlstring.html +108 -0
  367. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xmlunicode.html +512 -0
  368. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xmlversion.html +63 -0
  369. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xmlwriter.html +261 -0
  370. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xpath.html +316 -0
  371. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xpathInternals.html +394 -0
  372. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xpointer.html +83 -0
  373. data/vendor/local/share/doc/libxml2-2.9.2/html/html/libxml-xzlib.html +16 -0
  374. data/vendor/local/share/doc/libxml2-2.9.2/html/html/right.png +0 -0
  375. data/vendor/local/share/doc/libxml2-2.9.2/html/html/up.png +0 -0
  376. data/vendor/local/share/doc/libxml2-2.9.2/html/index.html +14 -0
  377. data/vendor/local/share/doc/libxml2-2.9.2/html/io1.c +166 -0
  378. data/vendor/local/share/doc/libxml2-2.9.2/html/io1.res +5 -0
  379. data/vendor/local/share/doc/libxml2-2.9.2/html/io2.c +58 -0
  380. data/vendor/local/share/doc/libxml2-2.9.2/html/io2.res +2 -0
  381. data/vendor/local/share/doc/libxml2-2.9.2/html/libxml.gif +0 -0
  382. data/vendor/local/share/doc/libxml2-2.9.2/html/parse1.c +56 -0
  383. data/vendor/local/share/doc/libxml2-2.9.2/html/parse2.c +72 -0
  384. data/vendor/local/share/doc/libxml2-2.9.2/html/parse3.c +60 -0
  385. data/vendor/local/share/doc/libxml2-2.9.2/html/parse4.c +143 -0
  386. data/vendor/local/share/doc/libxml2-2.9.2/html/reader1.c +107 -0
  387. data/vendor/local/share/doc/libxml2-2.9.2/html/reader1.res +14 -0
  388. data/vendor/local/share/doc/libxml2-2.9.2/html/reader2.c +122 -0
  389. data/vendor/local/share/doc/libxml2-2.9.2/html/reader3.c +120 -0
  390. data/vendor/local/share/doc/libxml2-2.9.2/html/reader3.res +13 -0
  391. data/vendor/local/share/doc/libxml2-2.9.2/html/reader4.c +122 -0
  392. data/vendor/local/share/doc/libxml2-2.9.2/html/reader4.res +3 -0
  393. data/vendor/local/share/doc/libxml2-2.9.2/html/redhat.gif +0 -0
  394. data/vendor/local/share/doc/libxml2-2.9.2/html/smallfootonly.gif +0 -0
  395. data/vendor/local/share/doc/libxml2-2.9.2/html/structure.gif +0 -0
  396. data/vendor/local/share/doc/libxml2-2.9.2/html/test1.xml +1 -0
  397. data/vendor/local/share/doc/libxml2-2.9.2/html/test2.xml +13 -0
  398. data/vendor/local/share/doc/libxml2-2.9.2/html/test3.xml +39 -0
  399. data/vendor/local/share/doc/libxml2-2.9.2/html/testWriter.c +1198 -0
  400. data/vendor/local/share/doc/libxml2-2.9.2/html/tree1.c +94 -0
  401. data/vendor/local/share/doc/libxml2-2.9.2/html/tree1.res +4 -0
  402. data/vendor/local/share/doc/libxml2-2.9.2/html/tree2.c +118 -0
  403. data/vendor/local/share/doc/libxml2-2.9.2/html/tree2.res +18 -0
  404. data/vendor/local/share/doc/libxml2-2.9.2/html/tst.xml +7 -0
  405. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/apa.html +8 -0
  406. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/apb.html +14 -0
  407. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/apc.html +82 -0
  408. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/apd.html +76 -0
  409. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/ape.html +78 -0
  410. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/apf.html +67 -0
  411. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/apg.html +75 -0
  412. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/aph.html +76 -0
  413. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/api.html +4 -0
  414. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/ar01s02.html +14 -0
  415. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/ar01s03.html +47 -0
  416. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/ar01s04.html +54 -0
  417. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/ar01s05.html +55 -0
  418. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/ar01s06.html +35 -0
  419. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/ar01s07.html +30 -0
  420. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/ar01s08.html +38 -0
  421. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/ar01s09.html +63 -0
  422. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/blank.png +0 -0
  423. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/callouts/1.png +0 -0
  424. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/callouts/10.png +0 -0
  425. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/callouts/2.png +0 -0
  426. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/callouts/3.png +0 -0
  427. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/callouts/4.png +0 -0
  428. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/callouts/5.png +0 -0
  429. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/callouts/6.png +0 -0
  430. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/callouts/7.png +0 -0
  431. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/callouts/8.png +0 -0
  432. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/callouts/9.png +0 -0
  433. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/caution.png +0 -0
  434. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/draft.png +0 -0
  435. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/home.png +0 -0
  436. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/important.png +0 -0
  437. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/next.png +0 -0
  438. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/note.png +0 -0
  439. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/prev.png +0 -0
  440. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/tip.png +0 -0
  441. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/toc-blank.png +0 -0
  442. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/toc-minus.png +0 -0
  443. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/toc-plus.png +0 -0
  444. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/up.png +0 -0
  445. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/images/warning.png +0 -0
  446. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/includeaddattribute.c +64 -0
  447. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/includeaddkeyword.c +75 -0
  448. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/includeconvert.c +73 -0
  449. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/includegetattribute.c +72 -0
  450. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/includekeyword.c +79 -0
  451. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/includexpath.c +74 -0
  452. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/index.html +14 -0
  453. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/ix01.html +1 -0
  454. data/vendor/local/share/doc/libxml2-2.9.2/html/tutorial/xmltutorial.pdf +1336 -0
  455. data/vendor/local/share/doc/libxml2-2.9.2/html/w3c.png +0 -0
  456. data/vendor/local/share/doc/libxml2-2.9.2/html/writer.xml +2 -0
  457. data/vendor/local/share/doc/libxml2-2.9.2/html/xml.html +5995 -0
  458. data/vendor/local/share/doc/libxml2-2.9.2/html/xpath1.c +250 -0
  459. data/vendor/local/share/doc/libxml2-2.9.2/html/xpath1.res +5 -0
  460. data/vendor/local/share/doc/libxml2-2.9.2/html/xpath2.c +190 -0
  461. data/vendor/local/share/doc/libxml2-2.9.2/html/xpath2.res +30 -0
  462. data/vendor/local/share/fontconfig/conf.avail/10-autohint.conf +14 -0
  463. data/vendor/local/share/fontconfig/conf.avail/10-no-sub-pixel.conf +14 -0
  464. data/vendor/local/share/fontconfig/conf.avail/10-scale-bitmap-fonts.conf +81 -0
  465. data/vendor/local/share/fontconfig/conf.avail/10-sub-pixel-bgr.conf +14 -0
  466. data/vendor/local/share/fontconfig/conf.avail/10-sub-pixel-rgb.conf +14 -0
  467. data/vendor/local/share/fontconfig/conf.avail/10-sub-pixel-vbgr.conf +14 -0
  468. data/vendor/local/share/fontconfig/conf.avail/10-sub-pixel-vrgb.conf +14 -0
  469. data/vendor/local/share/fontconfig/conf.avail/10-unhinted.conf +14 -0
  470. data/vendor/local/share/fontconfig/conf.avail/11-lcdfilter-default.conf +16 -0
  471. data/vendor/local/share/fontconfig/conf.avail/11-lcdfilter-legacy.conf +16 -0
  472. data/vendor/local/share/fontconfig/conf.avail/11-lcdfilter-light.conf +16 -0
  473. data/vendor/local/share/fontconfig/conf.avail/20-unhint-small-vera.conf +48 -0
  474. data/vendor/local/share/fontconfig/conf.avail/25-unhint-nonlatin.conf +128 -0
  475. data/vendor/local/share/fontconfig/conf.avail/30-metric-aliases.conf +546 -0
  476. data/vendor/local/share/fontconfig/conf.avail/30-urw-aliases.conf +24 -0
  477. data/vendor/local/share/fontconfig/conf.avail/40-nonlatin.conf +231 -0
  478. data/vendor/local/share/fontconfig/conf.avail/45-latin.conf +189 -0
  479. data/vendor/local/share/fontconfig/conf.avail/49-sansserif.conf +21 -0
  480. data/vendor/local/share/fontconfig/conf.avail/50-user.conf +15 -0
  481. data/vendor/local/share/fontconfig/conf.avail/51-local.conf +6 -0
  482. data/vendor/local/share/fontconfig/conf.avail/60-latin.conf +70 -0
  483. data/vendor/local/share/fontconfig/conf.avail/65-fonts-persian.conf +419 -0
  484. data/vendor/local/share/fontconfig/conf.avail/65-khmer.conf +16 -0
  485. data/vendor/local/share/fontconfig/conf.avail/65-nonlatin.conf +196 -0
  486. data/vendor/local/share/fontconfig/conf.avail/69-unifont.conf +28 -0
  487. data/vendor/local/share/fontconfig/conf.avail/70-no-bitmaps.conf +12 -0
  488. data/vendor/local/share/fontconfig/conf.avail/70-yes-bitmaps.conf +12 -0
  489. data/vendor/local/share/fontconfig/conf.avail/80-delicious.conf +19 -0
  490. data/vendor/local/share/fontconfig/conf.avail/90-synthetic.conf +64 -0
  491. data/vendor/local/share/gtk-doc/html/cairo/bindings-errors.html +122 -0
  492. data/vendor/local/share/gtk-doc/html/cairo/bindings-fonts.html +53 -0
  493. data/vendor/local/share/gtk-doc/html/cairo/bindings-memory.html +123 -0
  494. data/vendor/local/share/gtk-doc/html/cairo/bindings-overloading.html +121 -0
  495. data/vendor/local/share/gtk-doc/html/cairo/bindings-path.html +117 -0
  496. data/vendor/local/share/gtk-doc/html/cairo/bindings-patterns.html +75 -0
  497. data/vendor/local/share/gtk-doc/html/cairo/bindings-return-values.html +120 -0
  498. data/vendor/local/share/gtk-doc/html/cairo/bindings-streams.html +92 -0
  499. data/vendor/local/share/gtk-doc/html/cairo/bindings-surfaces.html +93 -0
  500. data/vendor/local/share/gtk-doc/html/cairo/cairo-Error-handling.html +397 -0
  501. data/vendor/local/share/gtk-doc/html/cairo/cairo-FreeType-Fonts.html +428 -0
  502. data/vendor/local/share/gtk-doc/html/cairo/cairo-Image-Surfaces.html +452 -0
  503. data/vendor/local/share/gtk-doc/html/cairo/cairo-PDF-Surfaces.html +342 -0
  504. data/vendor/local/share/gtk-doc/html/cairo/cairo-PNG-Support.html +315 -0
  505. data/vendor/local/share/gtk-doc/html/cairo/cairo-Paths.html +1194 -0
  506. data/vendor/local/share/gtk-doc/html/cairo/cairo-PostScript-Surfaces.html +577 -0
  507. data/vendor/local/share/gtk-doc/html/cairo/cairo-Quartz-(CGFont)-Fonts.html +129 -0
  508. data/vendor/local/share/gtk-doc/html/cairo/cairo-Quartz-Surfaces.html +197 -0
  509. data/vendor/local/share/gtk-doc/html/cairo/cairo-Raster-Sources.html +600 -0
  510. data/vendor/local/share/gtk-doc/html/cairo/cairo-Recording-Surfaces.html +226 -0
  511. data/vendor/local/share/gtk-doc/html/cairo/cairo-Regions.html +810 -0
  512. data/vendor/local/share/gtk-doc/html/cairo/cairo-SVG-Surfaces.html +302 -0
  513. data/vendor/local/share/gtk-doc/html/cairo/cairo-Script-Surfaces.html +360 -0
  514. data/vendor/local/share/gtk-doc/html/cairo/cairo-Transformations.html +394 -0
  515. data/vendor/local/share/gtk-doc/html/cairo/cairo-Types.html +156 -0
  516. data/vendor/local/share/gtk-doc/html/cairo/cairo-User-Fonts.html +677 -0
  517. data/vendor/local/share/gtk-doc/html/cairo/cairo-Version-Information.html +342 -0
  518. data/vendor/local/share/gtk-doc/html/cairo/cairo-Win32-Fonts.html +326 -0
  519. data/vendor/local/share/gtk-doc/html/cairo/cairo-Win32-Surfaces.html +280 -0
  520. data/vendor/local/share/gtk-doc/html/cairo/cairo-XCB-Surfaces.html +527 -0
  521. data/vendor/local/share/gtk-doc/html/cairo/cairo-XLib-Surfaces.html +535 -0
  522. data/vendor/local/share/gtk-doc/html/cairo/cairo-XLib-XRender-Backend.html +170 -0
  523. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-device-t.html +636 -0
  524. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-font-face-t.html +380 -0
  525. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-font-options-t.html +653 -0
  526. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-matrix-t.html +559 -0
  527. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-pattern-t.html +2231 -0
  528. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-scaled-font-t.html +956 -0
  529. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-surface-t.html +1637 -0
  530. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-t.html +2695 -0
  531. data/vendor/local/share/gtk-doc/html/cairo/cairo-drawing.html +53 -0
  532. data/vendor/local/share/gtk-doc/html/cairo/cairo-fonts.html +53 -0
  533. data/vendor/local/share/gtk-doc/html/cairo/cairo-support.html +44 -0
  534. data/vendor/local/share/gtk-doc/html/cairo/cairo-surfaces.html +74 -0
  535. data/vendor/local/share/gtk-doc/html/cairo/cairo-text.html +1138 -0
  536. data/vendor/local/share/gtk-doc/html/cairo/cairo.devhelp2 +747 -0
  537. data/vendor/local/share/gtk-doc/html/cairo/home.png +0 -0
  538. data/vendor/local/share/gtk-doc/html/cairo/index-1.10.html +177 -0
  539. data/vendor/local/share/gtk-doc/html/cairo/index-1.12.html +193 -0
  540. data/vendor/local/share/gtk-doc/html/cairo/index-1.2.html +179 -0
  541. data/vendor/local/share/gtk-doc/html/cairo/index-1.4.html +123 -0
  542. data/vendor/local/share/gtk-doc/html/cairo/index-1.6.html +107 -0
  543. data/vendor/local/share/gtk-doc/html/cairo/index-1.8.html +128 -0
  544. data/vendor/local/share/gtk-doc/html/cairo/index-all.html +1122 -0
  545. data/vendor/local/share/gtk-doc/html/cairo/index.html +157 -0
  546. data/vendor/local/share/gtk-doc/html/cairo/index.sgml +833 -0
  547. data/vendor/local/share/gtk-doc/html/cairo/language-bindings.html +73 -0
  548. data/vendor/local/share/gtk-doc/html/cairo/left.png +0 -0
  549. data/vendor/local/share/gtk-doc/html/cairo/right.png +0 -0
  550. data/vendor/local/share/gtk-doc/html/cairo/style.css +266 -0
  551. data/vendor/local/share/gtk-doc/html/cairo/up.png +0 -0
  552. data/vendor/local/share/gtk-doc/html/libxml2/general.html +38 -0
  553. data/vendor/local/share/gtk-doc/html/libxml2/home.png +0 -0
  554. data/vendor/local/share/gtk-doc/html/libxml2/index.html +67 -0
  555. data/vendor/local/share/gtk-doc/html/libxml2/left.png +0 -0
  556. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-DOCBparser.html +138 -0
  557. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-HTMLparser.html +373 -0
  558. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-HTMLtree.html +172 -0
  559. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-SAX.html +243 -0
  560. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-SAX2.html +247 -0
  561. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-c14n.html +91 -0
  562. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-catalog.html +278 -0
  563. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-chvalid.html +241 -0
  564. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-debugXML.html +225 -0
  565. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-dict.html +134 -0
  566. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-encoding.html +218 -0
  567. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-entities.html +166 -0
  568. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-globals.html +383 -0
  569. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-hash.html +214 -0
  570. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-list.html +226 -0
  571. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-nanoftp.html +187 -0
  572. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-nanohttp.html +142 -0
  573. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-parser.html +766 -0
  574. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-parserInternals.html +688 -0
  575. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-pattern.html +166 -0
  576. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-relaxng.html +278 -0
  577. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-schemasInternals.html +860 -0
  578. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-schematron.html +166 -0
  579. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-threads.html +161 -0
  580. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-tree.html +1597 -0
  581. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-uri.html +154 -0
  582. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-valid.html +528 -0
  583. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xinclude.html +169 -0
  584. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xlink.html +160 -0
  585. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xmlIO.html +347 -0
  586. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xmlautomata.html +176 -0
  587. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xmlerror.html +953 -0
  588. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xmlexports.html +87 -0
  589. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xmlmemory.html +186 -0
  590. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xmlmodule.html +97 -0
  591. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xmlreader.html +565 -0
  592. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xmlregexp.html +280 -0
  593. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xmlsave.html +133 -0
  594. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xmlschemas.html +314 -0
  595. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xmlschemastypes.html +237 -0
  596. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xmlstring.html +217 -0
  597. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xmlunicode.html +887 -0
  598. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xmlversion.html +292 -0
  599. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xmlwriter.html +479 -0
  600. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xpath.html +542 -0
  601. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xpathInternals.html +787 -0
  602. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xpointer.html +171 -0
  603. data/vendor/local/share/gtk-doc/html/libxml2/libxml2.devhelp +3573 -0
  604. data/vendor/local/share/gtk-doc/html/libxml2/right.png +0 -0
  605. data/vendor/local/share/gtk-doc/html/libxml2/style.css +66 -0
  606. data/vendor/local/share/gtk-doc/html/libxml2/up.png +0 -0
  607. data/vendor/local/share/license/cairo/AUTHORS +115 -0
  608. data/vendor/local/share/license/cairo/COPYING +33 -0
  609. data/vendor/local/share/license/cairo/COPYING-LGPL-2.1 +510 -0
  610. data/vendor/local/share/license/cairo/COPYING-MPL-1.1 +470 -0
  611. data/vendor/local/share/license/cairo/README +204 -0
  612. data/vendor/local/share/license/cairo/README.win32 +66 -0
  613. data/vendor/local/share/license/fontconfig/AUTHORS +3 -0
  614. data/vendor/local/share/license/fontconfig/COPYING +28 -0
  615. data/vendor/local/share/license/fontconfig/README +1484 -0
  616. data/vendor/local/share/license/freetype/README +83 -0
  617. data/vendor/local/share/license/freetype/README.git +50 -0
  618. data/vendor/local/share/license/libpng/README +215 -0
  619. data/vendor/local/share/license/libxml2/AUTHORS +5 -0
  620. data/vendor/local/share/license/libxml2/COPYING +23 -0
  621. data/vendor/local/share/license/libxml2/README +39 -0
  622. data/vendor/local/share/license/libxml2/README.tests +39 -0
  623. data/vendor/local/share/license/pixman/AUTHORS +0 -0
  624. data/vendor/local/share/license/pixman/COPYING +42 -0
  625. data/vendor/local/share/license/pixman/README +116 -0
  626. data/vendor/local/share/license/zlib/README +115 -0
  627. data/vendor/local/share/man/man1/freetype-config.1 +108 -0
  628. data/vendor/local/share/man/man1/xml2-config.1 +30 -0
  629. data/vendor/local/share/man/man1/xmlcatalog.1 +340 -0
  630. data/vendor/local/share/man/man1/xmllint.1 +647 -0
  631. data/vendor/local/share/man/man3/libpng.3 +6217 -0
  632. data/vendor/local/share/man/man3/libpngpf.3 +18 -0
  633. data/vendor/local/share/man/man3/libxml.3 +71 -0
  634. data/vendor/local/share/man/man5/png.5 +74 -0
  635. data/vendor/local/share/xml/fontconfig/fonts.dtd +233 -0
  636. metadata +774 -0
@@ -0,0 +1,2231 @@
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_pattern_t</title>
6
+ <meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
7
+ <link rel="home" href="index.html" title="Cairo: A Vector Graphics Library">
8
+ <link rel="up" href="cairo-drawing.html" title="Drawing">
9
+ <link rel="prev" href="cairo-Paths.html" title="Paths">
10
+ <link rel="next" href="cairo-Regions.html" title="Regions">
11
+ <meta name="generator" content="GTK-Doc V1.18 (XML mode)">
12
+ <link rel="stylesheet" href="style.css" type="text/css">
13
+ </head>
14
+ <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
15
+ <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
16
+ <tr valign="middle">
17
+ <td><a accesskey="p" href="cairo-Paths.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
18
+ <td><a accesskey="u" href="cairo-drawing.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
19
+ <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
20
+ <th width="100%" align="center">Cairo: A Vector Graphics Library</th>
21
+ <td><a accesskey="n" href="cairo-Regions.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
22
+ </tr>
23
+ <tr><td colspan="5" class="shortcuts">
24
+ <a href="#cairo-cairo-pattern-t.synopsis" class="shortcut">Top</a>
25
+  | 
26
+ <a href="#cairo-cairo-pattern-t.description" class="shortcut">Description</a>
27
+ </td></tr>
28
+ </table>
29
+ <div class="refentry">
30
+ <a name="cairo-cairo-pattern-t"></a><div class="titlepage"></div>
31
+ <div class="refnamediv"><table width="100%"><tr>
32
+ <td valign="top">
33
+ <h2><span class="refentrytitle"><a name="cairo-cairo-pattern-t.top_of_page"></a>cairo_pattern_t</span></h2>
34
+ <p>cairo_pattern_t — Sources for drawing</p>
35
+ </td>
36
+ <td valign="top" align="right"></td>
37
+ </tr></table></div>
38
+ <div class="refsynopsisdiv">
39
+ <a name="cairo-cairo-pattern-t.synopsis"></a><h2>Synopsis</h2>
40
+ <pre class="synopsis">typedef <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t">cairo_pattern_t</a>;
41
+ <span class="returnvalue">void</span> <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-add-color-stop-rgb" title="cairo_pattern_add_color_stop_rgb ()">cairo_pattern_add_color_stop_rgb</a> (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
42
+ <em class="parameter"><code><span class="type">double</span> offset</code></em>,
43
+ <em class="parameter"><code><span class="type">double</span> red</code></em>,
44
+ <em class="parameter"><code><span class="type">double</span> green</code></em>,
45
+ <em class="parameter"><code><span class="type">double</span> blue</code></em>);
46
+ <span class="returnvalue">void</span> <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-add-color-stop-rgba" title="cairo_pattern_add_color_stop_rgba ()">cairo_pattern_add_color_stop_rgba</a> (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
47
+ <em class="parameter"><code><span class="type">double</span> offset</code></em>,
48
+ <em class="parameter"><code><span class="type">double</span> red</code></em>,
49
+ <em class="parameter"><code><span class="type">double</span> green</code></em>,
50
+ <em class="parameter"><code><span class="type">double</span> blue</code></em>,
51
+ <em class="parameter"><code><span class="type">double</span> alpha</code></em>);
52
+ <a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a> <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-get-color-stop-count" title="cairo_pattern_get_color_stop_count ()">cairo_pattern_get_color_stop_count</a> (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
53
+ <em class="parameter"><code><span class="type">int</span> *count</code></em>);
54
+ <a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a> <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-get-color-stop-rgba" title="cairo_pattern_get_color_stop_rgba ()">cairo_pattern_get_color_stop_rgba</a> (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
55
+ <em class="parameter"><code><span class="type">int</span> index</code></em>,
56
+ <em class="parameter"><code><span class="type">double</span> *offset</code></em>,
57
+ <em class="parameter"><code><span class="type">double</span> *red</code></em>,
58
+ <em class="parameter"><code><span class="type">double</span> *green</code></em>,
59
+ <em class="parameter"><code><span class="type">double</span> *blue</code></em>,
60
+ <em class="parameter"><code><span class="type">double</span> *alpha</code></em>);
61
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="returnvalue">cairo_pattern_t</span></a> * <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-create-rgb" title="cairo_pattern_create_rgb ()">cairo_pattern_create_rgb</a> (<em class="parameter"><code><span class="type">double</span> red</code></em>,
62
+ <em class="parameter"><code><span class="type">double</span> green</code></em>,
63
+ <em class="parameter"><code><span class="type">double</span> blue</code></em>);
64
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="returnvalue">cairo_pattern_t</span></a> * <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-create-rgba" title="cairo_pattern_create_rgba ()">cairo_pattern_create_rgba</a> (<em class="parameter"><code><span class="type">double</span> red</code></em>,
65
+ <em class="parameter"><code><span class="type">double</span> green</code></em>,
66
+ <em class="parameter"><code><span class="type">double</span> blue</code></em>,
67
+ <em class="parameter"><code><span class="type">double</span> alpha</code></em>);
68
+ <a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a> <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-get-rgba" title="cairo_pattern_get_rgba ()">cairo_pattern_get_rgba</a> (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
69
+ <em class="parameter"><code><span class="type">double</span> *red</code></em>,
70
+ <em class="parameter"><code><span class="type">double</span> *green</code></em>,
71
+ <em class="parameter"><code><span class="type">double</span> *blue</code></em>,
72
+ <em class="parameter"><code><span class="type">double</span> *alpha</code></em>);
73
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="returnvalue">cairo_pattern_t</span></a> * <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-create-for-surface" title="cairo_pattern_create_for_surface ()">cairo_pattern_create_for_surface</a> (<em class="parameter"><code><a class="link" href="cairo-cairo-surface-t.html#cairo-surface-t" title="cairo_surface_t"><span class="type">cairo_surface_t</span></a> *surface</code></em>);
74
+ <a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a> <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-get-surface" title="cairo_pattern_get_surface ()">cairo_pattern_get_surface</a> (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
75
+ <em class="parameter"><code><a class="link" href="cairo-cairo-surface-t.html#cairo-surface-t" title="cairo_surface_t"><span class="type">cairo_surface_t</span></a> **surface</code></em>);
76
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="returnvalue">cairo_pattern_t</span></a> * <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-create-linear" title="cairo_pattern_create_linear ()">cairo_pattern_create_linear</a> (<em class="parameter"><code><span class="type">double</span> x0</code></em>,
77
+ <em class="parameter"><code><span class="type">double</span> y0</code></em>,
78
+ <em class="parameter"><code><span class="type">double</span> x1</code></em>,
79
+ <em class="parameter"><code><span class="type">double</span> y1</code></em>);
80
+ <a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a> <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-get-linear-points" title="cairo_pattern_get_linear_points ()">cairo_pattern_get_linear_points</a> (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
81
+ <em class="parameter"><code><span class="type">double</span> *x0</code></em>,
82
+ <em class="parameter"><code><span class="type">double</span> *y0</code></em>,
83
+ <em class="parameter"><code><span class="type">double</span> *x1</code></em>,
84
+ <em class="parameter"><code><span class="type">double</span> *y1</code></em>);
85
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="returnvalue">cairo_pattern_t</span></a> * <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-create-radial" title="cairo_pattern_create_radial ()">cairo_pattern_create_radial</a> (<em class="parameter"><code><span class="type">double</span> cx0</code></em>,
86
+ <em class="parameter"><code><span class="type">double</span> cy0</code></em>,
87
+ <em class="parameter"><code><span class="type">double</span> radius0</code></em>,
88
+ <em class="parameter"><code><span class="type">double</span> cx1</code></em>,
89
+ <em class="parameter"><code><span class="type">double</span> cy1</code></em>,
90
+ <em class="parameter"><code><span class="type">double</span> radius1</code></em>);
91
+ <a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a> <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-get-radial-circles" title="cairo_pattern_get_radial_circles ()">cairo_pattern_get_radial_circles</a> (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
92
+ <em class="parameter"><code><span class="type">double</span> *x0</code></em>,
93
+ <em class="parameter"><code><span class="type">double</span> *y0</code></em>,
94
+ <em class="parameter"><code><span class="type">double</span> *r0</code></em>,
95
+ <em class="parameter"><code><span class="type">double</span> *x1</code></em>,
96
+ <em class="parameter"><code><span class="type">double</span> *y1</code></em>,
97
+ <em class="parameter"><code><span class="type">double</span> *r1</code></em>);
98
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="returnvalue">cairo_pattern_t</span></a> * <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-create-mesh" title="cairo_pattern_create_mesh ()">cairo_pattern_create_mesh</a> (<em class="parameter"><code><span class="type">void</span></code></em>);
99
+ <span class="returnvalue">void</span> <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-begin-patch" title="cairo_mesh_pattern_begin_patch ()">cairo_mesh_pattern_begin_patch</a> (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>);
100
+ <span class="returnvalue">void</span> <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-end-patch" title="cairo_mesh_pattern_end_patch ()">cairo_mesh_pattern_end_patch</a> (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>);
101
+ <span class="returnvalue">void</span> <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-move-to" title="cairo_mesh_pattern_move_to ()">cairo_mesh_pattern_move_to</a> (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
102
+ <em class="parameter"><code><span class="type">double</span> x</code></em>,
103
+ <em class="parameter"><code><span class="type">double</span> y</code></em>);
104
+ <span class="returnvalue">void</span> <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-line-to" title="cairo_mesh_pattern_line_to ()">cairo_mesh_pattern_line_to</a> (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
105
+ <em class="parameter"><code><span class="type">double</span> x</code></em>,
106
+ <em class="parameter"><code><span class="type">double</span> y</code></em>);
107
+ <span class="returnvalue">void</span> <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-curve-to" title="cairo_mesh_pattern_curve_to ()">cairo_mesh_pattern_curve_to</a> (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
108
+ <em class="parameter"><code><span class="type">double</span> x1</code></em>,
109
+ <em class="parameter"><code><span class="type">double</span> y1</code></em>,
110
+ <em class="parameter"><code><span class="type">double</span> x2</code></em>,
111
+ <em class="parameter"><code><span class="type">double</span> y2</code></em>,
112
+ <em class="parameter"><code><span class="type">double</span> x3</code></em>,
113
+ <em class="parameter"><code><span class="type">double</span> y3</code></em>);
114
+ <span class="returnvalue">void</span> <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-set-control-point" title="cairo_mesh_pattern_set_control_point ()">cairo_mesh_pattern_set_control_point</a>
115
+ (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
116
+ <em class="parameter"><code>unsigned <span class="type">int</span> point_num</code></em>,
117
+ <em class="parameter"><code><span class="type">double</span> x</code></em>,
118
+ <em class="parameter"><code><span class="type">double</span> y</code></em>);
119
+ <span class="returnvalue">void</span> <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-set-corner-color-rgb" title="cairo_mesh_pattern_set_corner_color_rgb ()">cairo_mesh_pattern_set_corner_color_rgb</a>
120
+ (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
121
+ <em class="parameter"><code>unsigned <span class="type">int</span> corner_num</code></em>,
122
+ <em class="parameter"><code><span class="type">double</span> red</code></em>,
123
+ <em class="parameter"><code><span class="type">double</span> green</code></em>,
124
+ <em class="parameter"><code><span class="type">double</span> blue</code></em>);
125
+ <span class="returnvalue">void</span> <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-set-corner-color-rgba" title="cairo_mesh_pattern_set_corner_color_rgba ()">cairo_mesh_pattern_set_corner_color_rgba</a>
126
+ (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
127
+ <em class="parameter"><code>unsigned <span class="type">int</span> corner_num</code></em>,
128
+ <em class="parameter"><code><span class="type">double</span> red</code></em>,
129
+ <em class="parameter"><code><span class="type">double</span> green</code></em>,
130
+ <em class="parameter"><code><span class="type">double</span> blue</code></em>,
131
+ <em class="parameter"><code><span class="type">double</span> alpha</code></em>);
132
+ <a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a> <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-get-patch-count" title="cairo_mesh_pattern_get_patch_count ()">cairo_mesh_pattern_get_patch_count</a> (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
133
+ <em class="parameter"><code>unsigned <span class="type">int</span> *count</code></em>);
134
+ <a class="link" href="cairo-Paths.html#cairo-path-t" title="cairo_path_t"><span class="returnvalue">cairo_path_t</span></a> * <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-get-path" title="cairo_mesh_pattern_get_path ()">cairo_mesh_pattern_get_path</a> (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
135
+ <em class="parameter"><code>unsigned <span class="type">int</span> patch_num</code></em>);
136
+ <a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a> <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-get-control-point" title="cairo_mesh_pattern_get_control_point ()">cairo_mesh_pattern_get_control_point</a>
137
+ (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
138
+ <em class="parameter"><code>unsigned <span class="type">int</span> patch_num</code></em>,
139
+ <em class="parameter"><code>unsigned <span class="type">int</span> point_num</code></em>,
140
+ <em class="parameter"><code><span class="type">double</span> *x</code></em>,
141
+ <em class="parameter"><code><span class="type">double</span> *y</code></em>);
142
+ <a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a> <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-get-corner-color-rgba" title="cairo_mesh_pattern_get_corner_color_rgba ()">cairo_mesh_pattern_get_corner_color_rgba</a>
143
+ (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
144
+ <em class="parameter"><code>unsigned <span class="type">int</span> patch_num</code></em>,
145
+ <em class="parameter"><code>unsigned <span class="type">int</span> corner_num</code></em>,
146
+ <em class="parameter"><code><span class="type">double</span> *red</code></em>,
147
+ <em class="parameter"><code><span class="type">double</span> *green</code></em>,
148
+ <em class="parameter"><code><span class="type">double</span> *blue</code></em>,
149
+ <em class="parameter"><code><span class="type">double</span> *alpha</code></em>);
150
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="returnvalue">cairo_pattern_t</span></a> * <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-reference" title="cairo_pattern_reference ()">cairo_pattern_reference</a> (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>);
151
+ <span class="returnvalue">void</span> <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-destroy" title="cairo_pattern_destroy ()">cairo_pattern_destroy</a> (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>);
152
+ <a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a> <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-status" title="cairo_pattern_status ()">cairo_pattern_status</a> (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>);
153
+ enum <a class="link" href="cairo-cairo-pattern-t.html#cairo-extend-t" title="enum cairo_extend_t">cairo_extend_t</a>;
154
+ <span class="returnvalue">void</span> <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-set-extend" title="cairo_pattern_set_extend ()">cairo_pattern_set_extend</a> (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
155
+ <em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-extend-t" title="enum cairo_extend_t"><span class="type">cairo_extend_t</span></a> extend</code></em>);
156
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-extend-t" title="enum cairo_extend_t"><span class="returnvalue">cairo_extend_t</span></a> <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-get-extend" title="cairo_pattern_get_extend ()">cairo_pattern_get_extend</a> (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>);
157
+ enum <a class="link" href="cairo-cairo-pattern-t.html#cairo-filter-t" title="enum cairo_filter_t">cairo_filter_t</a>;
158
+ <span class="returnvalue">void</span> <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-set-filter" title="cairo_pattern_set_filter ()">cairo_pattern_set_filter</a> (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
159
+ <em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-filter-t" title="enum cairo_filter_t"><span class="type">cairo_filter_t</span></a> filter</code></em>);
160
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-filter-t" title="enum cairo_filter_t"><span class="returnvalue">cairo_filter_t</span></a> <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-get-filter" title="cairo_pattern_get_filter ()">cairo_pattern_get_filter</a> (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>);
161
+ <span class="returnvalue">void</span> <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-set-matrix" title="cairo_pattern_set_matrix ()">cairo_pattern_set_matrix</a> (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
162
+ <em class="parameter"><code>const <a class="link" href="cairo-cairo-matrix-t.html#cairo-matrix-t" title="cairo_matrix_t"><span class="type">cairo_matrix_t</span></a> *matrix</code></em>);
163
+ <span class="returnvalue">void</span> <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-get-matrix" title="cairo_pattern_get_matrix ()">cairo_pattern_get_matrix</a> (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
164
+ <em class="parameter"><code><a class="link" href="cairo-cairo-matrix-t.html#cairo-matrix-t" title="cairo_matrix_t"><span class="type">cairo_matrix_t</span></a> *matrix</code></em>);
165
+ enum <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-type-t" title="enum cairo_pattern_type_t">cairo_pattern_type_t</a>;
166
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-type-t" title="enum cairo_pattern_type_t"><span class="returnvalue">cairo_pattern_type_t</span></a> <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-get-type" title="cairo_pattern_get_type ()">cairo_pattern_get_type</a> (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>);
167
+ unsigned <span class="returnvalue">int</span> <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-get-reference-count" title="cairo_pattern_get_reference_count ()">cairo_pattern_get_reference_count</a> (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>);
168
+ <a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a> <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-set-user-data" title="cairo_pattern_set_user_data ()">cairo_pattern_set_user_data</a> (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
169
+ <em class="parameter"><code>const <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> *key</code></em>,
170
+ <em class="parameter"><code><span class="type">void</span> *user_data</code></em>,
171
+ <em class="parameter"><code><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> destroy</code></em>);
172
+ <span class="returnvalue">void</span> * <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-get-user-data" title="cairo_pattern_get_user_data ()">cairo_pattern_get_user_data</a> (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
173
+ <em class="parameter"><code>const <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> *key</code></em>);
174
+ </pre>
175
+ </div>
176
+ <div class="refsect1">
177
+ <a name="cairo-cairo-pattern-t.description"></a><h2>Description</h2>
178
+ <p>
179
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> is the paint with which cairo draws.
180
+ The primary use of patterns is as the source for all cairo drawing
181
+ operations, although they can also be used as masks, that is, as the
182
+ brush too.
183
+ </p>
184
+ <p>
185
+ A cairo pattern is created by using one of the many constructors,
186
+ of the form
187
+ <code class="function">cairo_pattern_create_<span class="emphasis"><em>type</em></span>()</code>
188
+ or implicitly through
189
+ <code class="function">cairo_set_source_<span class="emphasis"><em>type</em></span>()</code>
190
+ functions.
191
+ </p>
192
+ </div>
193
+ <div class="refsect1">
194
+ <a name="cairo-cairo-pattern-t.details"></a><h2>Details</h2>
195
+ <div class="refsect2">
196
+ <a name="cairo-pattern-t"></a><h3>cairo_pattern_t</h3>
197
+ <pre class="programlisting">typedef struct _cairo_pattern cairo_pattern_t;
198
+ </pre>
199
+ <p>
200
+ A <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> represents a source when drawing onto a
201
+ surface. There are different subtypes of <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>,
202
+ for different types of sources; for example,
203
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-create-rgb" title="cairo_pattern_create_rgb ()"><code class="function">cairo_pattern_create_rgb()</code></a> creates a pattern for a solid
204
+ opaque color.
205
+ </p>
206
+ <p>
207
+ Other than various
208
+ <code class="function">cairo_pattern_create_<span class="emphasis"><em>type</em></span>()</code>
209
+ functions, some of the pattern types can be implicitly created using various
210
+ <code class="function">cairo_set_source_<span class="emphasis"><em>type</em></span>()</code> functions;
211
+ for example <a class="link" href="cairo-cairo-t.html#cairo-set-source-rgb" title="cairo_set_source_rgb ()"><code class="function">cairo_set_source_rgb()</code></a>.
212
+ </p>
213
+ <p>
214
+ The type of a pattern can be queried with <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-get-type" title="cairo_pattern_get_type ()"><code class="function">cairo_pattern_get_type()</code></a>.
215
+ </p>
216
+ <p>
217
+ Memory management of <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> is done with
218
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-reference" title="cairo_pattern_reference ()"><code class="function">cairo_pattern_reference()</code></a> and <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-destroy" title="cairo_pattern_destroy ()"><code class="function">cairo_pattern_destroy()</code></a>.
219
+ </p>
220
+ <p class="since">Since 1.0</p>
221
+ </div>
222
+ <hr>
223
+ <div class="refsect2">
224
+ <a name="cairo-pattern-add-color-stop-rgb"></a><h3>cairo_pattern_add_color_stop_rgb ()</h3>
225
+ <pre class="programlisting"><span class="returnvalue">void</span> cairo_pattern_add_color_stop_rgb (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
226
+ <em class="parameter"><code><span class="type">double</span> offset</code></em>,
227
+ <em class="parameter"><code><span class="type">double</span> red</code></em>,
228
+ <em class="parameter"><code><span class="type">double</span> green</code></em>,
229
+ <em class="parameter"><code><span class="type">double</span> blue</code></em>);</pre>
230
+ <p>
231
+ Adds an opaque color stop to a gradient pattern. The offset
232
+ specifies the location along the gradient's control vector. For
233
+ example, a linear gradient's control vector is from (x0,y0) to
234
+ (x1,y1) while a radial gradient's control vector is from any point
235
+ on the start circle to the corresponding point on the end circle.
236
+ </p>
237
+ <p>
238
+ The color is specified in the same way as in <a class="link" href="cairo-cairo-t.html#cairo-set-source-rgb" title="cairo_set_source_rgb ()"><code class="function">cairo_set_source_rgb()</code></a>.
239
+ </p>
240
+ <p>
241
+ If two (or more) stops are specified with identical offset values,
242
+ they will be sorted according to the order in which the stops are
243
+ added, (stops added earlier will compare less than stops added
244
+ later). This can be useful for reliably making sharp color
245
+ transitions instead of the typical blend.
246
+ </p>
247
+ <p>
248
+ Note: If the pattern is not a gradient pattern, (eg. a linear or
249
+ radial pattern), then the pattern will be put into an error status
250
+ with a status of <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a>.
251
+ </p>
252
+ <div class="variablelist"><table border="0">
253
+ <col align="left" valign="top">
254
+ <tbody>
255
+ <tr>
256
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
257
+ <td>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>
258
+ </td>
259
+ </tr>
260
+ <tr>
261
+ <td><p><span class="term"><em class="parameter"><code>offset</code></em> :</span></p></td>
262
+ <td>an offset in the range [0.0 .. 1.0]</td>
263
+ </tr>
264
+ <tr>
265
+ <td><p><span class="term"><em class="parameter"><code>red</code></em> :</span></p></td>
266
+ <td>red component of color</td>
267
+ </tr>
268
+ <tr>
269
+ <td><p><span class="term"><em class="parameter"><code>green</code></em> :</span></p></td>
270
+ <td>green component of color</td>
271
+ </tr>
272
+ <tr>
273
+ <td><p><span class="term"><em class="parameter"><code>blue</code></em> :</span></p></td>
274
+ <td>blue component of color</td>
275
+ </tr>
276
+ </tbody>
277
+ </table></div>
278
+ <p class="since">Since 1.0</p>
279
+ </div>
280
+ <hr>
281
+ <div class="refsect2">
282
+ <a name="cairo-pattern-add-color-stop-rgba"></a><h3>cairo_pattern_add_color_stop_rgba ()</h3>
283
+ <pre class="programlisting"><span class="returnvalue">void</span> cairo_pattern_add_color_stop_rgba (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
284
+ <em class="parameter"><code><span class="type">double</span> offset</code></em>,
285
+ <em class="parameter"><code><span class="type">double</span> red</code></em>,
286
+ <em class="parameter"><code><span class="type">double</span> green</code></em>,
287
+ <em class="parameter"><code><span class="type">double</span> blue</code></em>,
288
+ <em class="parameter"><code><span class="type">double</span> alpha</code></em>);</pre>
289
+ <p>
290
+ Adds a translucent color stop to a gradient pattern. The offset
291
+ specifies the location along the gradient's control vector. For
292
+ example, a linear gradient's control vector is from (x0,y0) to
293
+ (x1,y1) while a radial gradient's control vector is from any point
294
+ on the start circle to the corresponding point on the end circle.
295
+ </p>
296
+ <p>
297
+ The color is specified in the same way as in <a class="link" href="cairo-cairo-t.html#cairo-set-source-rgba" title="cairo_set_source_rgba ()"><code class="function">cairo_set_source_rgba()</code></a>.
298
+ </p>
299
+ <p>
300
+ If two (or more) stops are specified with identical offset values,
301
+ they will be sorted according to the order in which the stops are
302
+ added, (stops added earlier will compare less than stops added
303
+ later). This can be useful for reliably making sharp color
304
+ transitions instead of the typical blend.
305
+ </p>
306
+ <p>
307
+ Note: If the pattern is not a gradient pattern, (eg. a linear or
308
+ radial pattern), then the pattern will be put into an error status
309
+ with a status of <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a>.
310
+ </p>
311
+ <div class="variablelist"><table border="0">
312
+ <col align="left" valign="top">
313
+ <tbody>
314
+ <tr>
315
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
316
+ <td>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>
317
+ </td>
318
+ </tr>
319
+ <tr>
320
+ <td><p><span class="term"><em class="parameter"><code>offset</code></em> :</span></p></td>
321
+ <td>an offset in the range [0.0 .. 1.0]</td>
322
+ </tr>
323
+ <tr>
324
+ <td><p><span class="term"><em class="parameter"><code>red</code></em> :</span></p></td>
325
+ <td>red component of color</td>
326
+ </tr>
327
+ <tr>
328
+ <td><p><span class="term"><em class="parameter"><code>green</code></em> :</span></p></td>
329
+ <td>green component of color</td>
330
+ </tr>
331
+ <tr>
332
+ <td><p><span class="term"><em class="parameter"><code>blue</code></em> :</span></p></td>
333
+ <td>blue component of color</td>
334
+ </tr>
335
+ <tr>
336
+ <td><p><span class="term"><em class="parameter"><code>alpha</code></em> :</span></p></td>
337
+ <td>alpha component of color</td>
338
+ </tr>
339
+ </tbody>
340
+ </table></div>
341
+ <p class="since">Since 1.0</p>
342
+ </div>
343
+ <hr>
344
+ <div class="refsect2">
345
+ <a name="cairo-pattern-get-color-stop-count"></a><h3>cairo_pattern_get_color_stop_count ()</h3>
346
+ <pre class="programlisting"><a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a> cairo_pattern_get_color_stop_count (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
347
+ <em class="parameter"><code><span class="type">int</span> *count</code></em>);</pre>
348
+ <p>
349
+ Gets the number of color stops specified in the given gradient
350
+ pattern.
351
+ </p>
352
+ <div class="variablelist"><table border="0">
353
+ <col align="left" valign="top">
354
+ <tbody>
355
+ <tr>
356
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
357
+ <td>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>
358
+ </td>
359
+ </tr>
360
+ <tr>
361
+ <td><p><span class="term"><em class="parameter"><code>count</code></em> :</span></p></td>
362
+ <td>return value for the number of color stops, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
363
+ </td>
364
+ </tr>
365
+ <tr>
366
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
367
+ <td>
368
+ <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-SUCCESS:CAPS"><code class="literal">CAIRO_STATUS_SUCCESS</code></a>, or
369
+ <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a> if <em class="parameter"><code>pattern</code></em> is not a gradient
370
+ pattern.</td>
371
+ </tr>
372
+ </tbody>
373
+ </table></div>
374
+ <p class="since">Since 1.4</p>
375
+ </div>
376
+ <hr>
377
+ <div class="refsect2">
378
+ <a name="cairo-pattern-get-color-stop-rgba"></a><h3>cairo_pattern_get_color_stop_rgba ()</h3>
379
+ <pre class="programlisting"><a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a> cairo_pattern_get_color_stop_rgba (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
380
+ <em class="parameter"><code><span class="type">int</span> index</code></em>,
381
+ <em class="parameter"><code><span class="type">double</span> *offset</code></em>,
382
+ <em class="parameter"><code><span class="type">double</span> *red</code></em>,
383
+ <em class="parameter"><code><span class="type">double</span> *green</code></em>,
384
+ <em class="parameter"><code><span class="type">double</span> *blue</code></em>,
385
+ <em class="parameter"><code><span class="type">double</span> *alpha</code></em>);</pre>
386
+ <p>
387
+ Gets the color and offset information at the given <em class="parameter"><code>index</code></em> for a
388
+ gradient pattern. Values of <em class="parameter"><code>index</code></em> range from 0 to n-1
389
+ where n is the number returned
390
+ by <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-get-color-stop-count" title="cairo_pattern_get_color_stop_count ()"><code class="function">cairo_pattern_get_color_stop_count()</code></a>.
391
+ </p>
392
+ <div class="variablelist"><table border="0">
393
+ <col align="left" valign="top">
394
+ <tbody>
395
+ <tr>
396
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
397
+ <td>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>
398
+ </td>
399
+ </tr>
400
+ <tr>
401
+ <td><p><span class="term"><em class="parameter"><code>index</code></em> :</span></p></td>
402
+ <td>index of the stop to return data for</td>
403
+ </tr>
404
+ <tr>
405
+ <td><p><span class="term"><em class="parameter"><code>offset</code></em> :</span></p></td>
406
+ <td>return value for the offset of the stop, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
407
+ </td>
408
+ </tr>
409
+ <tr>
410
+ <td><p><span class="term"><em class="parameter"><code>red</code></em> :</span></p></td>
411
+ <td>return value for red component of color, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
412
+ </td>
413
+ </tr>
414
+ <tr>
415
+ <td><p><span class="term"><em class="parameter"><code>green</code></em> :</span></p></td>
416
+ <td>return value for green component of color, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
417
+ </td>
418
+ </tr>
419
+ <tr>
420
+ <td><p><span class="term"><em class="parameter"><code>blue</code></em> :</span></p></td>
421
+ <td>return value for blue component of color, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
422
+ </td>
423
+ </tr>
424
+ <tr>
425
+ <td><p><span class="term"><em class="parameter"><code>alpha</code></em> :</span></p></td>
426
+ <td>return value for alpha component of color, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
427
+ </td>
428
+ </tr>
429
+ <tr>
430
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
431
+ <td>
432
+ <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-INVALID-INDEX:CAPS"><code class="literal">CAIRO_STATUS_INVALID_INDEX</code></a>
433
+ if <em class="parameter"><code>index</code></em> is not valid for the given pattern. If the pattern is
434
+ not a gradient pattern, <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a> is
435
+ returned.</td>
436
+ </tr>
437
+ </tbody>
438
+ </table></div>
439
+ <p class="since">Since 1.4</p>
440
+ </div>
441
+ <hr>
442
+ <div class="refsect2">
443
+ <a name="cairo-pattern-create-rgb"></a><h3>cairo_pattern_create_rgb ()</h3>
444
+ <pre class="programlisting"><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="returnvalue">cairo_pattern_t</span></a> * cairo_pattern_create_rgb (<em class="parameter"><code><span class="type">double</span> red</code></em>,
445
+ <em class="parameter"><code><span class="type">double</span> green</code></em>,
446
+ <em class="parameter"><code><span class="type">double</span> blue</code></em>);</pre>
447
+ <p>
448
+ Creates a new <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> corresponding to an opaque color. The
449
+ color components are floating point numbers in the range 0 to 1.
450
+ If the values passed in are outside that range, they will be
451
+ clamped.
452
+ </p>
453
+ <div class="variablelist"><table border="0">
454
+ <col align="left" valign="top">
455
+ <tbody>
456
+ <tr>
457
+ <td><p><span class="term"><em class="parameter"><code>red</code></em> :</span></p></td>
458
+ <td>red component of the color</td>
459
+ </tr>
460
+ <tr>
461
+ <td><p><span class="term"><em class="parameter"><code>green</code></em> :</span></p></td>
462
+ <td>green component of the color</td>
463
+ </tr>
464
+ <tr>
465
+ <td><p><span class="term"><em class="parameter"><code>blue</code></em> :</span></p></td>
466
+ <td>blue component of the color</td>
467
+ </tr>
468
+ <tr>
469
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
470
+ <td>the newly created <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> if successful, or
471
+ an error pattern in case of no memory. The caller owns the
472
+ returned object and should call <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-destroy" title="cairo_pattern_destroy ()"><code class="function">cairo_pattern_destroy()</code></a> when
473
+ finished with it.
474
+ This function will always return a valid pointer, but if an error
475
+ occurred the pattern status will be set to an error. To inspect
476
+ the status of a pattern use <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-status" title="cairo_pattern_status ()"><code class="function">cairo_pattern_status()</code></a>.</td>
477
+ </tr>
478
+ </tbody>
479
+ </table></div>
480
+ <p class="since">Since 1.0</p>
481
+ </div>
482
+ <hr>
483
+ <div class="refsect2">
484
+ <a name="cairo-pattern-create-rgba"></a><h3>cairo_pattern_create_rgba ()</h3>
485
+ <pre class="programlisting"><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="returnvalue">cairo_pattern_t</span></a> * cairo_pattern_create_rgba (<em class="parameter"><code><span class="type">double</span> red</code></em>,
486
+ <em class="parameter"><code><span class="type">double</span> green</code></em>,
487
+ <em class="parameter"><code><span class="type">double</span> blue</code></em>,
488
+ <em class="parameter"><code><span class="type">double</span> alpha</code></em>);</pre>
489
+ <p>
490
+ Creates a new <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> corresponding to a translucent color.
491
+ The color components are floating point numbers in the range 0 to
492
+ 1. If the values passed in are outside that range, they will be
493
+ clamped.
494
+ </p>
495
+ <div class="variablelist"><table border="0">
496
+ <col align="left" valign="top">
497
+ <tbody>
498
+ <tr>
499
+ <td><p><span class="term"><em class="parameter"><code>red</code></em> :</span></p></td>
500
+ <td>red component of the color</td>
501
+ </tr>
502
+ <tr>
503
+ <td><p><span class="term"><em class="parameter"><code>green</code></em> :</span></p></td>
504
+ <td>green component of the color</td>
505
+ </tr>
506
+ <tr>
507
+ <td><p><span class="term"><em class="parameter"><code>blue</code></em> :</span></p></td>
508
+ <td>blue component of the color</td>
509
+ </tr>
510
+ <tr>
511
+ <td><p><span class="term"><em class="parameter"><code>alpha</code></em> :</span></p></td>
512
+ <td>alpha component of the color</td>
513
+ </tr>
514
+ <tr>
515
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
516
+ <td>the newly created <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> if successful, or
517
+ an error pattern in case of no memory. The caller owns the
518
+ returned object and should call <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-destroy" title="cairo_pattern_destroy ()"><code class="function">cairo_pattern_destroy()</code></a> when
519
+ finished with it.
520
+ This function will always return a valid pointer, but if an error
521
+ occurred the pattern status will be set to an error. To inspect
522
+ the status of a pattern use <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-status" title="cairo_pattern_status ()"><code class="function">cairo_pattern_status()</code></a>.</td>
523
+ </tr>
524
+ </tbody>
525
+ </table></div>
526
+ <p class="since">Since 1.0</p>
527
+ </div>
528
+ <hr>
529
+ <div class="refsect2">
530
+ <a name="cairo-pattern-get-rgba"></a><h3>cairo_pattern_get_rgba ()</h3>
531
+ <pre class="programlisting"><a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a> cairo_pattern_get_rgba (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
532
+ <em class="parameter"><code><span class="type">double</span> *red</code></em>,
533
+ <em class="parameter"><code><span class="type">double</span> *green</code></em>,
534
+ <em class="parameter"><code><span class="type">double</span> *blue</code></em>,
535
+ <em class="parameter"><code><span class="type">double</span> *alpha</code></em>);</pre>
536
+ <p>
537
+ Gets the solid color for a solid color pattern.
538
+ </p>
539
+ <div class="variablelist"><table border="0">
540
+ <col align="left" valign="top">
541
+ <tbody>
542
+ <tr>
543
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
544
+ <td>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>
545
+ </td>
546
+ </tr>
547
+ <tr>
548
+ <td><p><span class="term"><em class="parameter"><code>red</code></em> :</span></p></td>
549
+ <td>return value for red component of color, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
550
+ </td>
551
+ </tr>
552
+ <tr>
553
+ <td><p><span class="term"><em class="parameter"><code>green</code></em> :</span></p></td>
554
+ <td>return value for green component of color, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
555
+ </td>
556
+ </tr>
557
+ <tr>
558
+ <td><p><span class="term"><em class="parameter"><code>blue</code></em> :</span></p></td>
559
+ <td>return value for blue component of color, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
560
+ </td>
561
+ </tr>
562
+ <tr>
563
+ <td><p><span class="term"><em class="parameter"><code>alpha</code></em> :</span></p></td>
564
+ <td>return value for alpha component of color, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
565
+ </td>
566
+ </tr>
567
+ <tr>
568
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
569
+ <td>
570
+ <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-SUCCESS:CAPS"><code class="literal">CAIRO_STATUS_SUCCESS</code></a>, or
571
+ <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a> if the pattern is not a solid
572
+ color pattern.</td>
573
+ </tr>
574
+ </tbody>
575
+ </table></div>
576
+ <p class="since">Since 1.4</p>
577
+ </div>
578
+ <hr>
579
+ <div class="refsect2">
580
+ <a name="cairo-pattern-create-for-surface"></a><h3>cairo_pattern_create_for_surface ()</h3>
581
+ <pre class="programlisting"><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="returnvalue">cairo_pattern_t</span></a> * cairo_pattern_create_for_surface (<em class="parameter"><code><a class="link" href="cairo-cairo-surface-t.html#cairo-surface-t" title="cairo_surface_t"><span class="type">cairo_surface_t</span></a> *surface</code></em>);</pre>
582
+ <p>
583
+ Create a new <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> for the given surface.
584
+ </p>
585
+ <div class="variablelist"><table border="0">
586
+ <col align="left" valign="top">
587
+ <tbody>
588
+ <tr>
589
+ <td><p><span class="term"><em class="parameter"><code>surface</code></em> :</span></p></td>
590
+ <td>the surface</td>
591
+ </tr>
592
+ <tr>
593
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
594
+ <td>the newly created <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> if successful, or
595
+ an error pattern in case of no memory. The caller owns the
596
+ returned object and should call <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-destroy" title="cairo_pattern_destroy ()"><code class="function">cairo_pattern_destroy()</code></a> when
597
+ finished with it.
598
+ This function will always return a valid pointer, but if an error
599
+ occurred the pattern status will be set to an error. To inspect
600
+ the status of a pattern use <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-status" title="cairo_pattern_status ()"><code class="function">cairo_pattern_status()</code></a>.</td>
601
+ </tr>
602
+ </tbody>
603
+ </table></div>
604
+ <p class="since">Since 1.0</p>
605
+ </div>
606
+ <hr>
607
+ <div class="refsect2">
608
+ <a name="cairo-pattern-get-surface"></a><h3>cairo_pattern_get_surface ()</h3>
609
+ <pre class="programlisting"><a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a> cairo_pattern_get_surface (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
610
+ <em class="parameter"><code><a class="link" href="cairo-cairo-surface-t.html#cairo-surface-t" title="cairo_surface_t"><span class="type">cairo_surface_t</span></a> **surface</code></em>);</pre>
611
+ <p>
612
+ Gets the surface of a surface pattern. The reference returned in
613
+ <em class="parameter"><code>surface</code></em> is owned by the pattern; the caller should call
614
+ <a class="link" href="cairo-cairo-surface-t.html#cairo-surface-reference" title="cairo_surface_reference ()"><code class="function">cairo_surface_reference()</code></a> if the surface is to be retained.
615
+ </p>
616
+ <div class="variablelist"><table border="0">
617
+ <col align="left" valign="top">
618
+ <tbody>
619
+ <tr>
620
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
621
+ <td>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>
622
+ </td>
623
+ </tr>
624
+ <tr>
625
+ <td><p><span class="term"><em class="parameter"><code>surface</code></em> :</span></p></td>
626
+ <td>return value for surface of pattern, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
627
+ </td>
628
+ </tr>
629
+ <tr>
630
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
631
+ <td>
632
+ <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-SUCCESS:CAPS"><code class="literal">CAIRO_STATUS_SUCCESS</code></a>, or
633
+ <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a> if the pattern is not a surface
634
+ pattern.</td>
635
+ </tr>
636
+ </tbody>
637
+ </table></div>
638
+ <p class="since">Since 1.4</p>
639
+ </div>
640
+ <hr>
641
+ <div class="refsect2">
642
+ <a name="cairo-pattern-create-linear"></a><h3>cairo_pattern_create_linear ()</h3>
643
+ <pre class="programlisting"><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="returnvalue">cairo_pattern_t</span></a> * cairo_pattern_create_linear (<em class="parameter"><code><span class="type">double</span> x0</code></em>,
644
+ <em class="parameter"><code><span class="type">double</span> y0</code></em>,
645
+ <em class="parameter"><code><span class="type">double</span> x1</code></em>,
646
+ <em class="parameter"><code><span class="type">double</span> y1</code></em>);</pre>
647
+ <p>
648
+ Create a new linear gradient <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> along the line defined
649
+ by (x0, y0) and (x1, y1). Before using the gradient pattern, a
650
+ number of color stops should be defined using
651
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-add-color-stop-rgb" title="cairo_pattern_add_color_stop_rgb ()"><code class="function">cairo_pattern_add_color_stop_rgb()</code></a> or
652
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-add-color-stop-rgba" title="cairo_pattern_add_color_stop_rgba ()"><code class="function">cairo_pattern_add_color_stop_rgba()</code></a>.
653
+ </p>
654
+ <p>
655
+ Note: The coordinates here are in pattern space. For a new pattern,
656
+ pattern space is identical to user space, but the relationship
657
+ between the spaces can be changed with <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-set-matrix" title="cairo_pattern_set_matrix ()"><code class="function">cairo_pattern_set_matrix()</code></a>.
658
+ </p>
659
+ <div class="variablelist"><table border="0">
660
+ <col align="left" valign="top">
661
+ <tbody>
662
+ <tr>
663
+ <td><p><span class="term"><em class="parameter"><code>x0</code></em> :</span></p></td>
664
+ <td>x coordinate of the start point</td>
665
+ </tr>
666
+ <tr>
667
+ <td><p><span class="term"><em class="parameter"><code>y0</code></em> :</span></p></td>
668
+ <td>y coordinate of the start point</td>
669
+ </tr>
670
+ <tr>
671
+ <td><p><span class="term"><em class="parameter"><code>x1</code></em> :</span></p></td>
672
+ <td>x coordinate of the end point</td>
673
+ </tr>
674
+ <tr>
675
+ <td><p><span class="term"><em class="parameter"><code>y1</code></em> :</span></p></td>
676
+ <td>y coordinate of the end point</td>
677
+ </tr>
678
+ <tr>
679
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
680
+ <td>the newly created <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> if successful, or
681
+ an error pattern in case of no memory. The caller owns the
682
+ returned object and should call <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-destroy" title="cairo_pattern_destroy ()"><code class="function">cairo_pattern_destroy()</code></a> when
683
+ finished with it.
684
+ This function will always return a valid pointer, but if an error
685
+ occurred the pattern status will be set to an error. To inspect
686
+ the status of a pattern use <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-status" title="cairo_pattern_status ()"><code class="function">cairo_pattern_status()</code></a>.</td>
687
+ </tr>
688
+ </tbody>
689
+ </table></div>
690
+ <p class="since">Since 1.0</p>
691
+ </div>
692
+ <hr>
693
+ <div class="refsect2">
694
+ <a name="cairo-pattern-get-linear-points"></a><h3>cairo_pattern_get_linear_points ()</h3>
695
+ <pre class="programlisting"><a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a> cairo_pattern_get_linear_points (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
696
+ <em class="parameter"><code><span class="type">double</span> *x0</code></em>,
697
+ <em class="parameter"><code><span class="type">double</span> *y0</code></em>,
698
+ <em class="parameter"><code><span class="type">double</span> *x1</code></em>,
699
+ <em class="parameter"><code><span class="type">double</span> *y1</code></em>);</pre>
700
+ <p>
701
+ Gets the gradient endpoints for a linear gradient.
702
+ </p>
703
+ <div class="variablelist"><table border="0">
704
+ <col align="left" valign="top">
705
+ <tbody>
706
+ <tr>
707
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
708
+ <td>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>
709
+ </td>
710
+ </tr>
711
+ <tr>
712
+ <td><p><span class="term"><em class="parameter"><code>x0</code></em> :</span></p></td>
713
+ <td>return value for the x coordinate of the first point, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
714
+ </td>
715
+ </tr>
716
+ <tr>
717
+ <td><p><span class="term"><em class="parameter"><code>y0</code></em> :</span></p></td>
718
+ <td>return value for the y coordinate of the first point, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
719
+ </td>
720
+ </tr>
721
+ <tr>
722
+ <td><p><span class="term"><em class="parameter"><code>x1</code></em> :</span></p></td>
723
+ <td>return value for the x coordinate of the second point, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
724
+ </td>
725
+ </tr>
726
+ <tr>
727
+ <td><p><span class="term"><em class="parameter"><code>y1</code></em> :</span></p></td>
728
+ <td>return value for the y coordinate of the second point, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
729
+ </td>
730
+ </tr>
731
+ <tr>
732
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
733
+ <td>
734
+ <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-SUCCESS:CAPS"><code class="literal">CAIRO_STATUS_SUCCESS</code></a>, or
735
+ <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a> if <em class="parameter"><code>pattern</code></em> is not a linear
736
+ gradient pattern.</td>
737
+ </tr>
738
+ </tbody>
739
+ </table></div>
740
+ <p class="since">Since 1.4</p>
741
+ </div>
742
+ <hr>
743
+ <div class="refsect2">
744
+ <a name="cairo-pattern-create-radial"></a><h3>cairo_pattern_create_radial ()</h3>
745
+ <pre class="programlisting"><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="returnvalue">cairo_pattern_t</span></a> * cairo_pattern_create_radial (<em class="parameter"><code><span class="type">double</span> cx0</code></em>,
746
+ <em class="parameter"><code><span class="type">double</span> cy0</code></em>,
747
+ <em class="parameter"><code><span class="type">double</span> radius0</code></em>,
748
+ <em class="parameter"><code><span class="type">double</span> cx1</code></em>,
749
+ <em class="parameter"><code><span class="type">double</span> cy1</code></em>,
750
+ <em class="parameter"><code><span class="type">double</span> radius1</code></em>);</pre>
751
+ <p>
752
+ Creates a new radial gradient <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> between the two
753
+ circles defined by (cx0, cy0, radius0) and (cx1, cy1, radius1). Before using the
754
+ gradient pattern, a number of color stops should be defined using
755
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-add-color-stop-rgb" title="cairo_pattern_add_color_stop_rgb ()"><code class="function">cairo_pattern_add_color_stop_rgb()</code></a> or
756
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-add-color-stop-rgba" title="cairo_pattern_add_color_stop_rgba ()"><code class="function">cairo_pattern_add_color_stop_rgba()</code></a>.
757
+ </p>
758
+ <p>
759
+ Note: The coordinates here are in pattern space. For a new pattern,
760
+ pattern space is identical to user space, but the relationship
761
+ between the spaces can be changed with <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-set-matrix" title="cairo_pattern_set_matrix ()"><code class="function">cairo_pattern_set_matrix()</code></a>.
762
+ </p>
763
+ <div class="variablelist"><table border="0">
764
+ <col align="left" valign="top">
765
+ <tbody>
766
+ <tr>
767
+ <td><p><span class="term"><em class="parameter"><code>cx0</code></em> :</span></p></td>
768
+ <td>x coordinate for the center of the start circle</td>
769
+ </tr>
770
+ <tr>
771
+ <td><p><span class="term"><em class="parameter"><code>cy0</code></em> :</span></p></td>
772
+ <td>y coordinate for the center of the start circle</td>
773
+ </tr>
774
+ <tr>
775
+ <td><p><span class="term"><em class="parameter"><code>radius0</code></em> :</span></p></td>
776
+ <td>radius of the start circle</td>
777
+ </tr>
778
+ <tr>
779
+ <td><p><span class="term"><em class="parameter"><code>cx1</code></em> :</span></p></td>
780
+ <td>x coordinate for the center of the end circle</td>
781
+ </tr>
782
+ <tr>
783
+ <td><p><span class="term"><em class="parameter"><code>cy1</code></em> :</span></p></td>
784
+ <td>y coordinate for the center of the end circle</td>
785
+ </tr>
786
+ <tr>
787
+ <td><p><span class="term"><em class="parameter"><code>radius1</code></em> :</span></p></td>
788
+ <td>radius of the end circle</td>
789
+ </tr>
790
+ <tr>
791
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
792
+ <td>the newly created <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> if successful, or
793
+ an error pattern in case of no memory. The caller owns the
794
+ returned object and should call <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-destroy" title="cairo_pattern_destroy ()"><code class="function">cairo_pattern_destroy()</code></a> when
795
+ finished with it.
796
+ This function will always return a valid pointer, but if an error
797
+ occurred the pattern status will be set to an error. To inspect
798
+ the status of a pattern use <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-status" title="cairo_pattern_status ()"><code class="function">cairo_pattern_status()</code></a>.</td>
799
+ </tr>
800
+ </tbody>
801
+ </table></div>
802
+ <p class="since">Since 1.0</p>
803
+ </div>
804
+ <hr>
805
+ <div class="refsect2">
806
+ <a name="cairo-pattern-get-radial-circles"></a><h3>cairo_pattern_get_radial_circles ()</h3>
807
+ <pre class="programlisting"><a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a> cairo_pattern_get_radial_circles (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
808
+ <em class="parameter"><code><span class="type">double</span> *x0</code></em>,
809
+ <em class="parameter"><code><span class="type">double</span> *y0</code></em>,
810
+ <em class="parameter"><code><span class="type">double</span> *r0</code></em>,
811
+ <em class="parameter"><code><span class="type">double</span> *x1</code></em>,
812
+ <em class="parameter"><code><span class="type">double</span> *y1</code></em>,
813
+ <em class="parameter"><code><span class="type">double</span> *r1</code></em>);</pre>
814
+ <p>
815
+ Gets the gradient endpoint circles for a radial gradient, each
816
+ specified as a center coordinate and a radius.
817
+ </p>
818
+ <div class="variablelist"><table border="0">
819
+ <col align="left" valign="top">
820
+ <tbody>
821
+ <tr>
822
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
823
+ <td>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>
824
+ </td>
825
+ </tr>
826
+ <tr>
827
+ <td><p><span class="term"><em class="parameter"><code>x0</code></em> :</span></p></td>
828
+ <td>return value for the x coordinate of the center of the first circle, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
829
+ </td>
830
+ </tr>
831
+ <tr>
832
+ <td><p><span class="term"><em class="parameter"><code>y0</code></em> :</span></p></td>
833
+ <td>return value for the y coordinate of the center of the first circle, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
834
+ </td>
835
+ </tr>
836
+ <tr>
837
+ <td><p><span class="term"><em class="parameter"><code>r0</code></em> :</span></p></td>
838
+ <td>return value for the radius of the first circle, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
839
+ </td>
840
+ </tr>
841
+ <tr>
842
+ <td><p><span class="term"><em class="parameter"><code>x1</code></em> :</span></p></td>
843
+ <td>return value for the x coordinate of the center of the second circle, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
844
+ </td>
845
+ </tr>
846
+ <tr>
847
+ <td><p><span class="term"><em class="parameter"><code>y1</code></em> :</span></p></td>
848
+ <td>return value for the y coordinate of the center of the second circle, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
849
+ </td>
850
+ </tr>
851
+ <tr>
852
+ <td><p><span class="term"><em class="parameter"><code>r1</code></em> :</span></p></td>
853
+ <td>return value for the radius of the second circle, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
854
+ </td>
855
+ </tr>
856
+ <tr>
857
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
858
+ <td>
859
+ <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-SUCCESS:CAPS"><code class="literal">CAIRO_STATUS_SUCCESS</code></a>, or
860
+ <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a> if <em class="parameter"><code>pattern</code></em> is not a radial
861
+ gradient pattern.</td>
862
+ </tr>
863
+ </tbody>
864
+ </table></div>
865
+ <p class="since">Since 1.4</p>
866
+ </div>
867
+ <hr>
868
+ <div class="refsect2">
869
+ <a name="cairo-pattern-create-mesh"></a><h3>cairo_pattern_create_mesh ()</h3>
870
+ <pre class="programlisting"><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="returnvalue">cairo_pattern_t</span></a> * cairo_pattern_create_mesh (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
871
+ <p>
872
+ Create a new mesh pattern.
873
+ </p>
874
+ <p>
875
+ Mesh patterns are tensor-product patch meshes (type 7 shadings in
876
+ PDF). Mesh patterns may also be used to create other types of
877
+ shadings that are special cases of tensor-product patch meshes such
878
+ as Coons patch meshes (type 6 shading in PDF) and Gouraud-shaded
879
+ triangle meshes (type 4 and 5 shadings in PDF).
880
+ </p>
881
+ <p>
882
+ Mesh patterns consist of one or more tensor-product patches, which
883
+ should be defined before using the mesh pattern. Using a mesh
884
+ pattern with a partially defined patch as source or mask will put
885
+ the context in an error status with a status of
886
+ <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-INVALID-MESH-CONSTRUCTION:CAPS"><code class="literal">CAIRO_STATUS_INVALID_MESH_CONSTRUCTION</code></a>.
887
+ </p>
888
+ <p>
889
+ A tensor-product patch is defined by 4 Bézier curves (side 0, 1, 2,
890
+ 3) and by 4 additional control points (P0, P1, P2, P3) that provide
891
+ further control over the patch and complete the definition of the
892
+ tensor-product patch. The corner C0 is the first point of the
893
+ patch.
894
+ </p>
895
+ <p>
896
+ Degenerate sides are permitted so straight lines may be used. A
897
+ zero length line on one side may be used to create 3 sided patches.
898
+ </p>
899
+ <p>
900
+ </p>
901
+ <div class="informalexample"><pre class="screen">
902
+ C1 Side 1 C2
903
+ +---------------+
904
+ | |
905
+ | P1 P2 |
906
+ | |
907
+ Side 0 | | Side 2
908
+ | |
909
+ | |
910
+ | P0 P3 |
911
+ | |
912
+ +---------------+
913
+ C0 Side 3 C3
914
+ </pre></div>
915
+ <p>
916
+ </p>
917
+ <p>
918
+ Each patch is constructed by first calling
919
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-begin-patch" title="cairo_mesh_pattern_begin_patch ()"><code class="function">cairo_mesh_pattern_begin_patch()</code></a>, then <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-move-to" title="cairo_mesh_pattern_move_to ()"><code class="function">cairo_mesh_pattern_move_to()</code></a>
920
+ to specify the first point in the patch (C0). Then the sides are
921
+ specified with calls to <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-curve-to" title="cairo_mesh_pattern_curve_to ()"><code class="function">cairo_mesh_pattern_curve_to()</code></a> and
922
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-line-to" title="cairo_mesh_pattern_line_to ()"><code class="function">cairo_mesh_pattern_line_to()</code></a>.
923
+ </p>
924
+ <p>
925
+ The four additional control points (P0, P1, P2, P3) in a patch can
926
+ be specified with <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-set-control-point" title="cairo_mesh_pattern_set_control_point ()"><code class="function">cairo_mesh_pattern_set_control_point()</code></a>.
927
+ </p>
928
+ <p>
929
+ At each corner of the patch (C0, C1, C2, C3) a color may be
930
+ specified with <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-set-corner-color-rgb" title="cairo_mesh_pattern_set_corner_color_rgb ()"><code class="function">cairo_mesh_pattern_set_corner_color_rgb()</code></a> or
931
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-set-corner-color-rgba" title="cairo_mesh_pattern_set_corner_color_rgba ()"><code class="function">cairo_mesh_pattern_set_corner_color_rgba()</code></a>. Any corner whose color
932
+ is not explicitly specified defaults to transparent black.
933
+ </p>
934
+ <p>
935
+ A Coons patch is a special case of the tensor-product patch where
936
+ the control points are implicitly defined by the sides of the
937
+ patch. The default value for any control point not specified is the
938
+ implicit value for a Coons patch, i.e. if no control points are
939
+ specified the patch is a Coons patch.
940
+ </p>
941
+ <p>
942
+ A triangle is a special case of the tensor-product patch where the
943
+ control points are implicitly defined by the sides of the patch,
944
+ all the sides are lines and one of them has length 0, i.e. if the
945
+ patch is specified using just 3 lines, it is a triangle. If the
946
+ corners connected by the 0-length side have the same color, the
947
+ patch is a Gouraud-shaded triangle.
948
+ </p>
949
+ <p>
950
+ Patches may be oriented differently to the above diagram. For
951
+ example the first point could be at the top left. The diagram only
952
+ shows the relationship between the sides, corners and control
953
+ points. Regardless of where the first point is located, when
954
+ specifying colors, corner 0 will always be the first point, corner
955
+ 1 the point between side 0 and side 1 etc.
956
+ </p>
957
+ <p>
958
+ Calling <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-end-patch" title="cairo_mesh_pattern_end_patch ()"><code class="function">cairo_mesh_pattern_end_patch()</code></a> completes the current
959
+ patch. If less than 4 sides have been defined, the first missing
960
+ side is defined as a line from the current point to the first point
961
+ of the patch (C0) and the other sides are degenerate lines from C0
962
+ to C0. The corners between the added sides will all be coincident
963
+ with C0 of the patch and their color will be set to be the same as
964
+ the color of C0.
965
+ </p>
966
+ <p>
967
+ Additional patches may be added with additional calls to
968
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-begin-patch" title="cairo_mesh_pattern_begin_patch ()"><code class="function">cairo_mesh_pattern_begin_patch()</code></a>/<a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-end-patch" title="cairo_mesh_pattern_end_patch ()"><code class="function">cairo_mesh_pattern_end_patch()</code></a>.
969
+ </p>
970
+ <p>
971
+ </p>
972
+ <div class="informalexample"><pre class="programlisting">
973
+ cairo_pattern_t *pattern = cairo_pattern_create_mesh ();
974
+
975
+ /* Add a Coons patch */
976
+ cairo_mesh_pattern_begin_patch (pattern);
977
+ cairo_mesh_pattern_move_to (pattern, 0, 0);
978
+ cairo_mesh_pattern_curve_to (pattern, 30, -30, 60, 30, 100, 0);
979
+ cairo_mesh_pattern_curve_to (pattern, 60, 30, 130, 60, 100, 100);
980
+ cairo_mesh_pattern_curve_to (pattern, 60, 70, 30, 130, 0, 100);
981
+ cairo_mesh_pattern_curve_to (pattern, 30, 70, -30, 30, 0, 0);
982
+ cairo_mesh_pattern_set_corner_color_rgb (pattern, 0, 1, 0, 0);
983
+ cairo_mesh_pattern_set_corner_color_rgb (pattern, 1, 0, 1, 0);
984
+ cairo_mesh_pattern_set_corner_color_rgb (pattern, 2, 0, 0, 1);
985
+ cairo_mesh_pattern_set_corner_color_rgb (pattern, 3, 1, 1, 0);
986
+ cairo_mesh_pattern_end_patch (pattern);
987
+
988
+ /* Add a Gouraud-shaded triangle */
989
+ cairo_mesh_pattern_begin_patch (pattern)
990
+ cairo_mesh_pattern_move_to (pattern, 100, 100);
991
+ cairo_mesh_pattern_line_to (pattern, 130, 130);
992
+ cairo_mesh_pattern_line_to (pattern, 130, 70);
993
+ cairo_mesh_pattern_set_corner_color_rgb (pattern, 0, 1, 0, 0);
994
+ cairo_mesh_pattern_set_corner_color_rgb (pattern, 1, 0, 1, 0);
995
+ cairo_mesh_pattern_set_corner_color_rgb (pattern, 2, 0, 0, 1);
996
+ cairo_mesh_pattern_end_patch (pattern)
997
+ </pre></div>
998
+ <p>
999
+ </p>
1000
+ <p>
1001
+ When two patches overlap, the last one that has been added is drawn
1002
+ over the first one.
1003
+ </p>
1004
+ <p>
1005
+ When a patch folds over itself, points are sorted depending on
1006
+ their parameter coordinates inside the patch. The v coordinate
1007
+ ranges from 0 to 1 when moving from side 3 to side 1; the u
1008
+ coordinate ranges from 0 to 1 when going from side 0 to side
1009
+ 2. Points with higher v coordinate hide points with lower v
1010
+ coordinate. When two points have the same v coordinate, the one
1011
+ with higher u coordinate is above. This means that points nearer to
1012
+ side 1 are above points nearer to side 3; when this is not
1013
+ sufficient to decide which point is above (for example when both
1014
+ points belong to side 1 or side 3) points nearer to side 2 are
1015
+ above points nearer to side 0.
1016
+ </p>
1017
+ <p>
1018
+ For a complete definition of tensor-product patches, see the PDF
1019
+ specification (ISO32000), which describes the parametrization in
1020
+ detail.
1021
+ </p>
1022
+ <p>
1023
+ Note: The coordinates are always in pattern space. For a new
1024
+ pattern, pattern space is identical to user space, but the
1025
+ relationship between the spaces can be changed with
1026
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-set-matrix" title="cairo_pattern_set_matrix ()"><code class="function">cairo_pattern_set_matrix()</code></a>.
1027
+ </p>
1028
+ <div class="variablelist"><table border="0">
1029
+ <col align="left" valign="top">
1030
+ <tbody><tr>
1031
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1032
+ <td>the newly created <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> if successful, or
1033
+ an error pattern in case of no memory. The caller owns the returned
1034
+ object and should call <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-destroy" title="cairo_pattern_destroy ()"><code class="function">cairo_pattern_destroy()</code></a> when finished with
1035
+ it.
1036
+ This function will always return a valid pointer, but if an error
1037
+ occurred the pattern status will be set to an error. To inspect the
1038
+ status of a pattern use <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-status" title="cairo_pattern_status ()"><code class="function">cairo_pattern_status()</code></a>.</td>
1039
+ </tr></tbody>
1040
+ </table></div>
1041
+ <p class="since">Since 1.12</p>
1042
+ </div>
1043
+ <hr>
1044
+ <div class="refsect2">
1045
+ <a name="cairo-mesh-pattern-begin-patch"></a><h3>cairo_mesh_pattern_begin_patch ()</h3>
1046
+ <pre class="programlisting"><span class="returnvalue">void</span> cairo_mesh_pattern_begin_patch (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>);</pre>
1047
+ <p>
1048
+ Begin a patch in a mesh pattern.
1049
+ </p>
1050
+ <p>
1051
+ After calling this function, the patch shape should be defined with
1052
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-move-to" title="cairo_mesh_pattern_move_to ()"><code class="function">cairo_mesh_pattern_move_to()</code></a>, <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-line-to" title="cairo_mesh_pattern_line_to ()"><code class="function">cairo_mesh_pattern_line_to()</code></a> and
1053
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-curve-to" title="cairo_mesh_pattern_curve_to ()"><code class="function">cairo_mesh_pattern_curve_to()</code></a>.
1054
+ </p>
1055
+ <p>
1056
+ After defining the patch, <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-end-patch" title="cairo_mesh_pattern_end_patch ()"><code class="function">cairo_mesh_pattern_end_patch()</code></a> must be
1057
+ called before using <em class="parameter"><code>pattern</code></em> as a source or mask.
1058
+ </p>
1059
+ <p>
1060
+ Note: If <em class="parameter"><code>pattern</code></em> is not a mesh pattern then <em class="parameter"><code>pattern</code></em> will be put
1061
+ into an error status with a status of
1062
+ <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a>. If <em class="parameter"><code>pattern</code></em> already has a
1063
+ current patch, it will be put into an error status with a status of
1064
+ <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-INVALID-MESH-CONSTRUCTION:CAPS"><code class="literal">CAIRO_STATUS_INVALID_MESH_CONSTRUCTION</code></a>.
1065
+ </p>
1066
+ <div class="variablelist"><table border="0">
1067
+ <col align="left" valign="top">
1068
+ <tbody><tr>
1069
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
1070
+ <td>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>
1071
+ </td>
1072
+ </tr></tbody>
1073
+ </table></div>
1074
+ <p class="since">Since 1.12</p>
1075
+ </div>
1076
+ <hr>
1077
+ <div class="refsect2">
1078
+ <a name="cairo-mesh-pattern-end-patch"></a><h3>cairo_mesh_pattern_end_patch ()</h3>
1079
+ <pre class="programlisting"><span class="returnvalue">void</span> cairo_mesh_pattern_end_patch (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>);</pre>
1080
+ <p>
1081
+ Indicates the end of the current patch in a mesh pattern.
1082
+ </p>
1083
+ <p>
1084
+ If the current patch has less than 4 sides, it is closed with a
1085
+ straight line from the current point to the first point of the
1086
+ patch as if <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-line-to" title="cairo_mesh_pattern_line_to ()"><code class="function">cairo_mesh_pattern_line_to()</code></a> was used.
1087
+ </p>
1088
+ <p>
1089
+ Note: If <em class="parameter"><code>pattern</code></em> is not a mesh pattern then <em class="parameter"><code>pattern</code></em> will be put
1090
+ into an error status with a status of
1091
+ <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a>. If <em class="parameter"><code>pattern</code></em> has no current
1092
+ patch or the current patch has no current point, <em class="parameter"><code>pattern</code></em> will be
1093
+ put into an error status with a status of
1094
+ <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-INVALID-MESH-CONSTRUCTION:CAPS"><code class="literal">CAIRO_STATUS_INVALID_MESH_CONSTRUCTION</code></a>.
1095
+ </p>
1096
+ <div class="variablelist"><table border="0">
1097
+ <col align="left" valign="top">
1098
+ <tbody><tr>
1099
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
1100
+ <td>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>
1101
+ </td>
1102
+ </tr></tbody>
1103
+ </table></div>
1104
+ <p class="since">Since 1.12</p>
1105
+ </div>
1106
+ <hr>
1107
+ <div class="refsect2">
1108
+ <a name="cairo-mesh-pattern-move-to"></a><h3>cairo_mesh_pattern_move_to ()</h3>
1109
+ <pre class="programlisting"><span class="returnvalue">void</span> cairo_mesh_pattern_move_to (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
1110
+ <em class="parameter"><code><span class="type">double</span> x</code></em>,
1111
+ <em class="parameter"><code><span class="type">double</span> y</code></em>);</pre>
1112
+ <p>
1113
+ Define the first point of the current patch in a mesh pattern.
1114
+ </p>
1115
+ <p>
1116
+ After this call the current point will be (<em class="parameter"><code>x</code></em>, <em class="parameter"><code>y</code></em>).
1117
+ </p>
1118
+ <p>
1119
+ Note: If <em class="parameter"><code>pattern</code></em> is not a mesh pattern then <em class="parameter"><code>pattern</code></em> will be put
1120
+ into an error status with a status of
1121
+ <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a>. If <em class="parameter"><code>pattern</code></em> has no current
1122
+ patch or the current patch already has at least one side, <em class="parameter"><code>pattern</code></em>
1123
+ will be put into an error status with a status of
1124
+ <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-INVALID-MESH-CONSTRUCTION:CAPS"><code class="literal">CAIRO_STATUS_INVALID_MESH_CONSTRUCTION</code></a>.
1125
+ </p>
1126
+ <div class="variablelist"><table border="0">
1127
+ <col align="left" valign="top">
1128
+ <tbody>
1129
+ <tr>
1130
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
1131
+ <td>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>
1132
+ </td>
1133
+ </tr>
1134
+ <tr>
1135
+ <td><p><span class="term"><em class="parameter"><code>x</code></em> :</span></p></td>
1136
+ <td>the X coordinate of the new position</td>
1137
+ </tr>
1138
+ <tr>
1139
+ <td><p><span class="term"><em class="parameter"><code>y</code></em> :</span></p></td>
1140
+ <td>the Y coordinate of the new position</td>
1141
+ </tr>
1142
+ </tbody>
1143
+ </table></div>
1144
+ <p class="since">Since 1.12</p>
1145
+ </div>
1146
+ <hr>
1147
+ <div class="refsect2">
1148
+ <a name="cairo-mesh-pattern-line-to"></a><h3>cairo_mesh_pattern_line_to ()</h3>
1149
+ <pre class="programlisting"><span class="returnvalue">void</span> cairo_mesh_pattern_line_to (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
1150
+ <em class="parameter"><code><span class="type">double</span> x</code></em>,
1151
+ <em class="parameter"><code><span class="type">double</span> y</code></em>);</pre>
1152
+ <p>
1153
+ Adds a line to the current patch from the current point to position
1154
+ (<em class="parameter"><code>x</code></em>, <em class="parameter"><code>y</code></em>) in pattern-space coordinates.
1155
+ </p>
1156
+ <p>
1157
+ If there is no current point before the call to
1158
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-line-to" title="cairo_mesh_pattern_line_to ()"><code class="function">cairo_mesh_pattern_line_to()</code></a> this function will behave as
1159
+ cairo_mesh_pattern_move_to(<em class="parameter"><code>pattern</code></em>, <em class="parameter"><code>x</code></em>, <em class="parameter"><code>y</code></em>).
1160
+ </p>
1161
+ <p>
1162
+ After this call the current point will be (<em class="parameter"><code>x</code></em>, <em class="parameter"><code>y</code></em>).
1163
+ </p>
1164
+ <p>
1165
+ Note: If <em class="parameter"><code>pattern</code></em> is not a mesh pattern then <em class="parameter"><code>pattern</code></em> will be put
1166
+ into an error status with a status of
1167
+ <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a>. If <em class="parameter"><code>pattern</code></em> has no current
1168
+ patch or the current patch already has 4 sides, <em class="parameter"><code>pattern</code></em> will be
1169
+ put into an error status with a status of
1170
+ <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-INVALID-MESH-CONSTRUCTION:CAPS"><code class="literal">CAIRO_STATUS_INVALID_MESH_CONSTRUCTION</code></a>.
1171
+ </p>
1172
+ <div class="variablelist"><table border="0">
1173
+ <col align="left" valign="top">
1174
+ <tbody>
1175
+ <tr>
1176
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
1177
+ <td>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>
1178
+ </td>
1179
+ </tr>
1180
+ <tr>
1181
+ <td><p><span class="term"><em class="parameter"><code>x</code></em> :</span></p></td>
1182
+ <td>the X coordinate of the end of the new line</td>
1183
+ </tr>
1184
+ <tr>
1185
+ <td><p><span class="term"><em class="parameter"><code>y</code></em> :</span></p></td>
1186
+ <td>the Y coordinate of the end of the new line</td>
1187
+ </tr>
1188
+ </tbody>
1189
+ </table></div>
1190
+ <p class="since">Since 1.12</p>
1191
+ </div>
1192
+ <hr>
1193
+ <div class="refsect2">
1194
+ <a name="cairo-mesh-pattern-curve-to"></a><h3>cairo_mesh_pattern_curve_to ()</h3>
1195
+ <pre class="programlisting"><span class="returnvalue">void</span> cairo_mesh_pattern_curve_to (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
1196
+ <em class="parameter"><code><span class="type">double</span> x1</code></em>,
1197
+ <em class="parameter"><code><span class="type">double</span> y1</code></em>,
1198
+ <em class="parameter"><code><span class="type">double</span> x2</code></em>,
1199
+ <em class="parameter"><code><span class="type">double</span> y2</code></em>,
1200
+ <em class="parameter"><code><span class="type">double</span> x3</code></em>,
1201
+ <em class="parameter"><code><span class="type">double</span> y3</code></em>);</pre>
1202
+ <p>
1203
+ Adds a cubic Bézier spline to the current patch from the current
1204
+ point to position (<em class="parameter"><code>x3</code></em>, <em class="parameter"><code>y3</code></em>) in pattern-space coordinates, using
1205
+ (<em class="parameter"><code>x1</code></em>, <em class="parameter"><code>y1</code></em>) and (<em class="parameter"><code>x2</code></em>, <em class="parameter"><code>y2</code></em>) as the control points.
1206
+ </p>
1207
+ <p>
1208
+ If the current patch has no current point before the call to
1209
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-curve-to" title="cairo_mesh_pattern_curve_to ()"><code class="function">cairo_mesh_pattern_curve_to()</code></a>, this function will behave as if
1210
+ preceded by a call to cairo_mesh_pattern_move_to(<em class="parameter"><code>pattern</code></em>, <em class="parameter"><code>x1</code></em>,
1211
+ <em class="parameter"><code>y1</code></em>).
1212
+ </p>
1213
+ <p>
1214
+ After this call the current point will be (<em class="parameter"><code>x3</code></em>, <em class="parameter"><code>y3</code></em>).
1215
+ </p>
1216
+ <p>
1217
+ Note: If <em class="parameter"><code>pattern</code></em> is not a mesh pattern then <em class="parameter"><code>pattern</code></em> will be put
1218
+ into an error status with a status of
1219
+ <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a>. If <em class="parameter"><code>pattern</code></em> has no current
1220
+ patch or the current patch already has 4 sides, <em class="parameter"><code>pattern</code></em> will be
1221
+ put into an error status with a status of
1222
+ <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-INVALID-MESH-CONSTRUCTION:CAPS"><code class="literal">CAIRO_STATUS_INVALID_MESH_CONSTRUCTION</code></a>.
1223
+ </p>
1224
+ <div class="variablelist"><table border="0">
1225
+ <col align="left" valign="top">
1226
+ <tbody>
1227
+ <tr>
1228
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
1229
+ <td>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>
1230
+ </td>
1231
+ </tr>
1232
+ <tr>
1233
+ <td><p><span class="term"><em class="parameter"><code>x1</code></em> :</span></p></td>
1234
+ <td>the X coordinate of the first control point</td>
1235
+ </tr>
1236
+ <tr>
1237
+ <td><p><span class="term"><em class="parameter"><code>y1</code></em> :</span></p></td>
1238
+ <td>the Y coordinate of the first control point</td>
1239
+ </tr>
1240
+ <tr>
1241
+ <td><p><span class="term"><em class="parameter"><code>x2</code></em> :</span></p></td>
1242
+ <td>the X coordinate of the second control point</td>
1243
+ </tr>
1244
+ <tr>
1245
+ <td><p><span class="term"><em class="parameter"><code>y2</code></em> :</span></p></td>
1246
+ <td>the Y coordinate of the second control point</td>
1247
+ </tr>
1248
+ <tr>
1249
+ <td><p><span class="term"><em class="parameter"><code>x3</code></em> :</span></p></td>
1250
+ <td>the X coordinate of the end of the curve</td>
1251
+ </tr>
1252
+ <tr>
1253
+ <td><p><span class="term"><em class="parameter"><code>y3</code></em> :</span></p></td>
1254
+ <td>the Y coordinate of the end of the curve</td>
1255
+ </tr>
1256
+ </tbody>
1257
+ </table></div>
1258
+ <p class="since">Since 1.12</p>
1259
+ </div>
1260
+ <hr>
1261
+ <div class="refsect2">
1262
+ <a name="cairo-mesh-pattern-set-control-point"></a><h3>cairo_mesh_pattern_set_control_point ()</h3>
1263
+ <pre class="programlisting"><span class="returnvalue">void</span> cairo_mesh_pattern_set_control_point
1264
+ (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
1265
+ <em class="parameter"><code>unsigned <span class="type">int</span> point_num</code></em>,
1266
+ <em class="parameter"><code><span class="type">double</span> x</code></em>,
1267
+ <em class="parameter"><code><span class="type">double</span> y</code></em>);</pre>
1268
+ <p>
1269
+ Set an internal control point of the current patch.
1270
+ </p>
1271
+ <p>
1272
+ Valid values for <em class="parameter"><code>point_num</code></em> are from 0 to 3 and identify the
1273
+ control points as explained in <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-create-mesh" title="cairo_pattern_create_mesh ()"><code class="function">cairo_pattern_create_mesh()</code></a>.
1274
+ </p>
1275
+ <p>
1276
+ Note: If <em class="parameter"><code>pattern</code></em> is not a mesh pattern then <em class="parameter"><code>pattern</code></em> will be put
1277
+ into an error status with a status of
1278
+ <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a>. If <em class="parameter"><code>point_num</code></em> is not valid,
1279
+ <em class="parameter"><code>pattern</code></em> will be put into an error status with a status of
1280
+ <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-INVALID-INDEX:CAPS"><code class="literal">CAIRO_STATUS_INVALID_INDEX</code></a>. If <em class="parameter"><code>pattern</code></em> has no current patch,
1281
+ <em class="parameter"><code>pattern</code></em> will be put into an error status with a status of
1282
+ <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-INVALID-MESH-CONSTRUCTION:CAPS"><code class="literal">CAIRO_STATUS_INVALID_MESH_CONSTRUCTION</code></a>.
1283
+ </p>
1284
+ <div class="variablelist"><table border="0">
1285
+ <col align="left" valign="top">
1286
+ <tbody>
1287
+ <tr>
1288
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
1289
+ <td>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>
1290
+ </td>
1291
+ </tr>
1292
+ <tr>
1293
+ <td><p><span class="term"><em class="parameter"><code>point_num</code></em> :</span></p></td>
1294
+ <td>the control point to set the position for</td>
1295
+ </tr>
1296
+ <tr>
1297
+ <td><p><span class="term"><em class="parameter"><code>x</code></em> :</span></p></td>
1298
+ <td>the X coordinate of the control point</td>
1299
+ </tr>
1300
+ <tr>
1301
+ <td><p><span class="term"><em class="parameter"><code>y</code></em> :</span></p></td>
1302
+ <td>the Y coordinate of the control point</td>
1303
+ </tr>
1304
+ </tbody>
1305
+ </table></div>
1306
+ <p class="since">Since 1.12</p>
1307
+ </div>
1308
+ <hr>
1309
+ <div class="refsect2">
1310
+ <a name="cairo-mesh-pattern-set-corner-color-rgb"></a><h3>cairo_mesh_pattern_set_corner_color_rgb ()</h3>
1311
+ <pre class="programlisting"><span class="returnvalue">void</span> cairo_mesh_pattern_set_corner_color_rgb
1312
+ (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
1313
+ <em class="parameter"><code>unsigned <span class="type">int</span> corner_num</code></em>,
1314
+ <em class="parameter"><code><span class="type">double</span> red</code></em>,
1315
+ <em class="parameter"><code><span class="type">double</span> green</code></em>,
1316
+ <em class="parameter"><code><span class="type">double</span> blue</code></em>);</pre>
1317
+ <p>
1318
+ Sets the color of a corner of the current patch in a mesh pattern.
1319
+ </p>
1320
+ <p>
1321
+ The color is specified in the same way as in <a class="link" href="cairo-cairo-t.html#cairo-set-source-rgb" title="cairo_set_source_rgb ()"><code class="function">cairo_set_source_rgb()</code></a>.
1322
+ </p>
1323
+ <p>
1324
+ Valid values for <em class="parameter"><code>corner_num</code></em> are from 0 to 3 and identify the
1325
+ corners as explained in <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-create-mesh" title="cairo_pattern_create_mesh ()"><code class="function">cairo_pattern_create_mesh()</code></a>.
1326
+ </p>
1327
+ <p>
1328
+ Note: If <em class="parameter"><code>pattern</code></em> is not a mesh pattern then <em class="parameter"><code>pattern</code></em> will be put
1329
+ into an error status with a status of
1330
+ <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a>. If <em class="parameter"><code>corner_num</code></em> is not valid,
1331
+ <em class="parameter"><code>pattern</code></em> will be put into an error status with a status of
1332
+ <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-INVALID-INDEX:CAPS"><code class="literal">CAIRO_STATUS_INVALID_INDEX</code></a>. If <em class="parameter"><code>pattern</code></em> has no current patch,
1333
+ <em class="parameter"><code>pattern</code></em> will be put into an error status with a status of
1334
+ <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-INVALID-MESH-CONSTRUCTION:CAPS"><code class="literal">CAIRO_STATUS_INVALID_MESH_CONSTRUCTION</code></a>.
1335
+ </p>
1336
+ <div class="variablelist"><table border="0">
1337
+ <col align="left" valign="top">
1338
+ <tbody>
1339
+ <tr>
1340
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
1341
+ <td>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>
1342
+ </td>
1343
+ </tr>
1344
+ <tr>
1345
+ <td><p><span class="term"><em class="parameter"><code>corner_num</code></em> :</span></p></td>
1346
+ <td>the corner to set the color for</td>
1347
+ </tr>
1348
+ <tr>
1349
+ <td><p><span class="term"><em class="parameter"><code>red</code></em> :</span></p></td>
1350
+ <td>red component of color</td>
1351
+ </tr>
1352
+ <tr>
1353
+ <td><p><span class="term"><em class="parameter"><code>green</code></em> :</span></p></td>
1354
+ <td>green component of color</td>
1355
+ </tr>
1356
+ <tr>
1357
+ <td><p><span class="term"><em class="parameter"><code>blue</code></em> :</span></p></td>
1358
+ <td>blue component of color</td>
1359
+ </tr>
1360
+ </tbody>
1361
+ </table></div>
1362
+ <p class="since">Since 1.12</p>
1363
+ </div>
1364
+ <hr>
1365
+ <div class="refsect2">
1366
+ <a name="cairo-mesh-pattern-set-corner-color-rgba"></a><h3>cairo_mesh_pattern_set_corner_color_rgba ()</h3>
1367
+ <pre class="programlisting"><span class="returnvalue">void</span> cairo_mesh_pattern_set_corner_color_rgba
1368
+ (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
1369
+ <em class="parameter"><code>unsigned <span class="type">int</span> corner_num</code></em>,
1370
+ <em class="parameter"><code><span class="type">double</span> red</code></em>,
1371
+ <em class="parameter"><code><span class="type">double</span> green</code></em>,
1372
+ <em class="parameter"><code><span class="type">double</span> blue</code></em>,
1373
+ <em class="parameter"><code><span class="type">double</span> alpha</code></em>);</pre>
1374
+ <p>
1375
+ Sets the color of a corner of the current patch in a mesh pattern.
1376
+ </p>
1377
+ <p>
1378
+ The color is specified in the same way as in <a class="link" href="cairo-cairo-t.html#cairo-set-source-rgba" title="cairo_set_source_rgba ()"><code class="function">cairo_set_source_rgba()</code></a>.
1379
+ </p>
1380
+ <p>
1381
+ Valid values for <em class="parameter"><code>corner_num</code></em> are from 0 to 3 and identify the
1382
+ corners as explained in <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-create-mesh" title="cairo_pattern_create_mesh ()"><code class="function">cairo_pattern_create_mesh()</code></a>.
1383
+ </p>
1384
+ <p>
1385
+ Note: If <em class="parameter"><code>pattern</code></em> is not a mesh pattern then <em class="parameter"><code>pattern</code></em> will be put
1386
+ into an error status with a status of
1387
+ <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a>. If <em class="parameter"><code>corner_num</code></em> is not valid,
1388
+ <em class="parameter"><code>pattern</code></em> will be put into an error status with a status of
1389
+ <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-INVALID-INDEX:CAPS"><code class="literal">CAIRO_STATUS_INVALID_INDEX</code></a>. If <em class="parameter"><code>pattern</code></em> has no current patch,
1390
+ <em class="parameter"><code>pattern</code></em> will be put into an error status with a status of
1391
+ <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-INVALID-MESH-CONSTRUCTION:CAPS"><code class="literal">CAIRO_STATUS_INVALID_MESH_CONSTRUCTION</code></a>.
1392
+ </p>
1393
+ <div class="variablelist"><table border="0">
1394
+ <col align="left" valign="top">
1395
+ <tbody>
1396
+ <tr>
1397
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
1398
+ <td>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>
1399
+ </td>
1400
+ </tr>
1401
+ <tr>
1402
+ <td><p><span class="term"><em class="parameter"><code>corner_num</code></em> :</span></p></td>
1403
+ <td>the corner to set the color for</td>
1404
+ </tr>
1405
+ <tr>
1406
+ <td><p><span class="term"><em class="parameter"><code>red</code></em> :</span></p></td>
1407
+ <td>red component of color</td>
1408
+ </tr>
1409
+ <tr>
1410
+ <td><p><span class="term"><em class="parameter"><code>green</code></em> :</span></p></td>
1411
+ <td>green component of color</td>
1412
+ </tr>
1413
+ <tr>
1414
+ <td><p><span class="term"><em class="parameter"><code>blue</code></em> :</span></p></td>
1415
+ <td>blue component of color</td>
1416
+ </tr>
1417
+ <tr>
1418
+ <td><p><span class="term"><em class="parameter"><code>alpha</code></em> :</span></p></td>
1419
+ <td>alpha component of color</td>
1420
+ </tr>
1421
+ </tbody>
1422
+ </table></div>
1423
+ <p class="since">Since 1.12</p>
1424
+ </div>
1425
+ <hr>
1426
+ <div class="refsect2">
1427
+ <a name="cairo-mesh-pattern-get-patch-count"></a><h3>cairo_mesh_pattern_get_patch_count ()</h3>
1428
+ <pre class="programlisting"><a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a> cairo_mesh_pattern_get_patch_count (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
1429
+ <em class="parameter"><code>unsigned <span class="type">int</span> *count</code></em>);</pre>
1430
+ <p>
1431
+ Gets the number of patches specified in the given mesh pattern.
1432
+ </p>
1433
+ <p>
1434
+ The number only includes patches which have been finished by
1435
+ calling <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-end-patch" title="cairo_mesh_pattern_end_patch ()"><code class="function">cairo_mesh_pattern_end_patch()</code></a>. For example it will be 0
1436
+ during the definition of the first patch.
1437
+ </p>
1438
+ <div class="variablelist"><table border="0">
1439
+ <col align="left" valign="top">
1440
+ <tbody>
1441
+ <tr>
1442
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
1443
+ <td>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>
1444
+ </td>
1445
+ </tr>
1446
+ <tr>
1447
+ <td><p><span class="term"><em class="parameter"><code>count</code></em> :</span></p></td>
1448
+ <td>return value for the number patches, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
1449
+ </td>
1450
+ </tr>
1451
+ <tr>
1452
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1453
+ <td>
1454
+ <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-SUCCESS:CAPS"><code class="literal">CAIRO_STATUS_SUCCESS</code></a>, or
1455
+ <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a> if <em class="parameter"><code>pattern</code></em> is not a mesh
1456
+ pattern.</td>
1457
+ </tr>
1458
+ </tbody>
1459
+ </table></div>
1460
+ <p class="since">Since 1.12</p>
1461
+ </div>
1462
+ <hr>
1463
+ <div class="refsect2">
1464
+ <a name="cairo-mesh-pattern-get-path"></a><h3>cairo_mesh_pattern_get_path ()</h3>
1465
+ <pre class="programlisting"><a class="link" href="cairo-Paths.html#cairo-path-t" title="cairo_path_t"><span class="returnvalue">cairo_path_t</span></a> * cairo_mesh_pattern_get_path (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
1466
+ <em class="parameter"><code>unsigned <span class="type">int</span> patch_num</code></em>);</pre>
1467
+ <p>
1468
+ Gets path defining the patch <em class="parameter"><code>patch_num</code></em> for a mesh
1469
+ pattern.
1470
+ </p>
1471
+ <p>
1472
+ <em class="parameter"><code>patch_num</code></em> can range from 0 to n-1 where n is the number returned by
1473
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-get-patch-count" title="cairo_mesh_pattern_get_patch_count ()"><code class="function">cairo_mesh_pattern_get_patch_count()</code></a>.
1474
+ </p>
1475
+ <div class="variablelist"><table border="0">
1476
+ <col align="left" valign="top">
1477
+ <tbody>
1478
+ <tr>
1479
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
1480
+ <td>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>
1481
+ </td>
1482
+ </tr>
1483
+ <tr>
1484
+ <td><p><span class="term"><em class="parameter"><code>patch_num</code></em> :</span></p></td>
1485
+ <td>the patch number to return data for</td>
1486
+ </tr>
1487
+ <tr>
1488
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1489
+ <td>the path defining the patch, or a path with status
1490
+ <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-INVALID-INDEX:CAPS"><code class="literal">CAIRO_STATUS_INVALID_INDEX</code></a> if <em class="parameter"><code>patch_num</code></em> or <em class="parameter"><code>point_num</code></em> is not
1491
+ valid for <em class="parameter"><code>pattern</code></em>. If <em class="parameter"><code>pattern</code></em> is not a mesh pattern, a path with
1492
+ status <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a> is returned.</td>
1493
+ </tr>
1494
+ </tbody>
1495
+ </table></div>
1496
+ <p class="since">Since 1.12</p>
1497
+ </div>
1498
+ <hr>
1499
+ <div class="refsect2">
1500
+ <a name="cairo-mesh-pattern-get-control-point"></a><h3>cairo_mesh_pattern_get_control_point ()</h3>
1501
+ <pre class="programlisting"><a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a> cairo_mesh_pattern_get_control_point
1502
+ (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
1503
+ <em class="parameter"><code>unsigned <span class="type">int</span> patch_num</code></em>,
1504
+ <em class="parameter"><code>unsigned <span class="type">int</span> point_num</code></em>,
1505
+ <em class="parameter"><code><span class="type">double</span> *x</code></em>,
1506
+ <em class="parameter"><code><span class="type">double</span> *y</code></em>);</pre>
1507
+ <p>
1508
+ Gets the control point <em class="parameter"><code>point_num</code></em> of patch <em class="parameter"><code>patch_num</code></em> for a mesh
1509
+ pattern.
1510
+ </p>
1511
+ <p>
1512
+ <em class="parameter"><code>patch_num</code></em> can range from 0 to n-1 where n is the number returned by
1513
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-get-patch-count" title="cairo_mesh_pattern_get_patch_count ()"><code class="function">cairo_mesh_pattern_get_patch_count()</code></a>.
1514
+ </p>
1515
+ <p>
1516
+ Valid values for <em class="parameter"><code>point_num</code></em> are from 0 to 3 and identify the
1517
+ control points as explained in <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-create-mesh" title="cairo_pattern_create_mesh ()"><code class="function">cairo_pattern_create_mesh()</code></a>.
1518
+ </p>
1519
+ <div class="variablelist"><table border="0">
1520
+ <col align="left" valign="top">
1521
+ <tbody>
1522
+ <tr>
1523
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
1524
+ <td>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>
1525
+ </td>
1526
+ </tr>
1527
+ <tr>
1528
+ <td><p><span class="term"><em class="parameter"><code>patch_num</code></em> :</span></p></td>
1529
+ <td>the patch number to return data for</td>
1530
+ </tr>
1531
+ <tr>
1532
+ <td><p><span class="term"><em class="parameter"><code>point_num</code></em> :</span></p></td>
1533
+ <td>the control point number to return data for</td>
1534
+ </tr>
1535
+ <tr>
1536
+ <td><p><span class="term"><em class="parameter"><code>x</code></em> :</span></p></td>
1537
+ <td>return value for the x coordinate of the control point, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
1538
+ </td>
1539
+ </tr>
1540
+ <tr>
1541
+ <td><p><span class="term"><em class="parameter"><code>y</code></em> :</span></p></td>
1542
+ <td>return value for the y coordinate of the control point, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
1543
+ </td>
1544
+ </tr>
1545
+ <tr>
1546
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1547
+ <td>
1548
+ <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-INVALID-INDEX:CAPS"><code class="literal">CAIRO_STATUS_INVALID_INDEX</code></a>
1549
+ if <em class="parameter"><code>patch_num</code></em> or <em class="parameter"><code>point_num</code></em> is not valid for <em class="parameter"><code>pattern</code></em>. If <em class="parameter"><code>pattern</code></em>
1550
+ is not a mesh pattern, <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a> is
1551
+ returned.</td>
1552
+ </tr>
1553
+ </tbody>
1554
+ </table></div>
1555
+ <p class="since">Since 1.12</p>
1556
+ </div>
1557
+ <hr>
1558
+ <div class="refsect2">
1559
+ <a name="cairo-mesh-pattern-get-corner-color-rgba"></a><h3>cairo_mesh_pattern_get_corner_color_rgba ()</h3>
1560
+ <pre class="programlisting"><a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a> cairo_mesh_pattern_get_corner_color_rgba
1561
+ (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
1562
+ <em class="parameter"><code>unsigned <span class="type">int</span> patch_num</code></em>,
1563
+ <em class="parameter"><code>unsigned <span class="type">int</span> corner_num</code></em>,
1564
+ <em class="parameter"><code><span class="type">double</span> *red</code></em>,
1565
+ <em class="parameter"><code><span class="type">double</span> *green</code></em>,
1566
+ <em class="parameter"><code><span class="type">double</span> *blue</code></em>,
1567
+ <em class="parameter"><code><span class="type">double</span> *alpha</code></em>);</pre>
1568
+ <p>
1569
+ Gets the color information in corner <em class="parameter"><code>corner_num</code></em> of patch
1570
+ <em class="parameter"><code>patch_num</code></em> for a mesh pattern.
1571
+ </p>
1572
+ <p>
1573
+ <em class="parameter"><code>patch_num</code></em> can range from 0 to n-1 where n is the number returned by
1574
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-get-patch-count" title="cairo_mesh_pattern_get_patch_count ()"><code class="function">cairo_mesh_pattern_get_patch_count()</code></a>.
1575
+ </p>
1576
+ <p>
1577
+ Valid values for <em class="parameter"><code>corner_num</code></em> are from 0 to 3 and identify the
1578
+ corners as explained in <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-create-mesh" title="cairo_pattern_create_mesh ()"><code class="function">cairo_pattern_create_mesh()</code></a>.
1579
+ </p>
1580
+ <div class="variablelist"><table border="0">
1581
+ <col align="left" valign="top">
1582
+ <tbody>
1583
+ <tr>
1584
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
1585
+ <td>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>
1586
+ </td>
1587
+ </tr>
1588
+ <tr>
1589
+ <td><p><span class="term"><em class="parameter"><code>patch_num</code></em> :</span></p></td>
1590
+ <td>the patch number to return data for</td>
1591
+ </tr>
1592
+ <tr>
1593
+ <td><p><span class="term"><em class="parameter"><code>corner_num</code></em> :</span></p></td>
1594
+ <td>the corner number to return data for</td>
1595
+ </tr>
1596
+ <tr>
1597
+ <td><p><span class="term"><em class="parameter"><code>red</code></em> :</span></p></td>
1598
+ <td>return value for red component of color, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
1599
+ </td>
1600
+ </tr>
1601
+ <tr>
1602
+ <td><p><span class="term"><em class="parameter"><code>green</code></em> :</span></p></td>
1603
+ <td>return value for green component of color, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
1604
+ </td>
1605
+ </tr>
1606
+ <tr>
1607
+ <td><p><span class="term"><em class="parameter"><code>blue</code></em> :</span></p></td>
1608
+ <td>return value for blue component of color, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
1609
+ </td>
1610
+ </tr>
1611
+ <tr>
1612
+ <td><p><span class="term"><em class="parameter"><code>alpha</code></em> :</span></p></td>
1613
+ <td>return value for alpha component of color, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
1614
+ </td>
1615
+ </tr>
1616
+ <tr>
1617
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1618
+ <td>
1619
+ <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-INVALID-INDEX:CAPS"><code class="literal">CAIRO_STATUS_INVALID_INDEX</code></a>
1620
+ if <em class="parameter"><code>patch_num</code></em> or <em class="parameter"><code>corner_num</code></em> is not valid for <em class="parameter"><code>pattern</code></em>. If
1621
+ <em class="parameter"><code>pattern</code></em> is not a mesh pattern, <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a>
1622
+ is returned.</td>
1623
+ </tr>
1624
+ </tbody>
1625
+ </table></div>
1626
+ <p class="since">Since 1.12</p>
1627
+ </div>
1628
+ <hr>
1629
+ <div class="refsect2">
1630
+ <a name="cairo-pattern-reference"></a><h3>cairo_pattern_reference ()</h3>
1631
+ <pre class="programlisting"><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="returnvalue">cairo_pattern_t</span></a> * cairo_pattern_reference (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>);</pre>
1632
+ <p>
1633
+ Increases the reference count on <em class="parameter"><code>pattern</code></em> by one. This prevents
1634
+ <em class="parameter"><code>pattern</code></em> from being destroyed until a matching call to
1635
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-destroy" title="cairo_pattern_destroy ()"><code class="function">cairo_pattern_destroy()</code></a> is made.
1636
+ </p>
1637
+ <p>
1638
+ The number of references to a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> can be get using
1639
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-get-reference-count" title="cairo_pattern_get_reference_count ()"><code class="function">cairo_pattern_get_reference_count()</code></a>.
1640
+ </p>
1641
+ <div class="variablelist"><table border="0">
1642
+ <col align="left" valign="top">
1643
+ <tbody>
1644
+ <tr>
1645
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
1646
+ <td>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>
1647
+ </td>
1648
+ </tr>
1649
+ <tr>
1650
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1651
+ <td>the referenced <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>.</td>
1652
+ </tr>
1653
+ </tbody>
1654
+ </table></div>
1655
+ <p class="since">Since 1.0</p>
1656
+ </div>
1657
+ <hr>
1658
+ <div class="refsect2">
1659
+ <a name="cairo-pattern-destroy"></a><h3>cairo_pattern_destroy ()</h3>
1660
+ <pre class="programlisting"><span class="returnvalue">void</span> cairo_pattern_destroy (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>);</pre>
1661
+ <p>
1662
+ Decreases the reference count on <em class="parameter"><code>pattern</code></em> by one. If the result is
1663
+ zero, then <em class="parameter"><code>pattern</code></em> and all associated resources are freed. See
1664
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-reference" title="cairo_pattern_reference ()"><code class="function">cairo_pattern_reference()</code></a>.
1665
+ </p>
1666
+ <div class="variablelist"><table border="0">
1667
+ <col align="left" valign="top">
1668
+ <tbody><tr>
1669
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
1670
+ <td>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>
1671
+ </td>
1672
+ </tr></tbody>
1673
+ </table></div>
1674
+ <p class="since">Since 1.0</p>
1675
+ </div>
1676
+ <hr>
1677
+ <div class="refsect2">
1678
+ <a name="cairo-pattern-status"></a><h3>cairo_pattern_status ()</h3>
1679
+ <pre class="programlisting"><a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a> cairo_pattern_status (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>);</pre>
1680
+ <p>
1681
+ Checks whether an error has previously occurred for this
1682
+ pattern.
1683
+ </p>
1684
+ <div class="variablelist"><table border="0">
1685
+ <col align="left" valign="top">
1686
+ <tbody>
1687
+ <tr>
1688
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
1689
+ <td>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>
1690
+ </td>
1691
+ </tr>
1692
+ <tr>
1693
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1694
+ <td>
1695
+ <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-SUCCESS:CAPS"><code class="literal">CAIRO_STATUS_SUCCESS</code></a>, <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-NO-MEMORY:CAPS"><code class="literal">CAIRO_STATUS_NO_MEMORY</code></a>,
1696
+ <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-INVALID-MATRIX:CAPS"><code class="literal">CAIRO_STATUS_INVALID_MATRIX</code></a>, <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></a>,
1697
+ or <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-INVALID-MESH-CONSTRUCTION:CAPS"><code class="literal">CAIRO_STATUS_INVALID_MESH_CONSTRUCTION</code></a>.</td>
1698
+ </tr>
1699
+ </tbody>
1700
+ </table></div>
1701
+ <p class="since">Since 1.0</p>
1702
+ </div>
1703
+ <hr>
1704
+ <div class="refsect2">
1705
+ <a name="cairo-extend-t"></a><h3>enum cairo_extend_t</h3>
1706
+ <pre class="programlisting">typedef enum {
1707
+ CAIRO_EXTEND_NONE,
1708
+ CAIRO_EXTEND_REPEAT,
1709
+ CAIRO_EXTEND_REFLECT,
1710
+ CAIRO_EXTEND_PAD
1711
+ } cairo_extend_t;
1712
+ </pre>
1713
+ <p>
1714
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-extend-t" title="enum cairo_extend_t"><span class="type">cairo_extend_t</span></a> is used to describe how pattern color/alpha will be
1715
+ determined for areas "outside" the pattern's natural area, (for
1716
+ example, outside the surface bounds or outside the gradient
1717
+ geometry).
1718
+ </p>
1719
+ <p>
1720
+ Mesh patterns are not affected by the extend mode.
1721
+ </p>
1722
+ <p>
1723
+ The default extend mode is <a class="link" href="cairo-cairo-pattern-t.html#CAIRO-EXTEND-NONE:CAPS"><code class="literal">CAIRO_EXTEND_NONE</code></a> for surface patterns
1724
+ and <a class="link" href="cairo-cairo-pattern-t.html#CAIRO-EXTEND-PAD:CAPS"><code class="literal">CAIRO_EXTEND_PAD</code></a> for gradient patterns.
1725
+ </p>
1726
+ <p>
1727
+ New entries may be added in future versions.
1728
+ </p>
1729
+ <div class="variablelist"><table border="0">
1730
+ <col align="left" valign="top">
1731
+ <tbody>
1732
+ <tr>
1733
+ <td><p><a name="CAIRO-EXTEND-NONE:CAPS"></a><span class="term"><code class="literal">CAIRO_EXTEND_NONE</code></span></p></td>
1734
+ <td>pixels outside of the source pattern
1735
+ are fully transparent (Since 1.0)
1736
+ </td>
1737
+ </tr>
1738
+ <tr>
1739
+ <td><p><a name="CAIRO-EXTEND-REPEAT:CAPS"></a><span class="term"><code class="literal">CAIRO_EXTEND_REPEAT</code></span></p></td>
1740
+ <td>the pattern is tiled by repeating (Since 1.0)
1741
+ </td>
1742
+ </tr>
1743
+ <tr>
1744
+ <td><p><a name="CAIRO-EXTEND-REFLECT:CAPS"></a><span class="term"><code class="literal">CAIRO_EXTEND_REFLECT</code></span></p></td>
1745
+ <td>the pattern is tiled by reflecting
1746
+ at the edges (Since 1.0; but only implemented for surface patterns since 1.6)
1747
+ </td>
1748
+ </tr>
1749
+ <tr>
1750
+ <td><p><a name="CAIRO-EXTEND-PAD:CAPS"></a><span class="term"><code class="literal">CAIRO_EXTEND_PAD</code></span></p></td>
1751
+ <td>pixels outside of the pattern copy
1752
+ the closest pixel from the source (Since 1.2; but only
1753
+ implemented for surface patterns since 1.6)
1754
+ </td>
1755
+ </tr>
1756
+ </tbody>
1757
+ </table></div>
1758
+ <p class="since">Since 1.0</p>
1759
+ </div>
1760
+ <hr>
1761
+ <div class="refsect2">
1762
+ <a name="cairo-pattern-set-extend"></a><h3>cairo_pattern_set_extend ()</h3>
1763
+ <pre class="programlisting"><span class="returnvalue">void</span> cairo_pattern_set_extend (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
1764
+ <em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-extend-t" title="enum cairo_extend_t"><span class="type">cairo_extend_t</span></a> extend</code></em>);</pre>
1765
+ <p>
1766
+ Sets the mode to be used for drawing outside the area of a pattern.
1767
+ See <a class="link" href="cairo-cairo-pattern-t.html#cairo-extend-t" title="enum cairo_extend_t"><span class="type">cairo_extend_t</span></a> for details on the semantics of each extend
1768
+ strategy.
1769
+ </p>
1770
+ <p>
1771
+ The default extend mode is <a class="link" href="cairo-cairo-pattern-t.html#CAIRO-EXTEND-NONE:CAPS"><code class="literal">CAIRO_EXTEND_NONE</code></a> for surface patterns
1772
+ and <a class="link" href="cairo-cairo-pattern-t.html#CAIRO-EXTEND-PAD:CAPS"><code class="literal">CAIRO_EXTEND_PAD</code></a> for gradient patterns.
1773
+ </p>
1774
+ <div class="variablelist"><table border="0">
1775
+ <col align="left" valign="top">
1776
+ <tbody>
1777
+ <tr>
1778
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
1779
+ <td>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>
1780
+ </td>
1781
+ </tr>
1782
+ <tr>
1783
+ <td><p><span class="term"><em class="parameter"><code>extend</code></em> :</span></p></td>
1784
+ <td>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-extend-t" title="enum cairo_extend_t"><span class="type">cairo_extend_t</span></a> describing how the area outside of the
1785
+ pattern will be drawn</td>
1786
+ </tr>
1787
+ </tbody>
1788
+ </table></div>
1789
+ <p class="since">Since 1.0</p>
1790
+ </div>
1791
+ <hr>
1792
+ <div class="refsect2">
1793
+ <a name="cairo-pattern-get-extend"></a><h3>cairo_pattern_get_extend ()</h3>
1794
+ <pre class="programlisting"><a class="link" href="cairo-cairo-pattern-t.html#cairo-extend-t" title="enum cairo_extend_t"><span class="returnvalue">cairo_extend_t</span></a> cairo_pattern_get_extend (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>);</pre>
1795
+ <p>
1796
+ Gets the current extend mode for a pattern. See <a class="link" href="cairo-cairo-pattern-t.html#cairo-extend-t" title="enum cairo_extend_t"><span class="type">cairo_extend_t</span></a>
1797
+ for details on the semantics of each extend strategy.
1798
+ </p>
1799
+ <div class="variablelist"><table border="0">
1800
+ <col align="left" valign="top">
1801
+ <tbody>
1802
+ <tr>
1803
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
1804
+ <td>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>
1805
+ </td>
1806
+ </tr>
1807
+ <tr>
1808
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1809
+ <td>the current extend strategy used for drawing the
1810
+ pattern.</td>
1811
+ </tr>
1812
+ </tbody>
1813
+ </table></div>
1814
+ <p class="since">Since 1.0</p>
1815
+ </div>
1816
+ <hr>
1817
+ <div class="refsect2">
1818
+ <a name="cairo-filter-t"></a><h3>enum cairo_filter_t</h3>
1819
+ <pre class="programlisting">typedef enum {
1820
+ CAIRO_FILTER_FAST,
1821
+ CAIRO_FILTER_GOOD,
1822
+ CAIRO_FILTER_BEST,
1823
+ CAIRO_FILTER_NEAREST,
1824
+ CAIRO_FILTER_BILINEAR,
1825
+ CAIRO_FILTER_GAUSSIAN
1826
+ } cairo_filter_t;
1827
+ </pre>
1828
+ <p>
1829
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-filter-t" title="enum cairo_filter_t"><span class="type">cairo_filter_t</span></a> is used to indicate what filtering should be
1830
+ applied when reading pixel values from patterns. See
1831
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-set-filter" title="cairo_pattern_set_filter ()"><code class="function">cairo_pattern_set_filter()</code></a> for indicating the desired filter to be
1832
+ used with a particular pattern.
1833
+ </p>
1834
+ <div class="variablelist"><table border="0">
1835
+ <col align="left" valign="top">
1836
+ <tbody>
1837
+ <tr>
1838
+ <td><p><a name="CAIRO-FILTER-FAST:CAPS"></a><span class="term"><code class="literal">CAIRO_FILTER_FAST</code></span></p></td>
1839
+ <td>A high-performance filter, with quality similar
1840
+ to <a class="link" href="cairo-cairo-pattern-t.html#CAIRO-FILTER-NEAREST:CAPS"><code class="literal">CAIRO_FILTER_NEAREST</code></a> (Since 1.0)
1841
+ </td>
1842
+ </tr>
1843
+ <tr>
1844
+ <td><p><a name="CAIRO-FILTER-GOOD:CAPS"></a><span class="term"><code class="literal">CAIRO_FILTER_GOOD</code></span></p></td>
1845
+ <td>A reasonable-performance filter, with quality
1846
+ similar to <a class="link" href="cairo-cairo-pattern-t.html#CAIRO-FILTER-BILINEAR:CAPS"><code class="literal">CAIRO_FILTER_BILINEAR</code></a> (Since 1.0)
1847
+ </td>
1848
+ </tr>
1849
+ <tr>
1850
+ <td><p><a name="CAIRO-FILTER-BEST:CAPS"></a><span class="term"><code class="literal">CAIRO_FILTER_BEST</code></span></p></td>
1851
+ <td>The highest-quality available, performance may
1852
+ not be suitable for interactive use. (Since 1.0)
1853
+ </td>
1854
+ </tr>
1855
+ <tr>
1856
+ <td><p><a name="CAIRO-FILTER-NEAREST:CAPS"></a><span class="term"><code class="literal">CAIRO_FILTER_NEAREST</code></span></p></td>
1857
+ <td>Nearest-neighbor filtering (Since 1.0)
1858
+ </td>
1859
+ </tr>
1860
+ <tr>
1861
+ <td><p><a name="CAIRO-FILTER-BILINEAR:CAPS"></a><span class="term"><code class="literal">CAIRO_FILTER_BILINEAR</code></span></p></td>
1862
+ <td>Linear interpolation in two dimensions (Since 1.0)
1863
+ </td>
1864
+ </tr>
1865
+ <tr>
1866
+ <td><p><a name="CAIRO-FILTER-GAUSSIAN:CAPS"></a><span class="term"><code class="literal">CAIRO_FILTER_GAUSSIAN</code></span></p></td>
1867
+ <td>This filter value is currently
1868
+ unimplemented, and should not be used in current code. (Since 1.0)
1869
+ </td>
1870
+ </tr>
1871
+ </tbody>
1872
+ </table></div>
1873
+ <p class="since">Since 1.0</p>
1874
+ </div>
1875
+ <hr>
1876
+ <div class="refsect2">
1877
+ <a name="cairo-pattern-set-filter"></a><h3>cairo_pattern_set_filter ()</h3>
1878
+ <pre class="programlisting"><span class="returnvalue">void</span> cairo_pattern_set_filter (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
1879
+ <em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-filter-t" title="enum cairo_filter_t"><span class="type">cairo_filter_t</span></a> filter</code></em>);</pre>
1880
+ <p>
1881
+ Sets the filter to be used for resizing when using this pattern.
1882
+ See <a class="link" href="cairo-cairo-pattern-t.html#cairo-filter-t" title="enum cairo_filter_t"><span class="type">cairo_filter_t</span></a> for details on each filter.
1883
+ </p>
1884
+ <p>
1885
+ * Note that you might want to control filtering even when you do not
1886
+ have an explicit <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> object, (for example when using
1887
+ <a class="link" href="cairo-cairo-t.html#cairo-set-source-surface" title="cairo_set_source_surface ()"><code class="function">cairo_set_source_surface()</code></a>). In these cases, it is convenient to
1888
+ use <a class="link" href="cairo-cairo-t.html#cairo-get-source" title="cairo_get_source ()"><code class="function">cairo_get_source()</code></a> to get access to the pattern that cairo
1889
+ creates implicitly. For example:
1890
+ </p>
1891
+ <p>
1892
+ </p>
1893
+ <div class="informalexample"><pre class="programlisting">
1894
+ cairo_set_source_surface (cr, image, x, y);
1895
+ cairo_pattern_set_filter (cairo_get_source (cr), CAIRO_FILTER_NEAREST);
1896
+ </pre></div>
1897
+ <p>
1898
+ </p>
1899
+ <div class="variablelist"><table border="0">
1900
+ <col align="left" valign="top">
1901
+ <tbody>
1902
+ <tr>
1903
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
1904
+ <td>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>
1905
+ </td>
1906
+ </tr>
1907
+ <tr>
1908
+ <td><p><span class="term"><em class="parameter"><code>filter</code></em> :</span></p></td>
1909
+ <td>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-filter-t" title="enum cairo_filter_t"><span class="type">cairo_filter_t</span></a> describing the filter to use for resizing
1910
+ the pattern</td>
1911
+ </tr>
1912
+ </tbody>
1913
+ </table></div>
1914
+ <p class="since">Since 1.0</p>
1915
+ </div>
1916
+ <hr>
1917
+ <div class="refsect2">
1918
+ <a name="cairo-pattern-get-filter"></a><h3>cairo_pattern_get_filter ()</h3>
1919
+ <pre class="programlisting"><a class="link" href="cairo-cairo-pattern-t.html#cairo-filter-t" title="enum cairo_filter_t"><span class="returnvalue">cairo_filter_t</span></a> cairo_pattern_get_filter (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>);</pre>
1920
+ <p>
1921
+ Gets the current filter for a pattern. See <a class="link" href="cairo-cairo-pattern-t.html#cairo-filter-t" title="enum cairo_filter_t"><span class="type">cairo_filter_t</span></a>
1922
+ for details on each filter.
1923
+ </p>
1924
+ <div class="variablelist"><table border="0">
1925
+ <col align="left" valign="top">
1926
+ <tbody>
1927
+ <tr>
1928
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
1929
+ <td>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>
1930
+ </td>
1931
+ </tr>
1932
+ <tr>
1933
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
1934
+ <td>the current filter used for resizing the pattern.</td>
1935
+ </tr>
1936
+ </tbody>
1937
+ </table></div>
1938
+ <p class="since">Since 1.0</p>
1939
+ </div>
1940
+ <hr>
1941
+ <div class="refsect2">
1942
+ <a name="cairo-pattern-set-matrix"></a><h3>cairo_pattern_set_matrix ()</h3>
1943
+ <pre class="programlisting"><span class="returnvalue">void</span> cairo_pattern_set_matrix (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
1944
+ <em class="parameter"><code>const <a class="link" href="cairo-cairo-matrix-t.html#cairo-matrix-t" title="cairo_matrix_t"><span class="type">cairo_matrix_t</span></a> *matrix</code></em>);</pre>
1945
+ <p>
1946
+ Sets the pattern's transformation matrix to <em class="parameter"><code>matrix</code></em>. This matrix is
1947
+ a transformation from user space to pattern space.
1948
+ </p>
1949
+ <p>
1950
+ When a pattern is first created it always has the identity matrix
1951
+ for its transformation matrix, which means that pattern space is
1952
+ initially identical to user space.
1953
+ </p>
1954
+ <p>
1955
+ Important: Please note that the direction of this transformation
1956
+ matrix is from user space to pattern space. This means that if you
1957
+ imagine the flow from a pattern to user space (and on to device
1958
+ space), then coordinates in that flow will be transformed by the
1959
+ inverse of the pattern matrix.
1960
+ </p>
1961
+ <p>
1962
+ For example, if you want to make a pattern appear twice as large as
1963
+ it does by default the correct code to use is:
1964
+ </p>
1965
+ <p>
1966
+ </p>
1967
+ <div class="informalexample"><pre class="programlisting">
1968
+ cairo_matrix_init_scale (&amp;matrix, 0.5, 0.5);
1969
+ cairo_pattern_set_matrix (pattern, &amp;matrix);
1970
+ </pre></div>
1971
+ <p>
1972
+ </p>
1973
+ <p>
1974
+ Meanwhile, using values of 2.0 rather than 0.5 in the code above
1975
+ would cause the pattern to appear at half of its default size.
1976
+ </p>
1977
+ <p>
1978
+ Also, please note the discussion of the user-space locking
1979
+ semantics of <a class="link" href="cairo-cairo-t.html#cairo-set-source" title="cairo_set_source ()"><code class="function">cairo_set_source()</code></a>.
1980
+ </p>
1981
+ <div class="variablelist"><table border="0">
1982
+ <col align="left" valign="top">
1983
+ <tbody>
1984
+ <tr>
1985
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
1986
+ <td>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>
1987
+ </td>
1988
+ </tr>
1989
+ <tr>
1990
+ <td><p><span class="term"><em class="parameter"><code>matrix</code></em> :</span></p></td>
1991
+ <td>a <a class="link" href="cairo-cairo-matrix-t.html#cairo-matrix-t" title="cairo_matrix_t"><span class="type">cairo_matrix_t</span></a>
1992
+ </td>
1993
+ </tr>
1994
+ </tbody>
1995
+ </table></div>
1996
+ <p class="since">Since 1.0</p>
1997
+ </div>
1998
+ <hr>
1999
+ <div class="refsect2">
2000
+ <a name="cairo-pattern-get-matrix"></a><h3>cairo_pattern_get_matrix ()</h3>
2001
+ <pre class="programlisting"><span class="returnvalue">void</span> cairo_pattern_get_matrix (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
2002
+ <em class="parameter"><code><a class="link" href="cairo-cairo-matrix-t.html#cairo-matrix-t" title="cairo_matrix_t"><span class="type">cairo_matrix_t</span></a> *matrix</code></em>);</pre>
2003
+ <p>
2004
+ Stores the pattern's transformation matrix into <em class="parameter"><code>matrix</code></em>.
2005
+ </p>
2006
+ <div class="variablelist"><table border="0">
2007
+ <col align="left" valign="top">
2008
+ <tbody>
2009
+ <tr>
2010
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
2011
+ <td>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>
2012
+ </td>
2013
+ </tr>
2014
+ <tr>
2015
+ <td><p><span class="term"><em class="parameter"><code>matrix</code></em> :</span></p></td>
2016
+ <td>return value for the matrix</td>
2017
+ </tr>
2018
+ </tbody>
2019
+ </table></div>
2020
+ <p class="since">Since 1.0</p>
2021
+ </div>
2022
+ <hr>
2023
+ <div class="refsect2">
2024
+ <a name="cairo-pattern-type-t"></a><h3>enum cairo_pattern_type_t</h3>
2025
+ <pre class="programlisting">typedef enum {
2026
+ CAIRO_PATTERN_TYPE_SOLID,
2027
+ CAIRO_PATTERN_TYPE_SURFACE,
2028
+ CAIRO_PATTERN_TYPE_LINEAR,
2029
+ CAIRO_PATTERN_TYPE_RADIAL,
2030
+ CAIRO_PATTERN_TYPE_MESH,
2031
+ CAIRO_PATTERN_TYPE_RASTER_SOURCE
2032
+ } cairo_pattern_type_t;
2033
+ </pre>
2034
+ <p>
2035
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-type-t" title="enum cairo_pattern_type_t"><span class="type">cairo_pattern_type_t</span></a> is used to describe the type of a given pattern.
2036
+ </p>
2037
+ <p>
2038
+ The type of a pattern is determined by the function used to create
2039
+ it. The <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-create-rgb" title="cairo_pattern_create_rgb ()"><code class="function">cairo_pattern_create_rgb()</code></a> and <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-create-rgba" title="cairo_pattern_create_rgba ()"><code class="function">cairo_pattern_create_rgba()</code></a>
2040
+ functions create SOLID patterns. The remaining
2041
+ cairo_pattern_create functions map to pattern types in obvious
2042
+ ways.
2043
+ </p>
2044
+ <p>
2045
+ The pattern type can be queried with <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-get-type" title="cairo_pattern_get_type ()"><code class="function">cairo_pattern_get_type()</code></a>
2046
+ </p>
2047
+ <p>
2048
+ Most <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> functions can be called with a pattern of any
2049
+ type, (though trying to change the extend or filter for a solid
2050
+ pattern will have no effect). A notable exception is
2051
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-add-color-stop-rgb" title="cairo_pattern_add_color_stop_rgb ()"><code class="function">cairo_pattern_add_color_stop_rgb()</code></a> and
2052
+ <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-add-color-stop-rgba" title="cairo_pattern_add_color_stop_rgba ()"><code class="function">cairo_pattern_add_color_stop_rgba()</code></a> which must only be called with
2053
+ gradient patterns (either LINEAR or RADIAL). Otherwise the pattern
2054
+ will be shutdown and put into an error state.
2055
+ </p>
2056
+ <p>
2057
+ New entries may be added in future versions.
2058
+ </p>
2059
+ <div class="variablelist"><table border="0">
2060
+ <col align="left" valign="top">
2061
+ <tbody>
2062
+ <tr>
2063
+ <td><p><a name="CAIRO-PATTERN-TYPE-SOLID:CAPS"></a><span class="term"><code class="literal">CAIRO_PATTERN_TYPE_SOLID</code></span></p></td>
2064
+ <td>The pattern is a solid (uniform)
2065
+ color. It may be opaque or translucent, since 1.2.
2066
+ </td>
2067
+ </tr>
2068
+ <tr>
2069
+ <td><p><a name="CAIRO-PATTERN-TYPE-SURFACE:CAPS"></a><span class="term"><code class="literal">CAIRO_PATTERN_TYPE_SURFACE</code></span></p></td>
2070
+ <td>The pattern is a based on a surface (an image), since 1.2.
2071
+ </td>
2072
+ </tr>
2073
+ <tr>
2074
+ <td><p><a name="CAIRO-PATTERN-TYPE-LINEAR:CAPS"></a><span class="term"><code class="literal">CAIRO_PATTERN_TYPE_LINEAR</code></span></p></td>
2075
+ <td>The pattern is a linear gradient, since 1.2.
2076
+ </td>
2077
+ </tr>
2078
+ <tr>
2079
+ <td><p><a name="CAIRO-PATTERN-TYPE-RADIAL:CAPS"></a><span class="term"><code class="literal">CAIRO_PATTERN_TYPE_RADIAL</code></span></p></td>
2080
+ <td>The pattern is a radial gradient, since 1.2.
2081
+ </td>
2082
+ </tr>
2083
+ <tr>
2084
+ <td><p><a name="CAIRO-PATTERN-TYPE-MESH:CAPS"></a><span class="term"><code class="literal">CAIRO_PATTERN_TYPE_MESH</code></span></p></td>
2085
+ <td>The pattern is a mesh, since 1.12.
2086
+ </td>
2087
+ </tr>
2088
+ <tr>
2089
+ <td><p><a name="CAIRO-PATTERN-TYPE-RASTER-SOURCE:CAPS"></a><span class="term"><code class="literal">CAIRO_PATTERN_TYPE_RASTER_SOURCE</code></span></p></td>
2090
+ <td>The pattern is a user pattern providing raster data, since 1.12.
2091
+ </td>
2092
+ </tr>
2093
+ </tbody>
2094
+ </table></div>
2095
+ <p class="since">Since 1.2</p>
2096
+ </div>
2097
+ <hr>
2098
+ <div class="refsect2">
2099
+ <a name="cairo-pattern-get-type"></a><h3>cairo_pattern_get_type ()</h3>
2100
+ <pre class="programlisting"><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-type-t" title="enum cairo_pattern_type_t"><span class="returnvalue">cairo_pattern_type_t</span></a> cairo_pattern_get_type (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>);</pre>
2101
+ <p>
2102
+ This function returns the type a pattern.
2103
+ See <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-type-t" title="enum cairo_pattern_type_t"><span class="type">cairo_pattern_type_t</span></a> for available types.
2104
+ </p>
2105
+ <div class="variablelist"><table border="0">
2106
+ <col align="left" valign="top">
2107
+ <tbody>
2108
+ <tr>
2109
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
2110
+ <td>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>
2111
+ </td>
2112
+ </tr>
2113
+ <tr>
2114
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2115
+ <td>The type of <em class="parameter"><code>pattern</code></em>.</td>
2116
+ </tr>
2117
+ </tbody>
2118
+ </table></div>
2119
+ <p class="since">Since 1.2</p>
2120
+ </div>
2121
+ <hr>
2122
+ <div class="refsect2">
2123
+ <a name="cairo-pattern-get-reference-count"></a><h3>cairo_pattern_get_reference_count ()</h3>
2124
+ <pre class="programlisting">unsigned <span class="returnvalue">int</span> cairo_pattern_get_reference_count (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>);</pre>
2125
+ <p>
2126
+ Returns the current reference count of <em class="parameter"><code>pattern</code></em>.
2127
+ </p>
2128
+ <div class="variablelist"><table border="0">
2129
+ <col align="left" valign="top">
2130
+ <tbody>
2131
+ <tr>
2132
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
2133
+ <td>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>
2134
+ </td>
2135
+ </tr>
2136
+ <tr>
2137
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2138
+ <td>the current reference count of <em class="parameter"><code>pattern</code></em>. If the
2139
+ object is a nil object, 0 will be returned.</td>
2140
+ </tr>
2141
+ </tbody>
2142
+ </table></div>
2143
+ <p class="since">Since 1.4</p>
2144
+ </div>
2145
+ <hr>
2146
+ <div class="refsect2">
2147
+ <a name="cairo-pattern-set-user-data"></a><h3>cairo_pattern_set_user_data ()</h3>
2148
+ <pre class="programlisting"><a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="returnvalue">cairo_status_t</span></a> cairo_pattern_set_user_data (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
2149
+ <em class="parameter"><code>const <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> *key</code></em>,
2150
+ <em class="parameter"><code><span class="type">void</span> *user_data</code></em>,
2151
+ <em class="parameter"><code><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> destroy</code></em>);</pre>
2152
+ <p>
2153
+ Attach user data to <em class="parameter"><code>pattern</code></em>. To remove user data from a surface,
2154
+ call this function with the key that was used to set it and <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
2155
+ for <em class="parameter"><code>data</code></em>.
2156
+ </p>
2157
+ <div class="variablelist"><table border="0">
2158
+ <col align="left" valign="top">
2159
+ <tbody>
2160
+ <tr>
2161
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
2162
+ <td>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>
2163
+ </td>
2164
+ </tr>
2165
+ <tr>
2166
+ <td><p><span class="term"><em class="parameter"><code>key</code></em> :</span></p></td>
2167
+ <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</td>
2168
+ </tr>
2169
+ <tr>
2170
+ <td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
2171
+ <td>the user data to attach to the <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>
2172
+ </td>
2173
+ </tr>
2174
+ <tr>
2175
+ <td><p><span class="term"><em class="parameter"><code>destroy</code></em> :</span></p></td>
2176
+ <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
2177
+ <a class="link" href="cairo-cairo-t.html#cairo-t" title="cairo_t"><span class="type">cairo_t</span></a> is destroyed or when new user data is attached using the
2178
+ same key.</td>
2179
+ </tr>
2180
+ <tr>
2181
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2182
+ <td>
2183
+ <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
2184
+ slot could not be allocated for the user data.</td>
2185
+ </tr>
2186
+ </tbody>
2187
+ </table></div>
2188
+ <p class="since">Since 1.4</p>
2189
+ </div>
2190
+ <hr>
2191
+ <div class="refsect2">
2192
+ <a name="cairo-pattern-get-user-data"></a><h3>cairo_pattern_get_user_data ()</h3>
2193
+ <pre class="programlisting"><span class="returnvalue">void</span> * cairo_pattern_get_user_data (<em class="parameter"><code><a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a> *pattern</code></em>,
2194
+ <em class="parameter"><code>const <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> *key</code></em>);</pre>
2195
+ <p>
2196
+ Return user data previously attached to <em class="parameter"><code>pattern</code></em> using the
2197
+ specified key. If no user data has been attached with the given
2198
+ key this function returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.
2199
+ </p>
2200
+ <div class="variablelist"><table border="0">
2201
+ <col align="left" valign="top">
2202
+ <tbody>
2203
+ <tr>
2204
+ <td><p><span class="term"><em class="parameter"><code>pattern</code></em> :</span></p></td>
2205
+ <td>a <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-t" title="cairo_pattern_t"><span class="type">cairo_pattern_t</span></a>
2206
+ </td>
2207
+ </tr>
2208
+ <tr>
2209
+ <td><p><span class="term"><em class="parameter"><code>key</code></em> :</span></p></td>
2210
+ <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
2211
+ attached to</td>
2212
+ </tr>
2213
+ <tr>
2214
+ <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
2215
+ <td>the user data previously attached or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.</td>
2216
+ </tr>
2217
+ </tbody>
2218
+ </table></div>
2219
+ <p class="since">Since 1.4</p>
2220
+ </div>
2221
+ </div>
2222
+ <div class="refsect1">
2223
+ <a name="cairo-cairo-pattern-t.see-also"></a><h2>See Also</h2>
2224
+ <a class="link" href="cairo-cairo-t.html#cairo-t" title="cairo_t"><span class="type">cairo_t</span></a>, <a class="link" href="cairo-cairo-surface-t.html#cairo-surface-t" title="cairo_surface_t"><span class="type">cairo_surface_t</span></a>
2225
+ </div>
2226
+ </div>
2227
+ <div class="footer">
2228
+ <hr>
2229
+ Generated by GTK-Doc V1.18</div>
2230
+ </body>
2231
+ </html>