cairo 1.8.5-x86-mingw32 → 1.10.0-x86-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 (450) hide show
  1. data/NEWS +2 -2
  2. data/Rakefile +44 -7
  3. data/ext/cairo/cairo.def +28 -1
  4. data/ext/cairo/extconf.rb +14 -16
  5. data/ext/cairo/rb_cairo.c +4 -1
  6. data/ext/cairo/rb_cairo.h +65 -1
  7. data/ext/cairo/rb_cairo_constants.c +150 -3
  8. data/ext/cairo/rb_cairo_context.c +17 -0
  9. data/ext/cairo/rb_cairo_device.c +406 -0
  10. data/ext/cairo/rb_cairo_exception.c +83 -32
  11. data/ext/cairo/rb_cairo_io.c +166 -0
  12. data/ext/cairo/rb_cairo_io.h +44 -0
  13. data/ext/cairo/rb_cairo_matrix.c +1 -1
  14. data/ext/cairo/rb_cairo_private.h +3 -0
  15. data/ext/cairo/rb_cairo_region.c +385 -0
  16. data/ext/cairo/rb_cairo_surface.c +674 -199
  17. data/lib/1.8/cairo.so +0 -0
  18. data/lib/1.9/cairo.so +0 -0
  19. data/samples/blur.rb +2 -3
  20. data/samples/{pac2.rb → pac-nomralize.rb} +5 -6
  21. data/samples/pac-tee.rb +170 -0
  22. data/samples/pac.rb +2 -3
  23. data/samples/png.rb +2 -3
  24. data/samples/scalable.rb +2 -3
  25. data/samples/text-on-path.rb +2 -3
  26. data/samples/text2.rb +2 -3
  27. data/test/cairo-test-utils.rb +15 -0
  28. data/test/run-test.rb +5 -4
  29. data/test/test_context.rb +4 -4
  30. data/test/test_font_face.rb +34 -21
  31. data/test/test_recording_surface.rb +18 -0
  32. data/test/test_region.rb +102 -0
  33. data/test/test_script_device.rb +46 -0
  34. data/test/test_script_surface.rb +13 -0
  35. data/test/test_surface.rb +14 -4
  36. data/test/test_tee_surface.rb +32 -0
  37. data/test/test_xml_device.rb +22 -0
  38. data/test/test_xml_surface.rb +32 -0
  39. data/tmp/i386-mingw32/cairo/1.9.2/rbconfig.rb +1 -1
  40. data/vendor/local/bin/libcairo-2.dll +0 -0
  41. data/vendor/local/include/cairo/cairo-deprecated.h +1 -16
  42. data/vendor/local/include/cairo/cairo-features.h +7 -0
  43. data/vendor/local/include/cairo/cairo-ft.h +16 -9
  44. data/vendor/local/include/cairo/cairo-gobject.h +186 -0
  45. data/vendor/local/include/cairo/cairo-pdf.h +27 -1
  46. data/vendor/local/include/cairo/cairo-ps.h +1 -1
  47. data/vendor/local/include/cairo/cairo-script-interpreter.h +117 -0
  48. data/vendor/local/include/cairo/cairo-svg.h +1 -1
  49. data/vendor/local/include/cairo/cairo-version.h +2 -2
  50. data/vendor/local/include/cairo/cairo-win32.h +1 -1
  51. data/vendor/local/include/cairo/cairo.h +382 -26
  52. data/vendor/local/lib/cairo.def +44 -0
  53. data/vendor/local/lib/cairo.lib +0 -0
  54. data/vendor/local/lib/libcairo.dll.a +0 -0
  55. data/vendor/local/lib/pkgconfig/cairo-fc.pc +12 -0
  56. data/vendor/local/lib/pkgconfig/cairo-ft.pc +4 -4
  57. data/vendor/local/lib/pkgconfig/cairo-gobject.pc +12 -0
  58. data/vendor/local/lib/pkgconfig/cairo-pdf.pc +3 -3
  59. data/vendor/local/lib/pkgconfig/cairo-png.pc +3 -3
  60. data/vendor/local/lib/pkgconfig/cairo-ps.pc +3 -3
  61. data/vendor/local/lib/pkgconfig/cairo-svg.pc +3 -3
  62. data/vendor/local/lib/pkgconfig/cairo-win32-font.pc +3 -3
  63. data/vendor/local/lib/pkgconfig/cairo-win32.pc +3 -3
  64. data/vendor/local/lib/pkgconfig/cairo.pc +4 -4
  65. data/vendor/local/manifest/{cairo-dev_1.8.10-4_win32.mft → cairo-dev_1.10.0-1_win32.mft} +34 -27
  66. data/vendor/local/manifest/cairo_1.10.0-1_win32.mft +5 -0
  67. data/vendor/local/share/doc/{cairo_1.8.10-4_win32 → cairo_1.10.0-1_win32}/COPYING +9 -8
  68. data/vendor/local/share/doc/{cairo_1.8.10-4_win32 → cairo_1.10.0-1_win32}/COPYING-LGPL-2.1 +2 -2
  69. data/vendor/local/share/doc/{cairo_1.8.10-4_win32 → cairo_1.10.0-1_win32}/COPYING-MPL-1.1 +0 -0
  70. data/vendor/local/share/gtk-doc/html/cairo/bindings-errors.html +4 -14
  71. data/vendor/local/share/gtk-doc/html/cairo/bindings-fonts.html +5 -15
  72. data/vendor/local/share/gtk-doc/html/cairo/bindings-memory.html +7 -17
  73. data/vendor/local/share/gtk-doc/html/cairo/bindings-overloading.html +6 -16
  74. data/vendor/local/share/gtk-doc/html/cairo/bindings-path.html +6 -16
  75. data/vendor/local/share/gtk-doc/html/cairo/bindings-patterns.html +23 -28
  76. data/vendor/local/share/gtk-doc/html/cairo/bindings-return-values.html +3 -13
  77. data/vendor/local/share/gtk-doc/html/cairo/bindings-streams.html +3 -13
  78. data/vendor/local/share/gtk-doc/html/cairo/bindings-surfaces.html +7 -17
  79. data/vendor/local/share/gtk-doc/html/cairo/cairo-Error-handling.html +373 -0
  80. data/vendor/local/share/gtk-doc/html/cairo/cairo-FreeType-Fonts.html +330 -0
  81. data/vendor/local/share/gtk-doc/html/cairo/cairo-Image-Surfaces.html +478 -0
  82. data/vendor/local/share/gtk-doc/html/cairo/cairo-PDF-Surfaces.html +344 -0
  83. data/vendor/local/share/gtk-doc/html/cairo/cairo-PNG-Support.html +320 -0
  84. data/vendor/local/share/gtk-doc/html/cairo/cairo-Paths.html +1291 -0
  85. data/vendor/local/share/gtk-doc/html/cairo/cairo-PostScript-Surfaces.html +622 -0
  86. data/vendor/local/share/gtk-doc/html/cairo/cairo-Quartz-(CGFont)-Fonts.html +134 -0
  87. data/vendor/local/share/gtk-doc/html/cairo/cairo-Quartz-Surfaces.html +210 -0
  88. data/vendor/local/share/gtk-doc/html/cairo/cairo-Regions.html +834 -0
  89. data/vendor/local/share/gtk-doc/html/cairo/cairo-SVG-Surfaces.html +318 -0
  90. data/vendor/local/share/gtk-doc/html/cairo/cairo-Transformations.html +410 -0
  91. data/vendor/local/share/gtk-doc/html/cairo/cairo-Types.html +169 -0
  92. data/vendor/local/share/gtk-doc/html/cairo/cairo-User-Fonts.html +715 -0
  93. data/vendor/local/share/gtk-doc/html/cairo/cairo-Version-Information.html +410 -0
  94. data/vendor/local/share/gtk-doc/html/cairo/cairo-Win32-Fonts.html +335 -0
  95. data/vendor/local/share/gtk-doc/html/cairo/cairo-Win32-Surfaces.html +291 -0
  96. data/vendor/local/share/gtk-doc/html/cairo/cairo-XLib-Surfaces.html +470 -0
  97. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-device-t.html +595 -0
  98. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-font-face-t.html +384 -0
  99. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-font-options-t.html +644 -0
  100. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-matrix-t.html +574 -0
  101. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-pattern-t.html +1457 -0
  102. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-scaled-font-t.html +1076 -0
  103. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-surface-t.html +1396 -0
  104. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-t.html +2743 -0
  105. data/vendor/local/share/gtk-doc/html/cairo/cairo-drawing.html +13 -20
  106. data/vendor/local/share/gtk-doc/html/cairo/cairo-fonts.html +13 -23
  107. data/vendor/local/share/gtk-doc/html/cairo/cairo-support.html +11 -21
  108. data/vendor/local/share/gtk-doc/html/cairo/cairo-surfaces.html +19 -26
  109. data/vendor/local/share/gtk-doc/html/cairo/cairo-text.html +279 -326
  110. data/vendor/local/share/gtk-doc/html/cairo/cairo.devhelp +411 -355
  111. data/vendor/local/share/gtk-doc/html/cairo/cairo.devhelp2 +579 -480
  112. data/vendor/local/share/gtk-doc/html/cairo/index-1.10.html +147 -0
  113. data/vendor/local/share/gtk-doc/html/cairo/index-1.2.html +88 -65
  114. data/vendor/local/share/gtk-doc/html/cairo/index-1.4.html +72 -47
  115. data/vendor/local/share/gtk-doc/html/cairo/index-1.6.html +43 -32
  116. data/vendor/local/share/gtk-doc/html/cairo/index-1.8.html +42 -41
  117. data/vendor/local/share/gtk-doc/html/cairo/index-all.html +542 -345
  118. data/vendor/local/share/gtk-doc/html/cairo/index.html +36 -39
  119. data/vendor/local/share/gtk-doc/html/cairo/index.sgml +674 -444
  120. data/vendor/local/share/gtk-doc/html/cairo/language-bindings.html +6 -16
  121. data/vendor/local/share/gtk-doc/html/cairo/style.css +152 -54
  122. data/vendor/local/src/tml/packaging/cairo_1.10.0-1_win32.log +1262 -0
  123. data/vendor/local/src/tml/packaging/{cairo_1.8.10-4_win32.sh → cairo_1.10.0-1_win32.sh} +3 -3
  124. metadata +137 -389
  125. data/doc/doc.css +0 -91
  126. data/doc/en/cairo-antialias.html +0 -38
  127. data/doc/en/cairo-clip-not-representable-error.html +0 -47
  128. data/doc/en/cairo-color-base.html +0 -69
  129. data/doc/en/cairo-color-cmyk.html +0 -157
  130. data/doc/en/cairo-color-hsv.html +0 -137
  131. data/doc/en/cairo-color-rgb.html +0 -142
  132. data/doc/en/cairo-color-x11.html +0 -173
  133. data/doc/en/cairo-color.html +0 -238
  134. data/doc/en/cairo-content.html +0 -37
  135. data/doc/en/cairo-context-blur.html +0 -39
  136. data/doc/en/cairo-context-circle.html +0 -39
  137. data/doc/en/cairo-context-color.html +0 -39
  138. data/doc/en/cairo-context-path.html +0 -44
  139. data/doc/en/cairo-context-rectangle.html +0 -39
  140. data/doc/en/cairo-context-triangle.html +0 -39
  141. data/doc/en/cairo-context.html +0 -643
  142. data/doc/en/cairo-error.html +0 -44
  143. data/doc/en/cairo-extend.html +0 -38
  144. data/doc/en/cairo-file-not-found.html +0 -47
  145. data/doc/en/cairo-fill-rule.html +0 -36
  146. data/doc/en/cairo-filter.html +0 -40
  147. data/doc/en/cairo-font-extents.html +0 -129
  148. data/doc/en/cairo-font-face.html +0 -38
  149. data/doc/en/cairo-font-options.html +0 -139
  150. data/doc/en/cairo-font-slant.html +0 -37
  151. data/doc/en/cairo-font-type-mismatch.html +0 -47
  152. data/doc/en/cairo-font-weight.html +0 -36
  153. data/doc/en/cairo-format.html +0 -46
  154. data/doc/en/cairo-glyph.html +0 -99
  155. data/doc/en/cairo-gradient-pattern.html +0 -74
  156. data/doc/en/cairo-hint-metrics.html +0 -37
  157. data/doc/en/cairo-hint-style.html +0 -39
  158. data/doc/en/cairo-image-surface.html +0 -82
  159. data/doc/en/cairo-invalid-clusters.html +0 -47
  160. data/doc/en/cairo-invalid-content-error.html +0 -47
  161. data/doc/en/cairo-invalid-dash-error.html +0 -47
  162. data/doc/en/cairo-invalid-dsc-comment-error.html +0 -47
  163. data/doc/en/cairo-invalid-format-error.html +0 -47
  164. data/doc/en/cairo-invalid-index-error.html +0 -47
  165. data/doc/en/cairo-invalid-matrix-error.html +0 -47
  166. data/doc/en/cairo-invalid-path-data-error.html +0 -47
  167. data/doc/en/cairo-invalid-pop-group-error.html +0 -47
  168. data/doc/en/cairo-invalid-restore-error.html +0 -47
  169. data/doc/en/cairo-invalid-slant.html +0 -47
  170. data/doc/en/cairo-invalid-status-error.html +0 -47
  171. data/doc/en/cairo-invalid-stride-error.html +0 -47
  172. data/doc/en/cairo-invalid-string-error.html +0 -47
  173. data/doc/en/cairo-invalid-visual-error.html +0 -47
  174. data/doc/en/cairo-invalid-weight.html +0 -47
  175. data/doc/en/cairo-line-cap.html +0 -37
  176. data/doc/en/cairo-line-join.html +0 -37
  177. data/doc/en/cairo-linear-pattern.html +0 -60
  178. data/doc/en/cairo-matrix.html +0 -259
  179. data/doc/en/cairo-negative-count.html +0 -47
  180. data/doc/en/cairo-no-current-point-error.html +0 -47
  181. data/doc/en/cairo-null-pointer-error.html +0 -47
  182. data/doc/en/cairo-operator.html +0 -48
  183. data/doc/en/cairo-paper-parse-error.html +0 -47
  184. data/doc/en/cairo-paper-unknown-paper-name.html +0 -66
  185. data/doc/en/cairo-paper-unknown-unit.html +0 -66
  186. data/doc/en/cairo-paper-unrecognized-paper-description.html +0 -66
  187. data/doc/en/cairo-paper.html +0 -184
  188. data/doc/en/cairo-path-close-path.html +0 -49
  189. data/doc/en/cairo-path-curve-to.html +0 -49
  190. data/doc/en/cairo-path-data-type.html +0 -38
  191. data/doc/en/cairo-path-data.html +0 -98
  192. data/doc/en/cairo-path-line-to.html +0 -49
  193. data/doc/en/cairo-path-move-to.html +0 -49
  194. data/doc/en/cairo-path.html +0 -155
  195. data/doc/en/cairo-pattern-type-mismatch-error.html +0 -47
  196. data/doc/en/cairo-pattern.html +0 -99
  197. data/doc/en/cairo-pdf-surface.html +0 -57
  198. data/doc/en/cairo-point.html +0 -74
  199. data/doc/en/cairo-ps-level.html +0 -49
  200. data/doc/en/cairo-ps-surface.html +0 -92
  201. data/doc/en/cairo-quartz-image-surface.html +0 -57
  202. data/doc/en/cairo-quartz-surface.html +0 -57
  203. data/doc/en/cairo-radial-pattern.html +0 -60
  204. data/doc/en/cairo-read-error.html +0 -47
  205. data/doc/en/cairo-rectangle.html +0 -89
  206. data/doc/en/cairo-scaled-font.html +0 -94
  207. data/doc/en/cairo-solid-pattern.html +0 -62
  208. data/doc/en/cairo-subpixel-order.html +0 -39
  209. data/doc/en/cairo-surface-finished-error.html +0 -47
  210. data/doc/en/cairo-surface-pattern.html +0 -57
  211. data/doc/en/cairo-surface-type-mismatch-error.html +0 -47
  212. data/doc/en/cairo-surface.html +0 -121
  213. data/doc/en/cairo-svg-surface.html +0 -77
  214. data/doc/en/cairo-svg-version.html +0 -49
  215. data/doc/en/cairo-temp-file-error.html +0 -47
  216. data/doc/en/cairo-text-cluster-flag.html +0 -35
  217. data/doc/en/cairo-text-cluster.html +0 -84
  218. data/doc/en/cairo-text-extents.html +0 -144
  219. data/doc/en/cairo-toy-font-face.html +0 -67
  220. data/doc/en/cairo-user-font-error.html +0 -47
  221. data/doc/en/cairo-user-font-face-text-to-glyphs-data.html +0 -94
  222. data/doc/en/cairo-user-font-face.html +0 -72
  223. data/doc/en/cairo-user-font-immutable.html +0 -47
  224. data/doc/en/cairo-win32-printing-surface.html +0 -57
  225. data/doc/en/cairo-win32-surface.html +0 -62
  226. data/doc/en/cairo-write-error.html +0 -47
  227. data/doc/en/cairo.html +0 -131
  228. data/doc/en/index.html +0 -1154
  229. data/doc/index.html +0 -18
  230. data/doc/ja/cairo-antialias.html +0 -57
  231. data/doc/ja/cairo-clip-not-representable-error.html +0 -56
  232. data/doc/ja/cairo-color-base.html +0 -75
  233. data/doc/ja/cairo-color-cmyk.html +0 -152
  234. data/doc/ja/cairo-color-hsv.html +0 -135
  235. data/doc/ja/cairo-color-rgb.html +0 -145
  236. data/doc/ja/cairo-color-x11.html +0 -183
  237. data/doc/ja/cairo-color.html +0 -317
  238. data/doc/ja/cairo-content.html +0 -51
  239. data/doc/ja/cairo-context-blur.html +0 -53
  240. data/doc/ja/cairo-context-circle.html +0 -54
  241. data/doc/ja/cairo-context-color.html +0 -52
  242. data/doc/ja/cairo-context-path.html +0 -77
  243. data/doc/ja/cairo-context-rectangle.html +0 -60
  244. data/doc/ja/cairo-context-triangle.html +0 -47
  245. data/doc/ja/cairo-context.html +0 -1542
  246. data/doc/ja/cairo-error.html +0 -56
  247. data/doc/ja/cairo-extend.html +0 -56
  248. data/doc/ja/cairo-file-not-found.html +0 -51
  249. data/doc/ja/cairo-fill-rule.html +0 -58
  250. data/doc/ja/cairo-filter.html +0 -43
  251. data/doc/ja/cairo-font-extents.html +0 -164
  252. data/doc/ja/cairo-font-face.html +0 -55
  253. data/doc/ja/cairo-font-options.html +0 -189
  254. data/doc/ja/cairo-font-slant.html +0 -50
  255. data/doc/ja/cairo-font-type-mismatch.html +0 -52
  256. data/doc/ja/cairo-font-weight.html +0 -47
  257. data/doc/ja/cairo-format.html +0 -81
  258. data/doc/ja/cairo-glyph.html +0 -115
  259. data/doc/ja/cairo-gradient-pattern.html +0 -119
  260. data/doc/ja/cairo-hint-metrics.html +0 -57
  261. data/doc/ja/cairo-hint-style.html +0 -64
  262. data/doc/ja/cairo-image-surface.html +0 -131
  263. data/doc/ja/cairo-invalid-clusters.html +0 -55
  264. data/doc/ja/cairo-invalid-content-error.html +0 -54
  265. data/doc/ja/cairo-invalid-dash-error.html +0 -54
  266. data/doc/ja/cairo-invalid-dsc-comment-error.html +0 -54
  267. data/doc/ja/cairo-invalid-format-error.html +0 -54
  268. data/doc/ja/cairo-invalid-index-error.html +0 -54
  269. data/doc/ja/cairo-invalid-matrix-error.html +0 -54
  270. data/doc/ja/cairo-invalid-path-data-error.html +0 -54
  271. data/doc/ja/cairo-invalid-pop-group-error.html +0 -54
  272. data/doc/ja/cairo-invalid-restore-error.html +0 -55
  273. data/doc/ja/cairo-invalid-slant.html +0 -57
  274. data/doc/ja/cairo-invalid-status-error.html +0 -55
  275. data/doc/ja/cairo-invalid-stride-error.html +0 -55
  276. data/doc/ja/cairo-invalid-string-error.html +0 -54
  277. data/doc/ja/cairo-invalid-visual-error.html +0 -57
  278. data/doc/ja/cairo-invalid-weight.html +0 -57
  279. data/doc/ja/cairo-line-cap.html +0 -50
  280. data/doc/ja/cairo-line-join.html +0 -53
  281. data/doc/ja/cairo-linear-pattern.html +0 -87
  282. data/doc/ja/cairo-matrix.html +0 -354
  283. data/doc/ja/cairo-negative-count.html +0 -52
  284. data/doc/ja/cairo-no-current-point-error.html +0 -54
  285. data/doc/ja/cairo-null-pointer-error.html +0 -54
  286. data/doc/ja/cairo-operator.html +0 -51
  287. data/doc/ja/cairo-paper-parse-error.html +0 -55
  288. data/doc/ja/cairo-paper-unknown-paper-name.html +0 -76
  289. data/doc/ja/cairo-paper-unknown-unit.html +0 -75
  290. data/doc/ja/cairo-paper-unrecognized-paper-description.html +0 -76
  291. data/doc/ja/cairo-paper.html +0 -357
  292. data/doc/ja/cairo-path-close-path.html +0 -57
  293. data/doc/ja/cairo-path-curve-to.html +0 -70
  294. data/doc/ja/cairo-path-data-type.html +0 -53
  295. data/doc/ja/cairo-path-data.html +0 -127
  296. data/doc/ja/cairo-path-line-to.html +0 -62
  297. data/doc/ja/cairo-path-move-to.html +0 -62
  298. data/doc/ja/cairo-path.html +0 -144
  299. data/doc/ja/cairo-pattern-type-mismatch-error.html +0 -56
  300. data/doc/ja/cairo-pattern.html +0 -128
  301. data/doc/ja/cairo-pdf-surface.html +0 -86
  302. data/doc/ja/cairo-point.html +0 -90
  303. data/doc/ja/cairo-ps-level.html +0 -62
  304. data/doc/ja/cairo-ps-surface.html +0 -214
  305. data/doc/ja/cairo-quartz-image-surface.html +0 -75
  306. data/doc/ja/cairo-quartz-surface.html +0 -93
  307. data/doc/ja/cairo-radial-pattern.html +0 -93
  308. data/doc/ja/cairo-read-error.html +0 -55
  309. data/doc/ja/cairo-rectangle.html +0 -109
  310. data/doc/ja/cairo-scaled-font.html +0 -180
  311. data/doc/ja/cairo-solid-pattern.html +0 -87
  312. data/doc/ja/cairo-subpixel-order.html +0 -57
  313. data/doc/ja/cairo-surface-finished-error.html +0 -54
  314. data/doc/ja/cairo-surface-pattern.html +0 -68
  315. data/doc/ja/cairo-surface-type-mismatch-error.html +0 -56
  316. data/doc/ja/cairo-surface.html +0 -213
  317. data/doc/ja/cairo-svg-surface.html +0 -114
  318. data/doc/ja/cairo-svg-version.html +0 -66
  319. data/doc/ja/cairo-temp-file-error.html +0 -50
  320. data/doc/ja/cairo-text-cluster-flag.html +0 -46
  321. data/doc/ja/cairo-text-cluster.html +0 -102
  322. data/doc/ja/cairo-text-extents.html +0 -163
  323. data/doc/ja/cairo-toy-font-face.html +0 -107
  324. data/doc/ja/cairo-user-font-error.html +0 -55
  325. data/doc/ja/cairo-user-font-face-text-to-glyphs-data.html +0 -156
  326. data/doc/ja/cairo-user-font-face.html +0 -268
  327. data/doc/ja/cairo-user-font-immutable.html +0 -54
  328. data/doc/ja/cairo-win32-printing-surface.html +0 -80
  329. data/doc/ja/cairo-win32-surface.html +0 -100
  330. data/doc/ja/cairo-write-error.html +0 -55
  331. data/doc/ja/cairo.html +0 -177
  332. data/doc/ja/index.html +0 -1156
  333. data/pkg-config.rb +0 -313
  334. data/test-unit/Rakefile +0 -30
  335. data/test-unit/bin/testrb +0 -5
  336. data/test-unit/lib/test/unit.rb +0 -280
  337. data/test-unit/lib/test/unit/assertionfailederror.rb +0 -14
  338. data/test-unit/lib/test/unit/assertions.rb +0 -722
  339. data/test-unit/lib/test/unit/attribute.rb +0 -125
  340. data/test-unit/lib/test/unit/autorunner.rb +0 -254
  341. data/test-unit/lib/test/unit/collector.rb +0 -43
  342. data/test-unit/lib/test/unit/collector/descendant.rb +0 -23
  343. data/test-unit/lib/test/unit/collector/dir.rb +0 -108
  344. data/test-unit/lib/test/unit/collector/load.rb +0 -135
  345. data/test-unit/lib/test/unit/collector/objectspace.rb +0 -34
  346. data/test-unit/lib/test/unit/color.rb +0 -61
  347. data/test-unit/lib/test/unit/diff.rb +0 -524
  348. data/test-unit/lib/test/unit/error.rb +0 -124
  349. data/test-unit/lib/test/unit/exceptionhandler.rb +0 -39
  350. data/test-unit/lib/test/unit/failure.rb +0 -110
  351. data/test-unit/lib/test/unit/fixture.rb +0 -185
  352. data/test-unit/lib/test/unit/notification.rb +0 -125
  353. data/test-unit/lib/test/unit/omission.rb +0 -143
  354. data/test-unit/lib/test/unit/pending.rb +0 -146
  355. data/test-unit/lib/test/unit/priority.rb +0 -146
  356. data/test-unit/lib/test/unit/runner/console.rb +0 -46
  357. data/test-unit/lib/test/unit/runner/emacs.rb +0 -8
  358. data/test-unit/lib/test/unit/testcase.rb +0 -281
  359. data/test-unit/lib/test/unit/testresult.rb +0 -89
  360. data/test-unit/lib/test/unit/testsuite.rb +0 -110
  361. data/test-unit/lib/test/unit/ui/console/outputlevel.rb +0 -14
  362. data/test-unit/lib/test/unit/ui/console/testrunner.rb +0 -195
  363. data/test-unit/lib/test/unit/ui/emacs/testrunner.rb +0 -49
  364. data/test-unit/lib/test/unit/ui/testrunner.rb +0 -20
  365. data/test-unit/lib/test/unit/ui/testrunnermediator.rb +0 -77
  366. data/test-unit/lib/test/unit/ui/testrunnerutilities.rb +0 -41
  367. data/test-unit/lib/test/unit/util/backtracefilter.rb +0 -41
  368. data/test-unit/lib/test/unit/util/observable.rb +0 -90
  369. data/test-unit/lib/test/unit/util/procwrapper.rb +0 -48
  370. data/test-unit/lib/test/unit/version.rb +0 -7
  371. data/test-unit/sample/adder.rb +0 -13
  372. data/test-unit/sample/subtracter.rb +0 -12
  373. data/test-unit/sample/tc_adder.rb +0 -18
  374. data/test-unit/sample/tc_subtracter.rb +0 -18
  375. data/test-unit/sample/ts_examples.rb +0 -7
  376. data/test-unit/test/collector/test_descendant.rb +0 -135
  377. data/test-unit/test/collector/test_dir.rb +0 -406
  378. data/test-unit/test/collector/test_load.rb +0 -333
  379. data/test-unit/test/collector/test_objectspace.rb +0 -98
  380. data/test-unit/test/run-test.rb +0 -13
  381. data/test-unit/test/test_assertions.rb +0 -693
  382. data/test-unit/test/test_attribute.rb +0 -86
  383. data/test-unit/test/test_color.rb +0 -37
  384. data/test-unit/test/test_diff.rb +0 -477
  385. data/test-unit/test/test_emacs_runner.rb +0 -60
  386. data/test-unit/test/test_error.rb +0 -26
  387. data/test-unit/test/test_failure.rb +0 -33
  388. data/test-unit/test/test_fixture.rb +0 -252
  389. data/test-unit/test/test_notification.rb +0 -33
  390. data/test-unit/test/test_omission.rb +0 -81
  391. data/test-unit/test/test_pending.rb +0 -70
  392. data/test-unit/test/test_priority.rb +0 -89
  393. data/test-unit/test/test_testcase.rb +0 -430
  394. data/test-unit/test/test_testresult.rb +0 -113
  395. data/test-unit/test/test_testsuite.rb +0 -129
  396. data/test-unit/test/testunit_test_util.rb +0 -14
  397. data/test-unit/test/ui/test_testrunmediator.rb +0 -20
  398. data/test-unit/test/util/test_backtracefilter.rb +0 -41
  399. data/test-unit/test/util/test_observable.rb +0 -102
  400. data/test-unit/test/util/test_procwrapper.rb +0 -36
  401. data/test/test_pkg_config.rb +0 -123
  402. data/vendor/local/include/libpng14/png.h +0 -2701
  403. data/vendor/local/include/libpng14/pngconf.h +0 -1525
  404. data/vendor/local/include/png.h +0 -2701
  405. data/vendor/local/include/pngconf.h +0 -1525
  406. data/vendor/local/include/zconf.h +0 -461
  407. data/vendor/local/include/zlib.h +0 -1589
  408. data/vendor/local/lib/libpng.def +0 -192
  409. data/vendor/local/lib/libpng.lib +0 -0
  410. data/vendor/local/lib/libpng14.dll.a +0 -0
  411. data/vendor/local/lib/libz.dll.a +0 -0
  412. data/vendor/local/lib/pkgconfig/libpng.pc +0 -11
  413. data/vendor/local/lib/pkgconfig/libpng14.pc +0 -11
  414. data/vendor/local/lib/zdll.lib +0 -0
  415. data/vendor/local/lib/zlib.def +0 -67
  416. data/vendor/local/manifest/cairo_1.8.10-4_win32.mft +0 -5
  417. data/vendor/local/manifest/libpng-dev_1.4.3-1_win32.mft +0 -15
  418. data/vendor/local/manifest/zlib-dev_1.2.5-2_win32.mft +0 -8
  419. data/vendor/local/share/gtk-doc/html/cairo/cairo-context.html +0 -2643
  420. data/vendor/local/share/gtk-doc/html/cairo/cairo-error-status.html +0 -360
  421. data/vendor/local/share/gtk-doc/html/cairo/cairo-font-face.html +0 -408
  422. data/vendor/local/share/gtk-doc/html/cairo/cairo-font-options.html +0 -678
  423. data/vendor/local/share/gtk-doc/html/cairo/cairo-ft-font.html +0 -319
  424. data/vendor/local/share/gtk-doc/html/cairo/cairo-image-surface.html +0 -473
  425. data/vendor/local/share/gtk-doc/html/cairo/cairo-matrix.html +0 -596
  426. data/vendor/local/share/gtk-doc/html/cairo/cairo-paths.html +0 -1274
  427. data/vendor/local/share/gtk-doc/html/cairo/cairo-pattern.html +0 -1485
  428. data/vendor/local/share/gtk-doc/html/cairo/cairo-pdf-surface.html +0 -238
  429. data/vendor/local/share/gtk-doc/html/cairo/cairo-png-functions.html +0 -341
  430. data/vendor/local/share/gtk-doc/html/cairo/cairo-ps-surface.html +0 -622
  431. data/vendor/local/share/gtk-doc/html/cairo/cairo-quartz-font.html +0 -151
  432. data/vendor/local/share/gtk-doc/html/cairo/cairo-quartz-surface.html +0 -219
  433. data/vendor/local/share/gtk-doc/html/cairo/cairo-scaled-font.html +0 -1023
  434. data/vendor/local/share/gtk-doc/html/cairo/cairo-surface.html +0 -1026
  435. data/vendor/local/share/gtk-doc/html/cairo/cairo-svg-surface.html +0 -321
  436. data/vendor/local/share/gtk-doc/html/cairo/cairo-transformations.html +0 -436
  437. data/vendor/local/share/gtk-doc/html/cairo/cairo-types.html +0 -133
  438. data/vendor/local/share/gtk-doc/html/cairo/cairo-user-font.html +0 -735
  439. data/vendor/local/share/gtk-doc/html/cairo/cairo-version-info.html +0 -345
  440. data/vendor/local/share/gtk-doc/html/cairo/cairo-win32-font.html +0 -358
  441. data/vendor/local/share/gtk-doc/html/cairo/cairo-win32-surface.html +0 -312
  442. data/vendor/local/share/gtk-doc/html/cairo/cairo-xlib-surface.html +0 -492
  443. data/vendor/local/share/man/man3/libpng.3 +0 -4455
  444. data/vendor/local/share/man/man3/libpngpf.3 +0 -808
  445. data/vendor/local/share/man/man5/png.5 +0 -74
  446. data/vendor/local/src/tml/packaging/cairo_1.8.10-4_win32.log +0 -920
  447. data/vendor/local/src/tml/packaging/libpng_1.4.3-1_win32.log +0 -272
  448. data/vendor/local/src/tml/packaging/libpng_1.4.3-1_win32.sh +0 -71
  449. data/vendor/local/src/tml/packaging/zlib_1.2.5-2_win32.log +0 -42
  450. data/vendor/local/src/tml/packaging/zlib_1.2.5-2_win32.sh +0 -189
@@ -1,133 +0,0 @@
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>Types</title>
6
- <meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
7
- <link rel="home" href="index.html" title="Cairo: A Vector Graphics Library">
8
- <link rel="up" href="cairo-support.html" title="Utilities">
9
- <link rel="prev" href="cairo-version-info.html" title="Version Information">
10
- <link rel="next" href="index-all.html" title="Index">
11
- <meta name="generator" content="GTK-Doc V1.11 (XML mode)">
12
- <link rel="stylesheet" href="style.css" type="text/css">
13
- <link rel="chapter" href="cairo-drawing.html" title="Drawing">
14
- <link rel="chapter" href="cairo-fonts.html" title="Fonts">
15
- <link rel="chapter" href="cairo-surfaces.html" title="Surfaces">
16
- <link rel="chapter" href="cairo-support.html" title="Utilities">
17
- <link rel="index" href="index-all.html" title="Index">
18
- <link rel="index" href="index-1.2.html" title="Index of new symbols in 1.2">
19
- <link rel="index" href="index-1.4.html" title="Index of new symbols in 1.4">
20
- <link rel="index" href="index-1.6.html" title="Index of new symbols in 1.6">
21
- <link rel="index" href="index-1.8.html" title="Index of new symbols in 1.8">
22
- <link rel="appendix" href="language-bindings.html" title="Appendix A. Creating a language binding for cairo">
23
- </head>
24
- <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
25
- <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
26
- <tr valign="middle">
27
- <td><a accesskey="p" href="cairo-version-info.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
28
- <td><a accesskey="u" href="cairo-support.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
29
- <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
30
- <th width="100%" align="center">Cairo: A Vector Graphics Library</th>
31
- <td><a accesskey="n" href="index-all.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
32
- </tr>
33
- <tr><td colspan="5" class="shortcuts">
34
- <a href="#cairo-types.synopsis" class="shortcut">Top</a>
35
-  | 
36
- <a href="#cairo-types.description" class="shortcut">Description</a>
37
- </td></tr>
38
- </table>
39
- <div class="refentry" title="Types">
40
- <a name="cairo-types"></a><div class="titlepage"></div>
41
- <div class="refnamediv"><table width="100%"><tr>
42
- <td valign="top">
43
- <h2><span class="refentrytitle"><a name="cairo-types.top_of_page"></a>Types</span></h2>
44
- <p>Types — Generic data types</p>
45
- </td>
46
- <td valign="top" align="right"></td>
47
- </tr></table></div>
48
- <div class="refsynopsisdiv" title="Synopsis">
49
- <a name="cairo-types.synopsis"></a><h2>Synopsis</h2>
50
- <pre class="synopsis">
51
- typedef <a class="link" href="cairo-types.html#cairo-bool-t" title="cairo_bool_t">cairo_bool_t</a>;
52
- <a class="link" href="cairo-types.html#cairo-user-data-key-t" title="cairo_user_data_key_t">cairo_user_data_key_t</a>;
53
- void (<a class="link" href="cairo-types.html#cairo-destroy-func-t" title="cairo_destroy_func_t ()">*cairo_destroy_func_t</a>) (void *data);
54
- </pre>
55
- </div>
56
- <div class="refsect1" title="Description">
57
- <a name="cairo-types.description"></a><h2>Description</h2>
58
- <p>
59
- Generic data types used in the cairo API
60
- </p>
61
- </div>
62
- <div class="refsect1" title="Details">
63
- <a name="cairo-types.details"></a><h2>Details</h2>
64
- <div class="refsect2" title="cairo_bool_t">
65
- <a name="cairo-bool-t"></a><h3>cairo_bool_t</h3>
66
- <pre class="programlisting">typedef int cairo_bool_t;
67
- </pre>
68
- <p>
69
- <a class="link" href="cairo-types.html#cairo-bool-t" title="cairo_bool_t"><span class="type">cairo_bool_t</span></a> is used for boolean values. Returns of type
70
- <a class="link" href="cairo-types.html#cairo-bool-t" title="cairo_bool_t"><span class="type">cairo_bool_t</span></a> will always be either 0 or 1, but testing against
71
- these values explicitly is not encouraged; just use the
72
- value as a boolean condition.
73
- </p>
74
- <p>
75
- </p>
76
- <div class="informalexample"><pre class="programlisting">
77
- if (cairo_in_stroke (cr, x, y)) {
78
- /* do something */
79
- }
80
- </pre></div>
81
- <p>
82
- </p>
83
- </div>
84
- <hr>
85
- <div class="refsect2" title="cairo_user_data_key_t">
86
- <a name="cairo-user-data-key-t"></a><h3>cairo_user_data_key_t</h3>
87
- <pre class="programlisting">typedef struct {
88
- int unused;
89
- } cairo_user_data_key_t;
90
- </pre>
91
- <p>
92
- <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> is used for attaching user data to cairo
93
- data structures. The actual contents of the struct is never used,
94
- and there is no need to initialize the object; only the unique
95
- address of a <span class="type">cairo_data_key_t</span> object is used. Typically, you
96
- would just use the address of a static <span class="type">cairo_data_key_t</span> object.</p>
97
- <p>
98
- </p>
99
- <div class="variablelist"><table border="0">
100
- <col align="left" valign="top">
101
- <tbody><tr>
102
- <td><p><span class="term">int <em class="structfield"><code>unused</code></em>;</span></p></td>
103
- <td> not used; ignore.
104
- </td>
105
- </tr></tbody>
106
- </table></div>
107
- </div>
108
- <hr>
109
- <div class="refsect2" title="cairo_destroy_func_t ()">
110
- <a name="cairo-destroy-func-t"></a><h3>cairo_destroy_func_t ()</h3>
111
- <pre class="programlisting">void (*cairo_destroy_func_t) (void *data);</pre>
112
- <p>
113
- <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> the type of function which is called when a
114
- data element is destroyed. It is passed the pointer to the data
115
- element and should free any memory and resources allocated for it.</p>
116
- <p>
117
- </p>
118
- <div class="variablelist"><table border="0">
119
- <col align="left" valign="top">
120
- <tbody><tr>
121
- <td><p><span class="term"><em class="parameter"><code>data</code></em> :</span></p></td>
122
- <td> The data element being destroyed.
123
- </td>
124
- </tr></tbody>
125
- </table></div>
126
- </div>
127
- </div>
128
- </div>
129
- <div class="footer">
130
- <hr>
131
- Generated by GTK-Doc V1.11</div>
132
- </body>
133
- </html>
@@ -1,735 +0,0 @@
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>User Fonts</title>
6
- <meta name="generator" content="DocBook XSL Stylesheets V1.75.2">
7
- <link rel="home" href="index.html" title="Cairo: A Vector Graphics Library">
8
- <link rel="up" href="cairo-fonts.html" title="Fonts">
9
- <link rel="prev" href="cairo-quartz-font.html" title="Quartz (CGFont) Fonts">
10
- <link rel="next" href="cairo-surfaces.html" title="Surfaces">
11
- <meta name="generator" content="GTK-Doc V1.11 (XML mode)">
12
- <link rel="stylesheet" href="style.css" type="text/css">
13
- <link rel="chapter" href="cairo-drawing.html" title="Drawing">
14
- <link rel="chapter" href="cairo-fonts.html" title="Fonts">
15
- <link rel="chapter" href="cairo-surfaces.html" title="Surfaces">
16
- <link rel="chapter" href="cairo-support.html" title="Utilities">
17
- <link rel="index" href="index-all.html" title="Index">
18
- <link rel="index" href="index-1.2.html" title="Index of new symbols in 1.2">
19
- <link rel="index" href="index-1.4.html" title="Index of new symbols in 1.4">
20
- <link rel="index" href="index-1.6.html" title="Index of new symbols in 1.6">
21
- <link rel="index" href="index-1.8.html" title="Index of new symbols in 1.8">
22
- <link rel="appendix" href="language-bindings.html" title="Appendix A. Creating a language binding for cairo">
23
- </head>
24
- <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
25
- <table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
26
- <tr valign="middle">
27
- <td><a accesskey="p" href="cairo-quartz-font.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
28
- <td><a accesskey="u" href="cairo-fonts.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
29
- <td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
30
- <th width="100%" align="center">Cairo: A Vector Graphics Library</th>
31
- <td><a accesskey="n" href="cairo-surfaces.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
32
- </tr>
33
- <tr><td colspan="5" class="shortcuts">
34
- <a href="#cairo-user-font.synopsis" class="shortcut">Top</a>
35
-  | 
36
- <a href="#cairo-user-font.description" class="shortcut">Description</a>
37
- </td></tr>
38
- </table>
39
- <div class="refentry" title="User Fonts">
40
- <a name="cairo-user-font"></a><div class="titlepage"></div>
41
- <div class="refnamediv"><table width="100%"><tr>
42
- <td valign="top">
43
- <h2><span class="refentrytitle"><a name="cairo-user-font.top_of_page"></a>User Fonts</span></h2>
44
- <p>User Fonts — Font support with font data provided by the user</p>
45
- </td>
46
- <td valign="top" align="right"></td>
47
- </tr></table></div>
48
- <div class="refsynopsisdiv" title="Synopsis">
49
- <a name="cairo-user-font.synopsis"></a><h2>Synopsis</h2>
50
- <pre class="synopsis">
51
- #define <a class="link" href="cairo-user-font.html#CAIRO-HAS-USER-FONT--CAPS" title="CAIRO_HAS_USER_FONT">CAIRO_HAS_USER_FONT</a>
52
- <a class="link" href="cairo-error-status.html#cairo-status-t" title="enum cairo_status_t">cairo_status_t</a> (<a class="link" href="cairo-user-font.html#cairo-user-scaled-font-init-func-t" title="cairo_user_scaled_font_init_func_t ()">*cairo_user_scaled_font_init_func_t</a>)
53
- (<a class="link" href="cairo-scaled-font.html#cairo-scaled-font-t" title="cairo_scaled_font_t">cairo_scaled_font_t</a> *scaled_font,
54
- <a class="link" href="cairo-context.html#cairo-t" title="cairo_t">cairo_t</a> *cr,
55
- <a class="link" href="cairo-scaled-font.html#cairo-font-extents-t" title="cairo_font_extents_t">cairo_font_extents_t</a> *extents);
56
- <a class="link" href="cairo-error-status.html#cairo-status-t" title="enum cairo_status_t">cairo_status_t</a> (<a class="link" href="cairo-user-font.html#cairo-user-scaled-font-render-glyph-func-t" title="cairo_user_scaled_font_render_glyph_func_t ()">*cairo_user_scaled_font_render_glyph_func_t</a>)
57
- (<a class="link" href="cairo-scaled-font.html#cairo-scaled-font-t" title="cairo_scaled_font_t">cairo_scaled_font_t</a> *scaled_font,
58
- unsigned long glyph,
59
- <a class="link" href="cairo-context.html#cairo-t" title="cairo_t">cairo_t</a> *cr,
60
- <a class="link" href="cairo-scaled-font.html#cairo-text-extents-t" title="cairo_text_extents_t">cairo_text_extents_t</a> *extents);
61
- <a class="link" href="cairo-error-status.html#cairo-status-t" title="enum cairo_status_t">cairo_status_t</a> (<a class="link" href="cairo-user-font.html#cairo-user-scaled-font-text-to-glyphs-func-t" title="cairo_user_scaled_font_text_to_glyphs_func_t ()">*cairo_user_scaled_font_text_to_glyphs_func_t</a>)
62
- (<a class="link" href="cairo-scaled-font.html#cairo-scaled-font-t" title="cairo_scaled_font_t">cairo_scaled_font_t</a> *scaled_font,
63
- const char *utf8,
64
- int utf8_len,
65
- <a class="link" href="cairo-text.html#cairo-glyph-t" title="cairo_glyph_t">cairo_glyph_t</a> **glyphs,
66
- int *num_glyphs,
67
- <a class="link" href="cairo-text.html#cairo-text-cluster-t" title="cairo_text_cluster_t">cairo_text_cluster_t</a> **clusters,
68
- int *num_clusters,
69
- <a class="link" href="cairo-text.html#cairo-text-cluster-flags-t" title="enum cairo_text_cluster_flags_t">cairo_text_cluster_flags_t</a> *cluster_flags);
70
- <a class="link" href="cairo-error-status.html#cairo-status-t" title="enum cairo_status_t">cairo_status_t</a> (<a class="link" href="cairo-user-font.html#cairo-user-scaled-font-unicode-to-glyph-func-t" title="cairo_user_scaled_font_unicode_to_glyph_func_t ()">*cairo_user_scaled_font_unicode_to_glyph_func_t</a>)
71
- (<a class="link" href="cairo-scaled-font.html#cairo-scaled-font-t" title="cairo_scaled_font_t">cairo_scaled_font_t</a> *scaled_font,
72
- unsigned long unicode,
73
- unsigned long *glyph_index);
74
- <a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t">cairo_font_face_t</a> * <a class="link" href="cairo-user-font.html#cairo-user-font-face-create" title="cairo_user_font_face_create ()">cairo_user_font_face_create</a> (void);
75
- void <a class="link" href="cairo-user-font.html#cairo-user-font-face-set-init-func" title="cairo_user_font_face_set_init_func ()">cairo_user_font_face_set_init_func</a> (<a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t">cairo_font_face_t</a> *font_face,
76
- <a class="link" href="cairo-user-font.html#cairo-user-scaled-font-init-func-t" title="cairo_user_scaled_font_init_func_t ()">cairo_user_scaled_font_init_func_t</a> init_func);
77
- <a class="link" href="cairo-user-font.html#cairo-user-scaled-font-init-func-t" title="cairo_user_scaled_font_init_func_t ()">cairo_user_scaled_font_init_func_t</a> <a class="link" href="cairo-user-font.html#cairo-user-font-face-get-init-func" title="cairo_user_font_face_get_init_func ()">cairo_user_font_face_get_init_func</a>
78
- (<a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t">cairo_font_face_t</a> *font_face);
79
- void <a class="link" href="cairo-user-font.html#cairo-user-font-face-set-render-glyph-func" title="cairo_user_font_face_set_render_glyph_func ()">cairo_user_font_face_set_render_glyph_func</a>
80
- (<a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t">cairo_font_face_t</a> *font_face,
81
- <a class="link" href="cairo-user-font.html#cairo-user-scaled-font-render-glyph-func-t" title="cairo_user_scaled_font_render_glyph_func_t ()">cairo_user_scaled_font_render_glyph_func_t</a> render_glyph_func);
82
- <a class="link" href="cairo-user-font.html#cairo-user-scaled-font-render-glyph-func-t" title="cairo_user_scaled_font_render_glyph_func_t ()">cairo_user_scaled_font_render_glyph_func_t</a> <a class="link" href="cairo-user-font.html#cairo-user-font-face-get-render-glyph-func" title="cairo_user_font_face_get_render_glyph_func ()">cairo_user_font_face_get_render_glyph_func</a>
83
- (<a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t">cairo_font_face_t</a> *font_face);
84
- void <a class="link" href="cairo-user-font.html#cairo-user-font-face-set-unicode-to-glyph-func" title="cairo_user_font_face_set_unicode_to_glyph_func ()">cairo_user_font_face_set_unicode_to_glyph_func</a>
85
- (<a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t">cairo_font_face_t</a> *font_face,
86
- <a class="link" href="cairo-user-font.html#cairo-user-scaled-font-unicode-to-glyph-func-t" title="cairo_user_scaled_font_unicode_to_glyph_func_t ()">cairo_user_scaled_font_unicode_to_glyph_func_t</a> unicode_to_glyph_func);
87
- <a class="link" href="cairo-user-font.html#cairo-user-scaled-font-unicode-to-glyph-func-t" title="cairo_user_scaled_font_unicode_to_glyph_func_t ()">cairo_user_scaled_font_unicode_to_glyph_func_t</a> <a class="link" href="cairo-user-font.html#cairo-user-font-face-get-unicode-to-glyph-func" title="cairo_user_font_face_get_unicode_to_glyph_func ()">cairo_user_font_face_get_unicode_to_glyph_func</a>
88
- (<a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t">cairo_font_face_t</a> *font_face);
89
- void <a class="link" href="cairo-user-font.html#cairo-user-font-face-set-text-to-glyphs-func" title="cairo_user_font_face_set_text_to_glyphs_func ()">cairo_user_font_face_set_text_to_glyphs_func</a>
90
- (<a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t">cairo_font_face_t</a> *font_face,
91
- <a class="link" href="cairo-user-font.html#cairo-user-scaled-font-text-to-glyphs-func-t" title="cairo_user_scaled_font_text_to_glyphs_func_t ()">cairo_user_scaled_font_text_to_glyphs_func_t</a> text_to_glyphs_func);
92
- <a class="link" href="cairo-user-font.html#cairo-user-scaled-font-text-to-glyphs-func-t" title="cairo_user_scaled_font_text_to_glyphs_func_t ()">cairo_user_scaled_font_text_to_glyphs_func_t</a> <a class="link" href="cairo-user-font.html#cairo-user-font-face-get-text-to-glyphs-func" title="cairo_user_font_face_get_text_to_glyphs_func ()">cairo_user_font_face_get_text_to_glyphs_func</a>
93
- (<a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t">cairo_font_face_t</a> *font_face);
94
- </pre>
95
- </div>
96
- <div class="refsect1" title="Description">
97
- <a name="cairo-user-font.description"></a><h2>Description</h2>
98
- <p>
99
- The user-font feature allows the cairo user to provide drawings for glyphs
100
- in a font. This is most useful in implementing fonts in non-standard
101
- formats, like SVG fonts and Flash fonts, but can also be used by games and
102
- other application to draw "funky" fonts.
103
-
104
- </p>
105
- </div>
106
- <div class="refsect1" title="Details">
107
- <a name="cairo-user-font.details"></a><h2>Details</h2>
108
- <div class="refsect2" title="CAIRO_HAS_USER_FONT">
109
- <a name="CAIRO-HAS-USER-FONT--CAPS"></a><h3>CAIRO_HAS_USER_FONT</h3>
110
- <pre class="programlisting">#define CAIRO_HAS_USER_FONT 1
111
- </pre>
112
- <p>
113
- Defined if the user font backend is available.
114
- This macro can be used to conditionally compile backend-specific code.
115
- The user font backend is always built in versions of cairo that support
116
- this feature (1.8 and later).
117
- </p>
118
- <p class="since">Since 1.8</p>
119
- </div>
120
- <hr>
121
- <div class="refsect2" title="cairo_user_scaled_font_init_func_t ()">
122
- <a name="cairo-user-scaled-font-init-func-t"></a><h3>cairo_user_scaled_font_init_func_t ()</h3>
123
- <pre class="programlisting"><a class="link" href="cairo-error-status.html#cairo-status-t" title="enum cairo_status_t">cairo_status_t</a> (*cairo_user_scaled_font_init_func_t)
124
- (<a class="link" href="cairo-scaled-font.html#cairo-scaled-font-t" title="cairo_scaled_font_t">cairo_scaled_font_t</a> *scaled_font,
125
- <a class="link" href="cairo-context.html#cairo-t" title="cairo_t">cairo_t</a> *cr,
126
- <a class="link" href="cairo-scaled-font.html#cairo-font-extents-t" title="cairo_font_extents_t">cairo_font_extents_t</a> *extents);</pre>
127
- <p>
128
- <a class="link" href="cairo-user-font.html#cairo-user-scaled-font-init-func-t" title="cairo_user_scaled_font_init_func_t ()"><span class="type">cairo_user_scaled_font_init_func_t</span></a> is the type of function which is
129
- called when a scaled-font needs to be created for a user font-face.
130
- </p>
131
- <p>
132
- The cairo context <em class="parameter"><code>cr</code></em> is not used by the caller, but is prepared in font
133
- space, similar to what the cairo contexts passed to the render_glyph
134
- method will look like. The callback can use this context for extents
135
- computation for example. After the callback is called, <em class="parameter"><code>cr</code></em> is checked
136
- for any error status.
137
- </p>
138
- <p>
139
- The <em class="parameter"><code>extents</code></em> argument is where the user font sets the font extents for
140
- <em class="parameter"><code>scaled_font</code></em>. It is in font space, which means that for most cases its
141
- ascent and descent members should add to 1.0. <em class="parameter"><code>extents</code></em> is preset to
142
- hold a value of 1.0 for ascent, height, and max_x_advance, and 0.0 for
143
- descent and max_y_advance members.
144
- </p>
145
- <p>
146
- The callback is optional. If not set, default font extents as described
147
- in the previous paragraph will be used.
148
- </p>
149
- <p>
150
- Note that <em class="parameter"><code>scaled_font</code></em> is not fully initialized at this
151
- point and trying to use it for text operations in the callback will result
152
- in deadlock.</p>
153
- <p>
154
- </p>
155
- <div class="variablelist"><table border="0">
156
- <col align="left" valign="top">
157
- <tbody>
158
- <tr>
159
- <td><p><span class="term"><em class="parameter"><code>scaled_font</code></em> :</span></p></td>
160
- <td> the scaled-font being created
161
- </td>
162
- </tr>
163
- <tr>
164
- <td><p><span class="term"><em class="parameter"><code>cr</code></em> :</span></p></td>
165
- <td> a cairo context, in font space
166
- </td>
167
- </tr>
168
- <tr>
169
- <td><p><span class="term"><em class="parameter"><code>extents</code></em> :</span></p></td>
170
- <td> font extents to fill in, in font space
171
- </td>
172
- </tr>
173
- <tr>
174
- <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
175
- <td> <a class="link" href="cairo-error-status.html#CAIRO-STATUS-SUCCESS--CAPS"><code class="literal">CAIRO_STATUS_SUCCESS</code></a> upon success, or
176
- <a class="link" href="cairo-error-status.html#CAIRO-STATUS-USER-FONT-ERROR--CAPS"><code class="literal">CAIRO_STATUS_USER_FONT_ERROR</code></a> or any other error status on error.
177
-
178
- </td>
179
- </tr>
180
- </tbody>
181
- </table></div>
182
- <p class="since">Since 1.8</p>
183
- </div>
184
- <hr>
185
- <div class="refsect2" title="cairo_user_scaled_font_render_glyph_func_t ()">
186
- <a name="cairo-user-scaled-font-render-glyph-func-t"></a><h3>cairo_user_scaled_font_render_glyph_func_t ()</h3>
187
- <pre class="programlisting"><a class="link" href="cairo-error-status.html#cairo-status-t" title="enum cairo_status_t">cairo_status_t</a> (*cairo_user_scaled_font_render_glyph_func_t)
188
- (<a class="link" href="cairo-scaled-font.html#cairo-scaled-font-t" title="cairo_scaled_font_t">cairo_scaled_font_t</a> *scaled_font,
189
- unsigned long glyph,
190
- <a class="link" href="cairo-context.html#cairo-t" title="cairo_t">cairo_t</a> *cr,
191
- <a class="link" href="cairo-scaled-font.html#cairo-text-extents-t" title="cairo_text_extents_t">cairo_text_extents_t</a> *extents);</pre>
192
- <p>
193
- <a class="link" href="cairo-user-font.html#cairo-user-scaled-font-render-glyph-func-t" title="cairo_user_scaled_font_render_glyph_func_t ()"><span class="type">cairo_user_scaled_font_render_glyph_func_t</span></a> is the type of function which
194
- is called when a user scaled-font needs to render a glyph.
195
- </p>
196
- <p>
197
- The callback is mandatory, and expected to draw the glyph with code <em class="parameter"><code>glyph</code></em> to
198
- the cairo context <em class="parameter"><code>cr</code></em>. <em class="parameter"><code>cr</code></em> is prepared such that the glyph drawing is done in
199
- font space. That is, the matrix set on <em class="parameter"><code>cr</code></em> is the scale matrix of <em class="parameter"><code>scaled_font</code></em>,
200
- The <em class="parameter"><code>extents</code></em> argument is where the user font sets the font extents for
201
- <em class="parameter"><code>scaled_font</code></em>. However, if user prefers to draw in user space, they can
202
- achieve that by changing the matrix on <em class="parameter"><code>cr</code></em>. All cairo rendering operations
203
- to <em class="parameter"><code>cr</code></em> are permitted, however, the result is undefined if any source other
204
- than the default source on <em class="parameter"><code>cr</code></em> is used. That means, glyph bitmaps should
205
- be rendered using <a class="link" href="cairo-context.html#cairo-mask" title="cairo_mask ()"><code class="function">cairo_mask()</code></a> instead of <a class="link" href="cairo-context.html#cairo-paint" title="cairo_paint ()"><code class="function">cairo_paint()</code></a>.
206
- </p>
207
- <p>
208
- Other non-default settings on <em class="parameter"><code>cr</code></em> include a font size of 1.0 (given that
209
- it is set up to be in font space), and font options corresponding to
210
- <em class="parameter"><code>scaled_font</code></em>.
211
- </p>
212
- <p>
213
- The <em class="parameter"><code>extents</code></em> argument is preset to have <code class="literal">x_bearing</code>,
214
- <code class="literal">width</code>, and <code class="literal">y_advance</code> of zero,
215
- <code class="literal">y_bearing</code> set to <code class="literal">-font_extents.ascent</code>,
216
- <code class="literal">height</code> to <code class="literal">font_extents.ascent+font_extents.descent</code>,
217
- and <code class="literal">x_advance</code> to <code class="literal">font_extents.max_x_advance</code>.
218
- The only field user needs to set in majority of cases is
219
- <code class="literal">x_advance</code>.
220
- If the <code class="literal">width</code> field is zero upon the callback returning
221
- (which is its preset value), the glyph extents are automatically computed
222
- based on the drawings done to <em class="parameter"><code>cr</code></em>. This is in most cases exactly what the
223
- desired behavior is. However, if for any reason the callback sets the
224
- extents, it must be ink extents, and include the extents of all drawing
225
- done to <em class="parameter"><code>cr</code></em> in the callback.</p>
226
- <p>
227
- </p>
228
- <div class="variablelist"><table border="0">
229
- <col align="left" valign="top">
230
- <tbody>
231
- <tr>
232
- <td><p><span class="term"><em class="parameter"><code>scaled_font</code></em> :</span></p></td>
233
- <td> user scaled-font
234
- </td>
235
- </tr>
236
- <tr>
237
- <td><p><span class="term"><em class="parameter"><code>glyph</code></em> :</span></p></td>
238
- <td> glyph code to render
239
- </td>
240
- </tr>
241
- <tr>
242
- <td><p><span class="term"><em class="parameter"><code>cr</code></em> :</span></p></td>
243
- <td> cairo context to draw to, in font space
244
- </td>
245
- </tr>
246
- <tr>
247
- <td><p><span class="term"><em class="parameter"><code>extents</code></em> :</span></p></td>
248
- <td> glyph extents to fill in, in font space
249
- </td>
250
- </tr>
251
- <tr>
252
- <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
253
- <td> <a class="link" href="cairo-error-status.html#CAIRO-STATUS-SUCCESS--CAPS"><code class="literal">CAIRO_STATUS_SUCCESS</code></a> upon success, or
254
- <a class="link" href="cairo-error-status.html#CAIRO-STATUS-USER-FONT-ERROR--CAPS"><code class="literal">CAIRO_STATUS_USER_FONT_ERROR</code></a> or any other error status on error.
255
-
256
- </td>
257
- </tr>
258
- </tbody>
259
- </table></div>
260
- <p class="since">Since 1.8</p>
261
- </div>
262
- <hr>
263
- <div class="refsect2" title="cairo_user_scaled_font_text_to_glyphs_func_t ()">
264
- <a name="cairo-user-scaled-font-text-to-glyphs-func-t"></a><h3>cairo_user_scaled_font_text_to_glyphs_func_t ()</h3>
265
- <pre class="programlisting"><a class="link" href="cairo-error-status.html#cairo-status-t" title="enum cairo_status_t">cairo_status_t</a> (*cairo_user_scaled_font_text_to_glyphs_func_t)
266
- (<a class="link" href="cairo-scaled-font.html#cairo-scaled-font-t" title="cairo_scaled_font_t">cairo_scaled_font_t</a> *scaled_font,
267
- const char *utf8,
268
- int utf8_len,
269
- <a class="link" href="cairo-text.html#cairo-glyph-t" title="cairo_glyph_t">cairo_glyph_t</a> **glyphs,
270
- int *num_glyphs,
271
- <a class="link" href="cairo-text.html#cairo-text-cluster-t" title="cairo_text_cluster_t">cairo_text_cluster_t</a> **clusters,
272
- int *num_clusters,
273
- <a class="link" href="cairo-text.html#cairo-text-cluster-flags-t" title="enum cairo_text_cluster_flags_t">cairo_text_cluster_flags_t</a> *cluster_flags);</pre>
274
- <p>
275
- <a class="link" href="cairo-user-font.html#cairo-user-scaled-font-text-to-glyphs-func-t" title="cairo_user_scaled_font_text_to_glyphs_func_t ()"><span class="type">cairo_user_scaled_font_text_to_glyphs_func_t</span></a> is the type of function which
276
- is called to convert input text to an array of glyphs. This is used by the
277
- <a class="link" href="cairo-text.html#cairo-show-text" title="cairo_show_text ()"><code class="function">cairo_show_text()</code></a> operation.
278
- </p>
279
- <p>
280
- Using this callback the user-font has full control on glyphs and their
281
- positions. That means, it allows for features like ligatures and kerning,
282
- as well as complex <em class="firstterm">shaping</em> required for scripts like
283
- Arabic and Indic.
284
- </p>
285
- <p>
286
- The <em class="parameter"><code>num_glyphs</code></em> argument is preset to the number of glyph entries available
287
- in the <em class="parameter"><code>glyphs</code></em> buffer. If the <em class="parameter"><code>glyphs</code></em> buffer is <code class="literal">NULL</code>, the value of
288
- <em class="parameter"><code>num_glyphs</code></em> will be zero. If the provided glyph array is too short for
289
- the conversion (or for convenience), a new glyph array may be allocated
290
- using <a class="link" href="cairo-text.html#cairo-glyph-allocate" title="cairo_glyph_allocate ()"><code class="function">cairo_glyph_allocate()</code></a> and placed in <em class="parameter"><code>glyphs</code></em>. Upon return,
291
- <em class="parameter"><code>num_glyphs</code></em> should contain the number of generated glyphs. If the value
292
- <em class="parameter"><code>glyphs</code></em> points at has changed after the call, the caller will free the
293
- allocated glyph array using <a class="link" href="cairo-text.html#cairo-glyph-free" title="cairo_glyph_free ()"><code class="function">cairo_glyph_free()</code></a>.
294
- The callback should populate the glyph indices and positions (in font space)
295
- assuming that the text is to be shown at the origin.
296
- </p>
297
- <p>
298
- If <em class="parameter"><code>clusters</code></em> is not <code class="literal">NULL</code>, <em class="parameter"><code>num_clusters</code></em> and <em class="parameter"><code>cluster_flags</code></em> are also
299
- non-<code class="literal">NULL</code>, and cluster mapping should be computed. The semantics of how
300
- cluster array allocation works is similar to the glyph array. That is,
301
- if <em class="parameter"><code>clusters</code></em> initially points to a non-<code class="literal">NULL</code> value, that array may be used
302
- as a cluster buffer, and <em class="parameter"><code>num_clusters</code></em> points to the number of cluster
303
- entries available there. If the provided cluster array is too short for
304
- the conversion (or for convenience), a new cluster array may be allocated
305
- using <a class="link" href="cairo-text.html#cairo-text-cluster-allocate" title="cairo_text_cluster_allocate ()"><code class="function">cairo_text_cluster_allocate()</code></a> and placed in <em class="parameter"><code>clusters</code></em>. Upon return,
306
- <em class="parameter"><code>num_clusters</code></em> should contain the number of generated clusters.
307
- If the value <em class="parameter"><code>clusters</code></em> points at has changed after the call, the caller
308
- will free the allocated cluster array using <a class="link" href="cairo-text.html#cairo-text-cluster-free" title="cairo_text_cluster_free ()"><code class="function">cairo_text_cluster_free()</code></a>.
309
- </p>
310
- <p>
311
- The callback is optional. If <em class="parameter"><code>num_glyphs</code></em> is negative upon
312
- the callback returning, the unicode_to_glyph callback
313
- is tried. See <a class="link" href="cairo-user-font.html#cairo-user-scaled-font-unicode-to-glyph-func-t" title="cairo_user_scaled_font_unicode_to_glyph_func_t ()"><span class="type">cairo_user_scaled_font_unicode_to_glyph_func_t</span></a>.
314
- </p>
315
- <p>
316
- Note: While cairo does not impose any limitation on glyph indices,
317
- some applications may assume that a glyph index fits in a 16-bit
318
- unsigned integer. As such, it is advised that user-fonts keep their
319
- glyphs in the 0 to 65535 range. Furthermore, some applications may
320
- assume that glyph 0 is a special glyph-not-found glyph. User-fonts
321
- are advised to use glyph 0 for such purposes and do not use that
322
- glyph value for other purposes.</p>
323
- <p>
324
- </p>
325
- <div class="variablelist"><table border="0">
326
- <col align="left" valign="top">
327
- <tbody>
328
- <tr>
329
- <td><p><span class="term"><em class="parameter"><code>scaled_font</code></em> :</span></p></td>
330
- <td> the scaled-font being created
331
- </td>
332
- </tr>
333
- <tr>
334
- <td><p><span class="term"><em class="parameter"><code>utf8</code></em> :</span></p></td>
335
- <td> a string of text encoded in UTF-8
336
- </td>
337
- </tr>
338
- <tr>
339
- <td><p><span class="term"><em class="parameter"><code>utf8_len</code></em> :</span></p></td>
340
- <td> length of <em class="parameter"><code>utf8</code></em> in bytes
341
- </td>
342
- </tr>
343
- <tr>
344
- <td><p><span class="term"><em class="parameter"><code>glyphs</code></em> :</span></p></td>
345
- <td> pointer to array of glyphs to fill, in font space
346
- </td>
347
- </tr>
348
- <tr>
349
- <td><p><span class="term"><em class="parameter"><code>num_glyphs</code></em> :</span></p></td>
350
- <td> pointer to number of glyphs
351
- </td>
352
- </tr>
353
- <tr>
354
- <td><p><span class="term"><em class="parameter"><code>clusters</code></em> :</span></p></td>
355
- <td> pointer to array of cluster mapping information to fill, or <code class="literal">NULL</code>
356
- </td>
357
- </tr>
358
- <tr>
359
- <td><p><span class="term"><em class="parameter"><code>num_clusters</code></em> :</span></p></td>
360
- <td> pointer to number of clusters
361
- </td>
362
- </tr>
363
- <tr>
364
- <td><p><span class="term"><em class="parameter"><code>cluster_flags</code></em> :</span></p></td>
365
- <td> pointer to location to store cluster flags corresponding to the
366
- output <em class="parameter"><code>clusters</code></em>
367
- </td>
368
- </tr>
369
- <tr>
370
- <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
371
- <td> <a class="link" href="cairo-error-status.html#CAIRO-STATUS-SUCCESS--CAPS"><code class="literal">CAIRO_STATUS_SUCCESS</code></a> upon success, or
372
- <a class="link" href="cairo-error-status.html#CAIRO-STATUS-USER-FONT-ERROR--CAPS"><code class="literal">CAIRO_STATUS_USER_FONT_ERROR</code></a> or any other error status on error.
373
-
374
- </td>
375
- </tr>
376
- </tbody>
377
- </table></div>
378
- <p class="since">Since 1.8</p>
379
- </div>
380
- <hr>
381
- <div class="refsect2" title="cairo_user_scaled_font_unicode_to_glyph_func_t ()">
382
- <a name="cairo-user-scaled-font-unicode-to-glyph-func-t"></a><h3>cairo_user_scaled_font_unicode_to_glyph_func_t ()</h3>
383
- <pre class="programlisting"><a class="link" href="cairo-error-status.html#cairo-status-t" title="enum cairo_status_t">cairo_status_t</a> (*cairo_user_scaled_font_unicode_to_glyph_func_t)
384
- (<a class="link" href="cairo-scaled-font.html#cairo-scaled-font-t" title="cairo_scaled_font_t">cairo_scaled_font_t</a> *scaled_font,
385
- unsigned long unicode,
386
- unsigned long *glyph_index);</pre>
387
- <p>
388
- <a class="link" href="cairo-user-font.html#cairo-user-scaled-font-unicode-to-glyph-func-t" title="cairo_user_scaled_font_unicode_to_glyph_func_t ()"><span class="type">cairo_user_scaled_font_unicode_to_glyph_func_t</span></a> is the type of function which
389
- is called to convert an input Unicode character to a single glyph.
390
- This is used by the <a class="link" href="cairo-text.html#cairo-show-text" title="cairo_show_text ()"><code class="function">cairo_show_text()</code></a> operation.
391
- </p>
392
- <p>
393
- This callback is used to provide the same functionality as the
394
- text_to_glyphs callback does (see <a class="link" href="cairo-user-font.html#cairo-user-scaled-font-text-to-glyphs-func-t" title="cairo_user_scaled_font_text_to_glyphs_func_t ()"><span class="type">cairo_user_scaled_font_text_to_glyphs_func_t</span></a>)
395
- but has much less control on the output,
396
- in exchange for increased ease of use. The inherent assumption to using
397
- this callback is that each character maps to one glyph, and that the
398
- mapping is context independent. It also assumes that glyphs are positioned
399
- according to their advance width. These mean no ligatures, kerning, or
400
- complex scripts can be implemented using this callback.
401
- </p>
402
- <p>
403
- The callback is optional, and only used if text_to_glyphs callback is not
404
- set or fails to return glyphs. If this callback is not set, an identity
405
- mapping from Unicode code-points to glyph indices is assumed.
406
- </p>
407
- <p>
408
- Note: While cairo does not impose any limitation on glyph indices,
409
- some applications may assume that a glyph index fits in a 16-bit
410
- unsigned integer. As such, it is advised that user-fonts keep their
411
- glyphs in the 0 to 65535 range. Furthermore, some applications may
412
- assume that glyph 0 is a special glyph-not-found glyph. User-fonts
413
- are advised to use glyph 0 for such purposes and do not use that
414
- glyph value for other purposes.</p>
415
- <p>
416
- </p>
417
- <div class="variablelist"><table border="0">
418
- <col align="left" valign="top">
419
- <tbody>
420
- <tr>
421
- <td><p><span class="term"><em class="parameter"><code>scaled_font</code></em> :</span></p></td>
422
- <td> the scaled-font being created
423
- </td>
424
- </tr>
425
- <tr>
426
- <td><p><span class="term"><em class="parameter"><code>unicode</code></em> :</span></p></td>
427
- <td> input unicode character code-point
428
- </td>
429
- </tr>
430
- <tr>
431
- <td><p><span class="term"><em class="parameter"><code>glyph_index</code></em> :</span></p></td>
432
- <td> output glyph index
433
- </td>
434
- </tr>
435
- <tr>
436
- <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
437
- <td> <a class="link" href="cairo-error-status.html#CAIRO-STATUS-SUCCESS--CAPS"><code class="literal">CAIRO_STATUS_SUCCESS</code></a> upon success, or
438
- <a class="link" href="cairo-error-status.html#CAIRO-STATUS-USER-FONT-ERROR--CAPS"><code class="literal">CAIRO_STATUS_USER_FONT_ERROR</code></a> or any other error status on error.
439
-
440
- </td>
441
- </tr>
442
- </tbody>
443
- </table></div>
444
- <p class="since">Since 1.8</p>
445
- </div>
446
- <hr>
447
- <div class="refsect2" title="cairo_user_font_face_create ()">
448
- <a name="cairo-user-font-face-create"></a><h3>cairo_user_font_face_create ()</h3>
449
- <pre class="programlisting"><a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t">cairo_font_face_t</a> * cairo_user_font_face_create (void);</pre>
450
- <p>
451
- Creates a new user font-face.
452
- </p>
453
- <p>
454
- Use the setter functions to associate callbacks with the returned
455
- user font. The only mandatory callback is render_glyph.
456
- </p>
457
- <p>
458
- After the font-face is created, the user can attach arbitrary data
459
- (the actual font data) to it using <a class="link" href="cairo-font-face.html#cairo-font-face-set-user-data" title="cairo_font_face_set_user_data ()"><code class="function">cairo_font_face_set_user_data()</code></a>
460
- and access it from the user-font callbacks by using
461
- <a class="link" href="cairo-scaled-font.html#cairo-scaled-font-get-font-face" title="cairo_scaled_font_get_font_face ()"><code class="function">cairo_scaled_font_get_font_face()</code></a> followed by
462
- <a class="link" href="cairo-font-face.html#cairo-font-face-get-user-data" title="cairo_font_face_get_user_data ()"><code class="function">cairo_font_face_get_user_data()</code></a>.</p>
463
- <p>
464
- </p>
465
- <div class="variablelist"><table border="0">
466
- <col align="left" valign="top">
467
- <tbody><tr>
468
- <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
469
- <td> a newly created <a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t"><span class="type">cairo_font_face_t</span></a>. Free with
470
- <a class="link" href="cairo-font-face.html#cairo-font-face-destroy" title="cairo_font_face_destroy ()"><code class="function">cairo_font_face_destroy()</code></a> when you are done using it.
471
-
472
- </td>
473
- </tr></tbody>
474
- </table></div>
475
- <p class="since">Since 1.8</p>
476
- </div>
477
- <hr>
478
- <div class="refsect2" title="cairo_user_font_face_set_init_func ()">
479
- <a name="cairo-user-font-face-set-init-func"></a><h3>cairo_user_font_face_set_init_func ()</h3>
480
- <pre class="programlisting">void cairo_user_font_face_set_init_func (<a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t">cairo_font_face_t</a> *font_face,
481
- <a class="link" href="cairo-user-font.html#cairo-user-scaled-font-init-func-t" title="cairo_user_scaled_font_init_func_t ()">cairo_user_scaled_font_init_func_t</a> init_func);</pre>
482
- <p>
483
- Sets the scaled-font initialization function of a user-font.
484
- See <a class="link" href="cairo-user-font.html#cairo-user-scaled-font-init-func-t" title="cairo_user_scaled_font_init_func_t ()"><span class="type">cairo_user_scaled_font_init_func_t</span></a> for details of how the callback
485
- works.
486
- </p>
487
- <p>
488
- The font-face should not be immutable or a <a class="link" href="cairo-error-status.html#CAIRO-STATUS-USER-FONT-IMMUTABLE--CAPS"><code class="literal">CAIRO_STATUS_USER_FONT_IMMUTABLE</code></a>
489
- error will occur. A user font-face is immutable as soon as a scaled-font
490
- is created from it.</p>
491
- <p>
492
- </p>
493
- <div class="variablelist"><table border="0">
494
- <col align="left" valign="top">
495
- <tbody>
496
- <tr>
497
- <td><p><span class="term"><em class="parameter"><code>font_face</code></em> :</span></p></td>
498
- <td> A user font face
499
- </td>
500
- </tr>
501
- <tr>
502
- <td><p><span class="term"><em class="parameter"><code>init_func</code></em> :</span></p></td>
503
- <td> The init callback, or <code class="literal">NULL</code>
504
- </td>
505
- </tr>
506
- </tbody>
507
- </table></div>
508
- <p class="since">Since 1.8</p>
509
- </div>
510
- <hr>
511
- <div class="refsect2" title="cairo_user_font_face_get_init_func ()">
512
- <a name="cairo-user-font-face-get-init-func"></a><h3>cairo_user_font_face_get_init_func ()</h3>
513
- <pre class="programlisting"><a class="link" href="cairo-user-font.html#cairo-user-scaled-font-init-func-t" title="cairo_user_scaled_font_init_func_t ()">cairo_user_scaled_font_init_func_t</a> cairo_user_font_face_get_init_func
514
- (<a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t">cairo_font_face_t</a> *font_face);</pre>
515
- <p>
516
- Gets the scaled-font initialization function of a user-font.</p>
517
- <p>
518
- </p>
519
- <div class="variablelist"><table border="0">
520
- <col align="left" valign="top">
521
- <tbody>
522
- <tr>
523
- <td><p><span class="term"><em class="parameter"><code>font_face</code></em> :</span></p></td>
524
- <td> A user font face
525
- </td>
526
- </tr>
527
- <tr>
528
- <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
529
- <td> The init callback of <em class="parameter"><code>font_face</code></em>
530
- or <code class="literal">NULL</code> if none set or an error has occurred.
531
-
532
- </td>
533
- </tr>
534
- </tbody>
535
- </table></div>
536
- <p class="since">Since 1.8</p>
537
- </div>
538
- <hr>
539
- <div class="refsect2" title="cairo_user_font_face_set_render_glyph_func ()">
540
- <a name="cairo-user-font-face-set-render-glyph-func"></a><h3>cairo_user_font_face_set_render_glyph_func ()</h3>
541
- <pre class="programlisting">void cairo_user_font_face_set_render_glyph_func
542
- (<a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t">cairo_font_face_t</a> *font_face,
543
- <a class="link" href="cairo-user-font.html#cairo-user-scaled-font-render-glyph-func-t" title="cairo_user_scaled_font_render_glyph_func_t ()">cairo_user_scaled_font_render_glyph_func_t</a> render_glyph_func);</pre>
544
- <p>
545
- Sets the glyph rendering function of a user-font.
546
- See <a class="link" href="cairo-user-font.html#cairo-user-scaled-font-render-glyph-func-t" title="cairo_user_scaled_font_render_glyph_func_t ()"><span class="type">cairo_user_scaled_font_render_glyph_func_t</span></a> for details of how the callback
547
- works.
548
- </p>
549
- <p>
550
- The font-face should not be immutable or a <a class="link" href="cairo-error-status.html#CAIRO-STATUS-USER-FONT-IMMUTABLE--CAPS"><code class="literal">CAIRO_STATUS_USER_FONT_IMMUTABLE</code></a>
551
- error will occur. A user font-face is immutable as soon as a scaled-font
552
- is created from it.
553
- </p>
554
- <p>
555
- The render_glyph callback is the only mandatory callback of a user-font.
556
- If the callback is <code class="literal">NULL</code> and a glyph is tried to be rendered using
557
- <em class="parameter"><code>font_face</code></em>, a <a class="link" href="cairo-error-status.html#CAIRO-STATUS-USER-FONT-ERROR--CAPS"><code class="literal">CAIRO_STATUS_USER_FONT_ERROR</code></a> will occur.</p>
558
- <p>
559
- </p>
560
- <div class="variablelist"><table border="0">
561
- <col align="left" valign="top">
562
- <tbody>
563
- <tr>
564
- <td><p><span class="term"><em class="parameter"><code>font_face</code></em> :</span></p></td>
565
- <td> A user font face
566
- </td>
567
- </tr>
568
- <tr>
569
- <td><p><span class="term"><em class="parameter"><code>render_glyph_func</code></em> :</span></p></td>
570
- <td> The render_glyph callback, or <code class="literal">NULL</code>
571
- </td>
572
- </tr>
573
- </tbody>
574
- </table></div>
575
- <p class="since">Since 1.8</p>
576
- </div>
577
- <hr>
578
- <div class="refsect2" title="cairo_user_font_face_get_render_glyph_func ()">
579
- <a name="cairo-user-font-face-get-render-glyph-func"></a><h3>cairo_user_font_face_get_render_glyph_func ()</h3>
580
- <pre class="programlisting"><a class="link" href="cairo-user-font.html#cairo-user-scaled-font-render-glyph-func-t" title="cairo_user_scaled_font_render_glyph_func_t ()">cairo_user_scaled_font_render_glyph_func_t</a> cairo_user_font_face_get_render_glyph_func
581
- (<a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t">cairo_font_face_t</a> *font_face);</pre>
582
- <p>
583
- Gets the glyph rendering function of a user-font.</p>
584
- <p>
585
- </p>
586
- <div class="variablelist"><table border="0">
587
- <col align="left" valign="top">
588
- <tbody>
589
- <tr>
590
- <td><p><span class="term"><em class="parameter"><code>font_face</code></em> :</span></p></td>
591
- <td> A user font face
592
- </td>
593
- </tr>
594
- <tr>
595
- <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
596
- <td> The render_glyph callback of <em class="parameter"><code>font_face</code></em>
597
- or <code class="literal">NULL</code> if none set or an error has occurred.
598
-
599
- </td>
600
- </tr>
601
- </tbody>
602
- </table></div>
603
- <p class="since">Since 1.8</p>
604
- </div>
605
- <hr>
606
- <div class="refsect2" title="cairo_user_font_face_set_unicode_to_glyph_func ()">
607
- <a name="cairo-user-font-face-set-unicode-to-glyph-func"></a><h3>cairo_user_font_face_set_unicode_to_glyph_func ()</h3>
608
- <pre class="programlisting">void cairo_user_font_face_set_unicode_to_glyph_func
609
- (<a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t">cairo_font_face_t</a> *font_face,
610
- <a class="link" href="cairo-user-font.html#cairo-user-scaled-font-unicode-to-glyph-func-t" title="cairo_user_scaled_font_unicode_to_glyph_func_t ()">cairo_user_scaled_font_unicode_to_glyph_func_t</a> unicode_to_glyph_func);</pre>
611
- <p>
612
- Sets the unicode-to-glyph conversion function of a user-font.
613
- See <a class="link" href="cairo-user-font.html#cairo-user-scaled-font-unicode-to-glyph-func-t" title="cairo_user_scaled_font_unicode_to_glyph_func_t ()"><span class="type">cairo_user_scaled_font_unicode_to_glyph_func_t</span></a> for details of how the callback
614
- works.
615
- </p>
616
- <p>
617
- The font-face should not be immutable or a <a class="link" href="cairo-error-status.html#CAIRO-STATUS-USER-FONT-IMMUTABLE--CAPS"><code class="literal">CAIRO_STATUS_USER_FONT_IMMUTABLE</code></a>
618
- error will occur. A user font-face is immutable as soon as a scaled-font
619
- is created from it.</p>
620
- <p>
621
- </p>
622
- <div class="variablelist"><table border="0">
623
- <col align="left" valign="top">
624
- <tbody>
625
- <tr>
626
- <td><p><span class="term"><em class="parameter"><code>font_face</code></em> :</span></p></td>
627
- <td> A user font face
628
- </td>
629
- </tr>
630
- <tr>
631
- <td><p><span class="term"><em class="parameter"><code>unicode_to_glyph_func</code></em> :</span></p></td>
632
- <td> The unicode_to_glyph callback, or <code class="literal">NULL</code>
633
- </td>
634
- </tr>
635
- </tbody>
636
- </table></div>
637
- <p class="since">Since 1.8</p>
638
- </div>
639
- <hr>
640
- <div class="refsect2" title="cairo_user_font_face_get_unicode_to_glyph_func ()">
641
- <a name="cairo-user-font-face-get-unicode-to-glyph-func"></a><h3>cairo_user_font_face_get_unicode_to_glyph_func ()</h3>
642
- <pre class="programlisting"><a class="link" href="cairo-user-font.html#cairo-user-scaled-font-unicode-to-glyph-func-t" title="cairo_user_scaled_font_unicode_to_glyph_func_t ()">cairo_user_scaled_font_unicode_to_glyph_func_t</a> cairo_user_font_face_get_unicode_to_glyph_func
643
- (<a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t">cairo_font_face_t</a> *font_face);</pre>
644
- <p>
645
- Gets the unicode-to-glyph conversion function of a user-font.</p>
646
- <p>
647
- </p>
648
- <div class="variablelist"><table border="0">
649
- <col align="left" valign="top">
650
- <tbody>
651
- <tr>
652
- <td><p><span class="term"><em class="parameter"><code>font_face</code></em> :</span></p></td>
653
- <td> A user font face
654
- </td>
655
- </tr>
656
- <tr>
657
- <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
658
- <td> The unicode_to_glyph callback of <em class="parameter"><code>font_face</code></em>
659
- or <code class="literal">NULL</code> if none set or an error occurred.
660
-
661
- </td>
662
- </tr>
663
- </tbody>
664
- </table></div>
665
- <p class="since">Since 1.8</p>
666
- </div>
667
- <hr>
668
- <div class="refsect2" title="cairo_user_font_face_set_text_to_glyphs_func ()">
669
- <a name="cairo-user-font-face-set-text-to-glyphs-func"></a><h3>cairo_user_font_face_set_text_to_glyphs_func ()</h3>
670
- <pre class="programlisting">void cairo_user_font_face_set_text_to_glyphs_func
671
- (<a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t">cairo_font_face_t</a> *font_face,
672
- <a class="link" href="cairo-user-font.html#cairo-user-scaled-font-text-to-glyphs-func-t" title="cairo_user_scaled_font_text_to_glyphs_func_t ()">cairo_user_scaled_font_text_to_glyphs_func_t</a> text_to_glyphs_func);</pre>
673
- <p>
674
- Sets th text-to-glyphs conversion function of a user-font.
675
- See <a class="link" href="cairo-user-font.html#cairo-user-scaled-font-text-to-glyphs-func-t" title="cairo_user_scaled_font_text_to_glyphs_func_t ()"><span class="type">cairo_user_scaled_font_text_to_glyphs_func_t</span></a> for details of how the callback
676
- works.
677
- </p>
678
- <p>
679
- The font-face should not be immutable or a <a class="link" href="cairo-error-status.html#CAIRO-STATUS-USER-FONT-IMMUTABLE--CAPS"><code class="literal">CAIRO_STATUS_USER_FONT_IMMUTABLE</code></a>
680
- error will occur. A user font-face is immutable as soon as a scaled-font
681
- is created from it.</p>
682
- <p>
683
- </p>
684
- <div class="variablelist"><table border="0">
685
- <col align="left" valign="top">
686
- <tbody>
687
- <tr>
688
- <td><p><span class="term"><em class="parameter"><code>font_face</code></em> :</span></p></td>
689
- <td> A user font face
690
- </td>
691
- </tr>
692
- <tr>
693
- <td><p><span class="term"><em class="parameter"><code>text_to_glyphs_func</code></em> :</span></p></td>
694
- <td> The text_to_glyphs callback, or <code class="literal">NULL</code>
695
- </td>
696
- </tr>
697
- </tbody>
698
- </table></div>
699
- <p class="since">Since 1.8</p>
700
- </div>
701
- <hr>
702
- <div class="refsect2" title="cairo_user_font_face_get_text_to_glyphs_func ()">
703
- <a name="cairo-user-font-face-get-text-to-glyphs-func"></a><h3>cairo_user_font_face_get_text_to_glyphs_func ()</h3>
704
- <pre class="programlisting"><a class="link" href="cairo-user-font.html#cairo-user-scaled-font-text-to-glyphs-func-t" title="cairo_user_scaled_font_text_to_glyphs_func_t ()">cairo_user_scaled_font_text_to_glyphs_func_t</a> cairo_user_font_face_get_text_to_glyphs_func
705
- (<a class="link" href="cairo-font-face.html#cairo-font-face-t" title="cairo_font_face_t">cairo_font_face_t</a> *font_face);</pre>
706
- <p>
707
- Gets the text-to-glyphs conversion function of a user-font.</p>
708
- <p>
709
- </p>
710
- <div class="variablelist"><table border="0">
711
- <col align="left" valign="top">
712
- <tbody>
713
- <tr>
714
- <td><p><span class="term"><em class="parameter"><code>font_face</code></em> :</span></p></td>
715
- <td> A user font face
716
- </td>
717
- </tr>
718
- <tr>
719
- <td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
720
- <td> The text_to_glyphs callback of <em class="parameter"><code>font_face</code></em>
721
- or <code class="literal">NULL</code> if none set or an error occurred.
722
-
723
- </td>
724
- </tr>
725
- </tbody>
726
- </table></div>
727
- <p class="since">Since 1.8</p>
728
- </div>
729
- </div>
730
- </div>
731
- <div class="footer">
732
- <hr>
733
- Generated by GTK-Doc V1.11</div>
734
- </body>
735
- </html>