cairo 1.8.3-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 (352) hide show
  1. data/AUTHORS +4 -0
  2. data/COPYING +59 -0
  3. data/GPL +340 -0
  4. data/NEWS +163 -0
  5. data/Rakefile +190 -0
  6. data/doc/doc.css +91 -0
  7. data/doc/en/cairo-antialias.html +38 -0
  8. data/doc/en/cairo-clip-not-representable-error.html +47 -0
  9. data/doc/en/cairo-color-base.html +69 -0
  10. data/doc/en/cairo-color-cmyk.html +157 -0
  11. data/doc/en/cairo-color-hsv.html +137 -0
  12. data/doc/en/cairo-color-rgb.html +142 -0
  13. data/doc/en/cairo-color-x11.html +173 -0
  14. data/doc/en/cairo-color.html +238 -0
  15. data/doc/en/cairo-content.html +37 -0
  16. data/doc/en/cairo-context-blur.html +39 -0
  17. data/doc/en/cairo-context-circle.html +39 -0
  18. data/doc/en/cairo-context-color.html +39 -0
  19. data/doc/en/cairo-context-path.html +44 -0
  20. data/doc/en/cairo-context-rectangle.html +39 -0
  21. data/doc/en/cairo-context-triangle.html +39 -0
  22. data/doc/en/cairo-context.html +643 -0
  23. data/doc/en/cairo-error.html +44 -0
  24. data/doc/en/cairo-extend.html +38 -0
  25. data/doc/en/cairo-file-not-found.html +47 -0
  26. data/doc/en/cairo-fill-rule.html +36 -0
  27. data/doc/en/cairo-filter.html +40 -0
  28. data/doc/en/cairo-font-extents.html +129 -0
  29. data/doc/en/cairo-font-face.html +38 -0
  30. data/doc/en/cairo-font-options.html +139 -0
  31. data/doc/en/cairo-font-slant.html +37 -0
  32. data/doc/en/cairo-font-type-mismatch.html +47 -0
  33. data/doc/en/cairo-font-weight.html +36 -0
  34. data/doc/en/cairo-format.html +46 -0
  35. data/doc/en/cairo-glyph.html +99 -0
  36. data/doc/en/cairo-gradient-pattern.html +74 -0
  37. data/doc/en/cairo-hint-metrics.html +37 -0
  38. data/doc/en/cairo-hint-style.html +39 -0
  39. data/doc/en/cairo-image-surface.html +82 -0
  40. data/doc/en/cairo-invalid-clusters.html +47 -0
  41. data/doc/en/cairo-invalid-content-error.html +47 -0
  42. data/doc/en/cairo-invalid-dash-error.html +47 -0
  43. data/doc/en/cairo-invalid-dsc-comment-error.html +47 -0
  44. data/doc/en/cairo-invalid-format-error.html +47 -0
  45. data/doc/en/cairo-invalid-index-error.html +47 -0
  46. data/doc/en/cairo-invalid-matrix-error.html +47 -0
  47. data/doc/en/cairo-invalid-path-data-error.html +47 -0
  48. data/doc/en/cairo-invalid-pop-group-error.html +47 -0
  49. data/doc/en/cairo-invalid-restore-error.html +47 -0
  50. data/doc/en/cairo-invalid-slant.html +47 -0
  51. data/doc/en/cairo-invalid-status-error.html +47 -0
  52. data/doc/en/cairo-invalid-stride-error.html +47 -0
  53. data/doc/en/cairo-invalid-string-error.html +47 -0
  54. data/doc/en/cairo-invalid-visual-error.html +47 -0
  55. data/doc/en/cairo-invalid-weight.html +47 -0
  56. data/doc/en/cairo-line-cap.html +37 -0
  57. data/doc/en/cairo-line-join.html +37 -0
  58. data/doc/en/cairo-linear-pattern.html +60 -0
  59. data/doc/en/cairo-matrix.html +259 -0
  60. data/doc/en/cairo-negative-count.html +47 -0
  61. data/doc/en/cairo-no-current-point-error.html +47 -0
  62. data/doc/en/cairo-null-pointer-error.html +47 -0
  63. data/doc/en/cairo-operator.html +48 -0
  64. data/doc/en/cairo-paper-parse-error.html +47 -0
  65. data/doc/en/cairo-paper-unknown-paper-name.html +66 -0
  66. data/doc/en/cairo-paper-unknown-unit.html +66 -0
  67. data/doc/en/cairo-paper-unrecognized-paper-description.html +66 -0
  68. data/doc/en/cairo-paper.html +184 -0
  69. data/doc/en/cairo-path-close-path.html +49 -0
  70. data/doc/en/cairo-path-curve-to.html +49 -0
  71. data/doc/en/cairo-path-data-type.html +38 -0
  72. data/doc/en/cairo-path-data.html +98 -0
  73. data/doc/en/cairo-path-line-to.html +49 -0
  74. data/doc/en/cairo-path-move-to.html +49 -0
  75. data/doc/en/cairo-path.html +155 -0
  76. data/doc/en/cairo-pattern-type-mismatch-error.html +47 -0
  77. data/doc/en/cairo-pattern.html +99 -0
  78. data/doc/en/cairo-pdf-surface.html +57 -0
  79. data/doc/en/cairo-point.html +74 -0
  80. data/doc/en/cairo-ps-level.html +49 -0
  81. data/doc/en/cairo-ps-surface.html +92 -0
  82. data/doc/en/cairo-quartz-image-surface.html +57 -0
  83. data/doc/en/cairo-quartz-surface.html +57 -0
  84. data/doc/en/cairo-radial-pattern.html +60 -0
  85. data/doc/en/cairo-read-error.html +47 -0
  86. data/doc/en/cairo-rectangle.html +89 -0
  87. data/doc/en/cairo-scaled-font.html +94 -0
  88. data/doc/en/cairo-solid-pattern.html +62 -0
  89. data/doc/en/cairo-subpixel-order.html +39 -0
  90. data/doc/en/cairo-surface-finished-error.html +47 -0
  91. data/doc/en/cairo-surface-pattern.html +57 -0
  92. data/doc/en/cairo-surface-type-mismatch-error.html +47 -0
  93. data/doc/en/cairo-surface.html +121 -0
  94. data/doc/en/cairo-svg-surface.html +77 -0
  95. data/doc/en/cairo-svg-version.html +49 -0
  96. data/doc/en/cairo-temp-file-error.html +47 -0
  97. data/doc/en/cairo-text-cluster-flag.html +35 -0
  98. data/doc/en/cairo-text-cluster.html +84 -0
  99. data/doc/en/cairo-text-extents.html +144 -0
  100. data/doc/en/cairo-toy-font-face.html +67 -0
  101. data/doc/en/cairo-user-font-error.html +47 -0
  102. data/doc/en/cairo-user-font-face-text-to-glyphs-data.html +94 -0
  103. data/doc/en/cairo-user-font-face.html +72 -0
  104. data/doc/en/cairo-user-font-immutable.html +47 -0
  105. data/doc/en/cairo-win32-printing-surface.html +57 -0
  106. data/doc/en/cairo-win32-surface.html +62 -0
  107. data/doc/en/cairo-write-error.html +47 -0
  108. data/doc/en/cairo.html +131 -0
  109. data/doc/en/index.html +1154 -0
  110. data/doc/index.html +18 -0
  111. data/doc/ja/cairo-antialias.html +57 -0
  112. data/doc/ja/cairo-clip-not-representable-error.html +56 -0
  113. data/doc/ja/cairo-color-base.html +75 -0
  114. data/doc/ja/cairo-color-cmyk.html +152 -0
  115. data/doc/ja/cairo-color-hsv.html +135 -0
  116. data/doc/ja/cairo-color-rgb.html +145 -0
  117. data/doc/ja/cairo-color-x11.html +183 -0
  118. data/doc/ja/cairo-color.html +317 -0
  119. data/doc/ja/cairo-content.html +51 -0
  120. data/doc/ja/cairo-context-blur.html +53 -0
  121. data/doc/ja/cairo-context-circle.html +54 -0
  122. data/doc/ja/cairo-context-color.html +52 -0
  123. data/doc/ja/cairo-context-path.html +77 -0
  124. data/doc/ja/cairo-context-rectangle.html +60 -0
  125. data/doc/ja/cairo-context-triangle.html +47 -0
  126. data/doc/ja/cairo-context.html +1542 -0
  127. data/doc/ja/cairo-error.html +56 -0
  128. data/doc/ja/cairo-extend.html +56 -0
  129. data/doc/ja/cairo-file-not-found.html +51 -0
  130. data/doc/ja/cairo-fill-rule.html +58 -0
  131. data/doc/ja/cairo-filter.html +43 -0
  132. data/doc/ja/cairo-font-extents.html +164 -0
  133. data/doc/ja/cairo-font-face.html +55 -0
  134. data/doc/ja/cairo-font-options.html +189 -0
  135. data/doc/ja/cairo-font-slant.html +50 -0
  136. data/doc/ja/cairo-font-type-mismatch.html +52 -0
  137. data/doc/ja/cairo-font-weight.html +47 -0
  138. data/doc/ja/cairo-format.html +81 -0
  139. data/doc/ja/cairo-glyph.html +115 -0
  140. data/doc/ja/cairo-gradient-pattern.html +119 -0
  141. data/doc/ja/cairo-hint-metrics.html +57 -0
  142. data/doc/ja/cairo-hint-style.html +64 -0
  143. data/doc/ja/cairo-image-surface.html +131 -0
  144. data/doc/ja/cairo-invalid-clusters.html +55 -0
  145. data/doc/ja/cairo-invalid-content-error.html +54 -0
  146. data/doc/ja/cairo-invalid-dash-error.html +54 -0
  147. data/doc/ja/cairo-invalid-dsc-comment-error.html +54 -0
  148. data/doc/ja/cairo-invalid-format-error.html +54 -0
  149. data/doc/ja/cairo-invalid-index-error.html +54 -0
  150. data/doc/ja/cairo-invalid-matrix-error.html +54 -0
  151. data/doc/ja/cairo-invalid-path-data-error.html +54 -0
  152. data/doc/ja/cairo-invalid-pop-group-error.html +54 -0
  153. data/doc/ja/cairo-invalid-restore-error.html +55 -0
  154. data/doc/ja/cairo-invalid-slant.html +57 -0
  155. data/doc/ja/cairo-invalid-status-error.html +55 -0
  156. data/doc/ja/cairo-invalid-stride-error.html +55 -0
  157. data/doc/ja/cairo-invalid-string-error.html +54 -0
  158. data/doc/ja/cairo-invalid-visual-error.html +57 -0
  159. data/doc/ja/cairo-invalid-weight.html +57 -0
  160. data/doc/ja/cairo-line-cap.html +50 -0
  161. data/doc/ja/cairo-line-join.html +53 -0
  162. data/doc/ja/cairo-linear-pattern.html +87 -0
  163. data/doc/ja/cairo-matrix.html +354 -0
  164. data/doc/ja/cairo-negative-count.html +52 -0
  165. data/doc/ja/cairo-no-current-point-error.html +54 -0
  166. data/doc/ja/cairo-null-pointer-error.html +54 -0
  167. data/doc/ja/cairo-operator.html +51 -0
  168. data/doc/ja/cairo-paper-parse-error.html +55 -0
  169. data/doc/ja/cairo-paper-unknown-paper-name.html +76 -0
  170. data/doc/ja/cairo-paper-unknown-unit.html +75 -0
  171. data/doc/ja/cairo-paper-unrecognized-paper-description.html +76 -0
  172. data/doc/ja/cairo-paper.html +357 -0
  173. data/doc/ja/cairo-path-close-path.html +57 -0
  174. data/doc/ja/cairo-path-curve-to.html +70 -0
  175. data/doc/ja/cairo-path-data-type.html +53 -0
  176. data/doc/ja/cairo-path-data.html +127 -0
  177. data/doc/ja/cairo-path-line-to.html +62 -0
  178. data/doc/ja/cairo-path-move-to.html +62 -0
  179. data/doc/ja/cairo-path.html +144 -0
  180. data/doc/ja/cairo-pattern-type-mismatch-error.html +56 -0
  181. data/doc/ja/cairo-pattern.html +128 -0
  182. data/doc/ja/cairo-pdf-surface.html +86 -0
  183. data/doc/ja/cairo-point.html +90 -0
  184. data/doc/ja/cairo-ps-level.html +62 -0
  185. data/doc/ja/cairo-ps-surface.html +214 -0
  186. data/doc/ja/cairo-quartz-image-surface.html +75 -0
  187. data/doc/ja/cairo-quartz-surface.html +93 -0
  188. data/doc/ja/cairo-radial-pattern.html +93 -0
  189. data/doc/ja/cairo-read-error.html +55 -0
  190. data/doc/ja/cairo-rectangle.html +109 -0
  191. data/doc/ja/cairo-scaled-font.html +180 -0
  192. data/doc/ja/cairo-solid-pattern.html +87 -0
  193. data/doc/ja/cairo-subpixel-order.html +57 -0
  194. data/doc/ja/cairo-surface-finished-error.html +54 -0
  195. data/doc/ja/cairo-surface-pattern.html +68 -0
  196. data/doc/ja/cairo-surface-type-mismatch-error.html +56 -0
  197. data/doc/ja/cairo-surface.html +213 -0
  198. data/doc/ja/cairo-svg-surface.html +114 -0
  199. data/doc/ja/cairo-svg-version.html +66 -0
  200. data/doc/ja/cairo-temp-file-error.html +50 -0
  201. data/doc/ja/cairo-text-cluster-flag.html +46 -0
  202. data/doc/ja/cairo-text-cluster.html +102 -0
  203. data/doc/ja/cairo-text-extents.html +163 -0
  204. data/doc/ja/cairo-toy-font-face.html +107 -0
  205. data/doc/ja/cairo-user-font-error.html +55 -0
  206. data/doc/ja/cairo-user-font-face-text-to-glyphs-data.html +156 -0
  207. data/doc/ja/cairo-user-font-face.html +268 -0
  208. data/doc/ja/cairo-user-font-immutable.html +54 -0
  209. data/doc/ja/cairo-win32-printing-surface.html +80 -0
  210. data/doc/ja/cairo-win32-surface.html +100 -0
  211. data/doc/ja/cairo-write-error.html +55 -0
  212. data/doc/ja/cairo.html +177 -0
  213. data/doc/ja/index.html +1156 -0
  214. data/ext/cairo/cairo.def +104 -0
  215. data/ext/cairo/extconf.rb +80 -0
  216. data/ext/cairo/rb_cairo.c +104 -0
  217. data/ext/cairo/rb_cairo.h +275 -0
  218. data/ext/cairo/rb_cairo_constants.c +478 -0
  219. data/ext/cairo/rb_cairo_context.c +1693 -0
  220. data/ext/cairo/rb_cairo_exception.c +354 -0
  221. data/ext/cairo/rb_cairo_font_extents.c +200 -0
  222. data/ext/cairo/rb_cairo_font_face.c +713 -0
  223. data/ext/cairo/rb_cairo_font_options.c +197 -0
  224. data/ext/cairo/rb_cairo_glyph.c +161 -0
  225. data/ext/cairo/rb_cairo_matrix.c +366 -0
  226. data/ext/cairo/rb_cairo_path.c +459 -0
  227. data/ext/cairo/rb_cairo_pattern.c +540 -0
  228. data/ext/cairo/rb_cairo_private.c +242 -0
  229. data/ext/cairo/rb_cairo_private.h +114 -0
  230. data/ext/cairo/rb_cairo_scaled_font.c +235 -0
  231. data/ext/cairo/rb_cairo_surface.c +1371 -0
  232. data/ext/cairo/rb_cairo_text_cluster.c +151 -0
  233. data/ext/cairo/rb_cairo_text_extents.c +221 -0
  234. data/extconf.rb +45 -0
  235. data/lib/1.8/cairo.so +0 -0
  236. data/lib/1.9/cairo.so +0 -0
  237. data/lib/cairo.rb +151 -0
  238. data/lib/cairo/color.rb +267 -0
  239. data/lib/cairo/colors.rb +656 -0
  240. data/lib/cairo/constants.rb +24 -0
  241. data/lib/cairo/context.rb +29 -0
  242. data/lib/cairo/context/blur.rb +45 -0
  243. data/lib/cairo/context/circle.rb +9 -0
  244. data/lib/cairo/context/color.rb +11 -0
  245. data/lib/cairo/context/path.rb +116 -0
  246. data/lib/cairo/context/rectangle.rb +33 -0
  247. data/lib/cairo/context/triangle.rb +12 -0
  248. data/lib/cairo/paper.rb +183 -0
  249. data/lib/cairo/papers.rb +41 -0
  250. data/lib/cairo/path.rb +15 -0
  251. data/lib/cairo/point.rb +7 -0
  252. data/misc/update-colors.rb +143 -0
  253. data/pkg-config.rb +313 -0
  254. data/samples/agg/README +4 -0
  255. data/samples/agg/aa_test.rb +304 -0
  256. data/samples/blur.rb +47 -0
  257. data/samples/pac.rb +99 -0
  258. data/samples/pac2.rb +171 -0
  259. data/samples/png.rb +45 -0
  260. data/samples/scalable.rb +56 -0
  261. data/samples/text-on-path.rb +60 -0
  262. data/samples/text2.rb +131 -0
  263. data/test-unit/Rakefile +30 -0
  264. data/test-unit/bin/testrb +5 -0
  265. data/test-unit/lib/test/unit.rb +280 -0
  266. data/test-unit/lib/test/unit/assertionfailederror.rb +14 -0
  267. data/test-unit/lib/test/unit/assertions.rb +722 -0
  268. data/test-unit/lib/test/unit/attribute.rb +125 -0
  269. data/test-unit/lib/test/unit/autorunner.rb +254 -0
  270. data/test-unit/lib/test/unit/collector.rb +43 -0
  271. data/test-unit/lib/test/unit/collector/descendant.rb +23 -0
  272. data/test-unit/lib/test/unit/collector/dir.rb +108 -0
  273. data/test-unit/lib/test/unit/collector/load.rb +135 -0
  274. data/test-unit/lib/test/unit/collector/objectspace.rb +34 -0
  275. data/test-unit/lib/test/unit/color.rb +61 -0
  276. data/test-unit/lib/test/unit/diff.rb +524 -0
  277. data/test-unit/lib/test/unit/error.rb +124 -0
  278. data/test-unit/lib/test/unit/exceptionhandler.rb +39 -0
  279. data/test-unit/lib/test/unit/failure.rb +110 -0
  280. data/test-unit/lib/test/unit/fixture.rb +185 -0
  281. data/test-unit/lib/test/unit/notification.rb +125 -0
  282. data/test-unit/lib/test/unit/omission.rb +143 -0
  283. data/test-unit/lib/test/unit/pending.rb +146 -0
  284. data/test-unit/lib/test/unit/priority.rb +146 -0
  285. data/test-unit/lib/test/unit/runner/console.rb +46 -0
  286. data/test-unit/lib/test/unit/runner/emacs.rb +8 -0
  287. data/test-unit/lib/test/unit/testcase.rb +281 -0
  288. data/test-unit/lib/test/unit/testresult.rb +89 -0
  289. data/test-unit/lib/test/unit/testsuite.rb +110 -0
  290. data/test-unit/lib/test/unit/ui/console/outputlevel.rb +14 -0
  291. data/test-unit/lib/test/unit/ui/console/testrunner.rb +195 -0
  292. data/test-unit/lib/test/unit/ui/emacs/testrunner.rb +49 -0
  293. data/test-unit/lib/test/unit/ui/testrunner.rb +20 -0
  294. data/test-unit/lib/test/unit/ui/testrunnermediator.rb +77 -0
  295. data/test-unit/lib/test/unit/ui/testrunnerutilities.rb +41 -0
  296. data/test-unit/lib/test/unit/util/backtracefilter.rb +41 -0
  297. data/test-unit/lib/test/unit/util/observable.rb +90 -0
  298. data/test-unit/lib/test/unit/util/procwrapper.rb +48 -0
  299. data/test-unit/lib/test/unit/version.rb +7 -0
  300. data/test-unit/sample/adder.rb +13 -0
  301. data/test-unit/sample/subtracter.rb +12 -0
  302. data/test-unit/sample/tc_adder.rb +18 -0
  303. data/test-unit/sample/tc_subtracter.rb +18 -0
  304. data/test-unit/sample/ts_examples.rb +7 -0
  305. data/test-unit/test/collector/test_descendant.rb +135 -0
  306. data/test-unit/test/collector/test_dir.rb +406 -0
  307. data/test-unit/test/collector/test_load.rb +333 -0
  308. data/test-unit/test/collector/test_objectspace.rb +98 -0
  309. data/test-unit/test/run-test.rb +13 -0
  310. data/test-unit/test/test_assertions.rb +693 -0
  311. data/test-unit/test/test_attribute.rb +86 -0
  312. data/test-unit/test/test_color.rb +37 -0
  313. data/test-unit/test/test_diff.rb +477 -0
  314. data/test-unit/test/test_emacs_runner.rb +60 -0
  315. data/test-unit/test/test_error.rb +26 -0
  316. data/test-unit/test/test_failure.rb +33 -0
  317. data/test-unit/test/test_fixture.rb +252 -0
  318. data/test-unit/test/test_notification.rb +33 -0
  319. data/test-unit/test/test_omission.rb +81 -0
  320. data/test-unit/test/test_pending.rb +70 -0
  321. data/test-unit/test/test_priority.rb +89 -0
  322. data/test-unit/test/test_testcase.rb +430 -0
  323. data/test-unit/test/test_testresult.rb +113 -0
  324. data/test-unit/test/test_testsuite.rb +129 -0
  325. data/test-unit/test/testunit_test_util.rb +14 -0
  326. data/test-unit/test/ui/test_testrunmediator.rb +20 -0
  327. data/test-unit/test/util/test_backtracefilter.rb +41 -0
  328. data/test-unit/test/util/test_observable.rb +102 -0
  329. data/test-unit/test/util/test_procwrapper.rb +36 -0
  330. data/test/cairo-test-utils.rb +18 -0
  331. data/test/run-test.rb +28 -0
  332. data/test/test_color.rb +17 -0
  333. data/test/test_constants.rb +16 -0
  334. data/test/test_context.rb +105 -0
  335. data/test/test_exception.rb +27 -0
  336. data/test/test_font_extents.rb +36 -0
  337. data/test/test_font_face.rb +244 -0
  338. data/test/test_font_options.rb +13 -0
  339. data/test/test_paper.rb +81 -0
  340. data/test/test_pkg_config.rb +123 -0
  341. data/test/test_scaled_font.rb +34 -0
  342. data/test/test_surface.rb +41 -0
  343. data/test/test_text_cluster.rb +32 -0
  344. data/test/test_text_extents.rb +40 -0
  345. data/test/test_text_to_glyphs_data.rb +51 -0
  346. data/tmp/x86-mingw32/cairo/1.8.7/fake.rb +6 -0
  347. data/tmp/x86-mingw32/cairo/1.8.7/mkmf.rb +1836 -0
  348. data/tmp/x86-mingw32/cairo/1.8.7/rbconfig.rb +183 -0
  349. data/tmp/x86-mingw32/cairo/1.9.2/fake.rb +6 -0
  350. data/tmp/x86-mingw32/cairo/1.9.2/mkmf.rb +2079 -0
  351. data/tmp/x86-mingw32/cairo/1.9.2/rbconfig.rb +226 -0
  352. metadata +437 -0
@@ -0,0 +1,104 @@
1
+ EXPORTS
2
+ Init_cairo
3
+ rb_mCairo DATA
4
+ rb_cCairo_Context DATA
5
+ rb_cCairo_Path DATA
6
+ rb_cCairo_PathData DATA
7
+ rb_cCairo_PathMoveTo DATA
8
+ rb_cCairo_PathLineTo DATA
9
+ rb_cCairo_PathCurveTo DATA
10
+ rb_cCairo_PathClosePath DATA
11
+ rb_cCairo_Matrix DATA
12
+ rb_cCairo_Pattern DATA
13
+ rb_cCairo_SolidPattern DATA
14
+ rb_cCairo_SurfacePattern DATA
15
+ rb_cCairo_GradientPattern DATA
16
+ rb_cCairo_LinearPattern DATA
17
+ rb_cCairo_RadialPattern DATA
18
+ rb_cCairo_FontFace DATA
19
+ rb_cCairo_ToyFontFace DATA
20
+ rb_cCairo_UserFontFace DATA
21
+ rb_cCairo_UserFontFace_TextToGlyphsData DATA
22
+ rb_cCairo_FontExtents DATA
23
+ rb_cCairo_FontOptions DATA
24
+ rb_cCairo_ScaledFont DATA
25
+ rb_cCairo_TextExtents DATA
26
+ rb_cCairo_Glyph DATA
27
+ rb_cCairo_TextCluster DATA
28
+ rb_cCairo_Surface DATA
29
+ rb_cCairo_ImageSurface DATA
30
+ rb_cCairo_PDFSurface DATA
31
+ rb_cCairo_PSSurface DATA
32
+ rb_cCairo_SVGSurface DATA
33
+ rb_cCairo_Win32Surface DATA
34
+ rb_cCairo_Win32PrintingSurface DATA
35
+ rb_cCairo_QuartzSurface DATA
36
+ rb_cCairo_QuartzImageSurface DATA
37
+
38
+ rb_mCairo_Operator DATA
39
+ rb_mCairo_Antialias DATA
40
+ rb_mCairo_FillRule DATA
41
+ rb_mCairo_LineCap DATA
42
+ rb_mCairo_LineJoin DATA
43
+ rb_mCairo_FontSlant DATA
44
+ rb_mCairo_FontWeight DATA
45
+ rb_mCairo_SubpixelOrder DATA
46
+ rb_mCairo_HintStyle DATA
47
+ rb_mCairo_HintMetrics DATA
48
+ rb_mCairo_PathDataType DATA
49
+ rb_mCairo_Content DATA
50
+ rb_mCairo_Format DATA
51
+ rb_mCairo_Extend DATA
52
+ rb_mCairo_Filter DATA
53
+ rb_mCairo_SVGVersion DATA
54
+ rb_mCairo_PSLevel DATA
55
+ rb_mCairo_LCDFilter DATA
56
+
57
+ rb_mCairo_Color DATA
58
+ rb_cCairo_Color_Base DATA
59
+ rb_cCairo_Paper DATA
60
+
61
+ rb_cairo_context_from_ruby_object
62
+ rb_cairo_context_to_ruby_object
63
+ rb_cairo_path_from_ruby_object
64
+ rb_cairo_path_to_ruby_object
65
+ rb_cairo_matrix_from_ruby_object
66
+ rb_cairo_matrix_to_ruby_object
67
+ rb_cairo_pattern_from_ruby_object
68
+ rb_cairo_pattern_to_ruby_object
69
+ rb_cairo_font_face_from_ruby_object
70
+ rb_cairo_font_face_to_ruby_object
71
+ rb_cairo_font_extents_from_ruby_object
72
+ rb_cairo_font_extents_to_ruby_object
73
+ rb_cairo_font_options_to_ruby_object
74
+ rb_cairo_font_options_from_ruby_object
75
+ rb_cairo_scaled_font_to_ruby_object
76
+ rb_cairo_scaled_font_from_ruby_object
77
+ rb_cairo_text_extents_from_ruby_object
78
+ rb_cairo_text_extents_to_ruby_object
79
+ rb_cairo_glyph_from_ruby_object
80
+ rb_cairo_glyph_to_ruby_object
81
+ rb_cairo_text_cluster_from_ruby_object
82
+ rb_cairo_text_cluster_to_ruby_object
83
+ rb_cairo_surface_from_ruby_object
84
+ rb_cairo_surface_to_ruby_object
85
+ rb_cairo_surface_to_ruby_object_with_destroy
86
+ rb_cairo_operator_from_ruby_object
87
+ rb_cairo_antialias_from_ruby_object
88
+ rb_cairo_fill_rule_from_ruby_object
89
+ rb_cairo_line_cap_from_ruby_object
90
+ rb_cairo_line_join_from_ruby_object
91
+ rb_cairo_font_slant_from_ruby_object
92
+ rb_cairo_font_weight_from_ruby_object
93
+ rb_cairo_subpixel_order_from_ruby_object
94
+ rb_cairo_hint_style_from_ruby_object
95
+ rb_cairo_hint_metrics_from_ruby_object
96
+ rb_cairo_path_data_type_from_ruby_object
97
+ rb_cairo_content_from_ruby_object
98
+ rb_cairo_format_from_ruby_object
99
+ rb_cairo_extend_from_ruby_object
100
+ rb_cairo_filter_from_ruby_object
101
+ rb_cairo_svg_version_from_ruby_object
102
+ rb_cairo_ps_level_from_ruby_object
103
+ rb_cairo_text_cluster_flags_from_ruby_object
104
+ rb_cairo_check_status
@@ -0,0 +1,80 @@
1
+ #!/usr/bin/env ruby
2
+ # vim: filetype=ruby:expandtab:shiftwidth=2:tabstop=8:softtabstop=2 :
3
+
4
+ require 'pathname'
5
+ require 'English'
6
+ require 'mkmf'
7
+ require 'fileutils'
8
+
9
+ base_dir = (Pathname(__FILE__).dirname + ".." + "..").expand_path
10
+ $LOAD_PATH.unshift(base_dir.to_s)
11
+
12
+ require 'pkg-config'
13
+
14
+ checking_for(checking_message("GCC")) do
15
+ if macro_defined?("__GNUC__", "")
16
+ $CFLAGS += ' -Wall'
17
+ true
18
+ else
19
+ false
20
+ end
21
+ end
22
+
23
+ package = "cairo"
24
+ module_name = "cairo"
25
+ major, minor, micro = 1, 2, 0
26
+
27
+ PKGConfig.have_package(package, major, minor, micro) or exit 1
28
+
29
+ checking_for(checking_message("Win32 OS")) do
30
+ case RUBY_PLATFORM
31
+ when /cygwin|mingw|mswin32/
32
+ $defs << "-DRUBY_CAIRO_PLATFORM_WIN32"
33
+ import_library_name = "libruby-#{module_name}.a"
34
+ $DLDFLAGS << " -Wl,--out-implib=#{import_library_name}"
35
+ $cleanfiles << import_library_name
36
+ local_cairo_install_dir = base_dir + "vendor" + "local"
37
+ $CFLAGS += " -I#{local_cairo_install_dir}/include"
38
+ local_cairo_lib_dir = local_cairo_install_dir + "lib"
39
+ ["cairo.lib", "libcairo.dll.a"].each do |libcairo_base|
40
+ libcairo = local_cairo_lib_dir + libcairo_base
41
+ if libcairo.exist?
42
+ $LDFLAGS += " -L#{local_cairo_lib_dir}"
43
+ break
44
+ end
45
+ end
46
+ true
47
+ else
48
+ false
49
+ end
50
+ end
51
+
52
+ checking_for(checking_message("Mac OS X")) do
53
+ case RUBY_PLATFORM
54
+ when /darwin/
55
+ if have_macro("CAIRO_HAS_QUARTZ_SURFACE", ["cairo.h"])
56
+ checking_for("RubyCocoa") do
57
+ begin
58
+ require 'osx/cocoa'
59
+ $defs << "-DHAVE_RUBY_COCOA"
60
+ $DLDFLAGS << " -Wl,-framework,RubyCocoa"
61
+ true
62
+ rescue LoadError
63
+ false
64
+ end
65
+ end
66
+ end
67
+ true
68
+ else
69
+ false
70
+ end
71
+ end
72
+
73
+ $defs << "-DRB_CAIRO_COMPILATION"
74
+
75
+ have_header("ruby/st.h") unless have_macro("HAVE_RUBY_ST_H", "ruby.h")
76
+ have_header("ruby/io.h") unless have_macro("HAVE_RUBY_IO_H", "ruby.h")
77
+ have_func("rb_errinfo", "ruby.h")
78
+ have_type("enum ruby_value_type", "ruby.h")
79
+
80
+ create_makefile(module_name)
@@ -0,0 +1,104 @@
1
+ /* -*- c-file-style: "gnu"; indent-tabs-mode: nil -*- */
2
+ /*
3
+ * Ruby Cairo Binding
4
+ *
5
+ * $Author: kou $
6
+ * $Date: 2009-12-13 11:27:45 $
7
+ *
8
+ * Copyright 2006-2008 Kouhei Sutou <kou@cozmixng.org>
9
+ * Copyright 2005 Øyvind Kolås <pippin@freedesktop.org>
10
+ * Copyright 2004-2005 MenTaLguY <mental@rydia.com>
11
+ *
12
+ * This file is made available under the same terms as Ruby
13
+ *
14
+ */
15
+
16
+
17
+ #include "rb_cairo.h"
18
+ #include "rb_cairo_private.h"
19
+
20
+ VALUE rb_mCairo, rb_mCairo_Color, rb_cCairo_Color_Base, rb_cCairo_Paper;
21
+
22
+ static ID id__add_one_arg_setter;
23
+
24
+ void
25
+ rb_cairo_def_setters (VALUE klass)
26
+ {
27
+ rb_funcall (rb_mCairo, id__add_one_arg_setter, 1, klass);
28
+ }
29
+
30
+ static VALUE
31
+ rb_cairo_satisfied_version (int argc, VALUE *argv, VALUE self)
32
+ {
33
+ VALUE major, minor, micro;
34
+
35
+ rb_scan_args (argc, argv, "21", &major, &minor, &micro);
36
+
37
+ if (NIL_P (micro))
38
+ micro = UINT2NUM (0);
39
+
40
+ return CBOOL2RVAL (CAIRO_VERSION_MAJOR > NUM2UINT(major) ||
41
+ (CAIRO_VERSION_MAJOR == NUM2UINT(major) &&
42
+ CAIRO_VERSION_MINOR > NUM2UINT(minor)) ||
43
+ (CAIRO_VERSION_MAJOR == NUM2UINT(major) &&
44
+ CAIRO_VERSION_MINOR == NUM2UINT(minor) &&
45
+ CAIRO_VERSION_MICRO >= NUM2UINT(micro)));
46
+ }
47
+
48
+ void
49
+ Init_cairo ()
50
+ {
51
+ int major, minor, micro;
52
+
53
+ id__add_one_arg_setter = rb_intern("__add_one_arg_setter");
54
+
55
+ rb_mCairo = rb_define_module ("Cairo");
56
+
57
+ rb_define_const (rb_mCairo, "BUILD_VERSION",
58
+ rb_ary_new3 (3,
59
+ INT2FIX (CAIRO_VERSION_MAJOR),
60
+ INT2FIX (CAIRO_VERSION_MINOR),
61
+ INT2FIX (CAIRO_VERSION_MICRO)));
62
+
63
+ major = cairo_version () / 10000;
64
+ minor = (cairo_version () % 10000) / 100;
65
+ micro = cairo_version () % 100;
66
+
67
+ rb_define_const (rb_mCairo, "VERSION",
68
+ rb_ary_new3 (3,
69
+ INT2FIX (major),
70
+ INT2FIX (minor),
71
+ INT2FIX (micro)));
72
+
73
+ rb_define_const (rb_mCairo, "MAJOR_VERSION", INT2FIX (major));
74
+ rb_define_const (rb_mCairo, "MINOR_VERSION", INT2FIX (minor));
75
+ rb_define_const (rb_mCairo, "MICRO_VERSION", INT2FIX (micro));
76
+
77
+ rb_define_const (rb_mCairo, "BINDINGS_VERSION",
78
+ rb_ary_new3 (4,
79
+ INT2FIX (1), INT2FIX (8), INT2FIX (3), Qnil));
80
+
81
+ rb_define_module_function (rb_mCairo, "satisfied_version?",
82
+ rb_cairo_satisfied_version, -1);
83
+
84
+ rb_mCairo_Color = rb_const_get (rb_mCairo, rb_intern ("Color"));
85
+ rb_cCairo_Color_Base = rb_const_get (rb_mCairo_Color, rb_intern ("Base"));
86
+ rb_cCairo_Paper = rb_const_get (rb_mCairo, rb_intern ("Paper"));
87
+
88
+ Init_cairo_private ();
89
+ Init_cairo_constants ();
90
+
91
+ Init_cairo_context ();
92
+ Init_cairo_path ();
93
+ Init_cairo_matrix ();
94
+ Init_cairo_surface ();
95
+ Init_cairo_exception ();
96
+ Init_cairo_font ();
97
+ Init_cairo_font_extents ();
98
+ Init_cairo_font_options ();
99
+ Init_cairo_scaled_font ();
100
+ Init_cairo_text_extents ();
101
+ Init_cairo_pattern ();
102
+ Init_cairo_glyph ();
103
+ Init_cairo_text_cluster ();
104
+ }
@@ -0,0 +1,275 @@
1
+ /* -*- c-file-style: "gnu"; indent-tabs-mode: nil -*- */
2
+ /*
3
+ * Ruby Cairo Binding
4
+ *
5
+ * $Author: kou $
6
+ * $Date: 2008-09-19 12:56:27 $
7
+ *
8
+ * Copyright 2006-2008 Kouhei Sutou <kou@cozmixng.org>
9
+ * Copyright 2005 Øyvind Kolås <pippin@freedesktop.org>
10
+ * Copyright 2004-2005 MenTaLguY <mental@rydia.com>
11
+ *
12
+ * This file is made available under the same terms as Ruby
13
+ *
14
+ */
15
+
16
+
17
+ #ifndef RB_CAIRO_H
18
+ #define RB_CAIRO_H
19
+
20
+ #include <cairo.h>
21
+
22
+ #ifdef CAIRO_HAS_PS_SURFACE
23
+ # include <cairo-ps.h>
24
+ #endif
25
+
26
+ #ifdef CAIRO_HAS_PDF_SURFACE
27
+ # include <cairo-pdf.h>
28
+ #endif
29
+
30
+ #ifdef CAIRO_HAS_SVG_SURFACE
31
+ # include <cairo-svg.h>
32
+ #endif
33
+
34
+ #define CAIRO_CHECK_VERSION(major, minor, micro) \
35
+ (CAIRO_VERSION_MAJOR > (major) || \
36
+ (CAIRO_VERSION_MAJOR == (major) && CAIRO_VERSION_MINOR > (minor)) || \
37
+ (CAIRO_VERSION_MAJOR == (major) && CAIRO_VERSION_MINOR == (minor) && \
38
+ CAIRO_VERSION_MICRO >= (micro)))
39
+
40
+ #include "ruby.h"
41
+
42
+ #if defined(__cplusplus)
43
+ # define RB_CAIRO_BEGIN_DECLS extern "C" {
44
+ # define RB_CAIRO_END_DECLS }
45
+ #else
46
+ # define RB_CAIRO_BEGIN_DECLS
47
+ # define RB_CAIRO_END_DECLS
48
+ #endif
49
+
50
+ RB_CAIRO_BEGIN_DECLS
51
+
52
+ #if defined(RUBY_CAIRO_PLATFORM_WIN32) && !defined(RB_CAIRO_PLATFORM_WIN32)
53
+ # define RB_CAIRO_PLATFORM_WIN32 RUBY_CAIRO_PLATFORM_WIN32
54
+ #endif
55
+
56
+ #if defined(RUBY_CAIRO_STATIC_COMPILATION) && !defined(RB_CAIRO_STATIC_COMPILATION)
57
+ # define RB_CAIRO_STATIC_COMPILATION RUBY_CAIRO_STATIC_COMPILATION
58
+ #endif
59
+
60
+ #if defined(RB_CAIRO_PLATFORM_WIN32) && !defined(RB_CAIRO_STATIC_COMPILATION)
61
+ # ifdef RB_CAIRO_COMPILATION
62
+ # define RB_CAIRO_VAR __declspec(dllexport)
63
+ # else
64
+ # define RB_CAIRO_VAR extern __declspec(dllimport)
65
+ # endif
66
+ #else
67
+ # define RB_CAIRO_VAR extern
68
+ #endif
69
+
70
+ RB_CAIRO_VAR VALUE rb_mCairo;
71
+ RB_CAIRO_VAR VALUE rb_cCairo_Context;
72
+ RB_CAIRO_VAR VALUE rb_cCairo_Point;
73
+ RB_CAIRO_VAR VALUE rb_cCairo_Path;
74
+ RB_CAIRO_VAR VALUE rb_cCairo_PathData;
75
+ RB_CAIRO_VAR VALUE rb_cCairo_PathMoveTo;
76
+ RB_CAIRO_VAR VALUE rb_cCairo_PathLineTo;
77
+ RB_CAIRO_VAR VALUE rb_cCairo_PathCurveTo;
78
+ RB_CAIRO_VAR VALUE rb_cCairo_PathClosePath;
79
+ RB_CAIRO_VAR VALUE rb_cCairo_Matrix;
80
+ RB_CAIRO_VAR VALUE rb_cCairo_Pattern;
81
+ RB_CAIRO_VAR VALUE rb_cCairo_SolidPattern;
82
+ RB_CAIRO_VAR VALUE rb_cCairo_SurfacePattern;
83
+ RB_CAIRO_VAR VALUE rb_cCairo_GradientPattern;
84
+ RB_CAIRO_VAR VALUE rb_cCairo_LinearPattern;
85
+ RB_CAIRO_VAR VALUE rb_cCairo_RadialPattern;
86
+ RB_CAIRO_VAR VALUE rb_cCairo_FontFace;
87
+ RB_CAIRO_VAR VALUE rb_cCairo_ToyFontFace;
88
+ RB_CAIRO_VAR VALUE rb_cCairo_UserFontFace;
89
+ RB_CAIRO_VAR VALUE rb_cCairo_UserFontFace_TextToGlyphsData;
90
+ RB_CAIRO_VAR VALUE rb_cCairo_FontExtents;
91
+ RB_CAIRO_VAR VALUE rb_cCairo_FontOptions;
92
+ RB_CAIRO_VAR VALUE rb_cCairo_ScaledFont;
93
+ RB_CAIRO_VAR VALUE rb_cCairo_TextExtents;
94
+ RB_CAIRO_VAR VALUE rb_cCairo_Glyph;
95
+ RB_CAIRO_VAR VALUE rb_cCairo_Surface;
96
+ RB_CAIRO_VAR VALUE rb_cCairo_ImageSurface;
97
+ RB_CAIRO_VAR VALUE rb_cCairo_PDFSurface;
98
+ RB_CAIRO_VAR VALUE rb_cCairo_PSSurface;
99
+ RB_CAIRO_VAR VALUE rb_cCairo_SVGSurface;
100
+ RB_CAIRO_VAR VALUE rb_cCairo_Win32Surface;
101
+ RB_CAIRO_VAR VALUE rb_cCairo_Win32PrintingSurface;
102
+ /* For backward compatibility*/
103
+ #define rb_cCairo_WIN32Surface rb_cCairo_Win32Surface
104
+ RB_CAIRO_VAR VALUE rb_cCairo_QuartzSurface;
105
+ RB_CAIRO_VAR VALUE rb_cCairo_QuartzImageSurface;
106
+
107
+ RB_CAIRO_VAR VALUE rb_mCairo_Operator;
108
+ RB_CAIRO_VAR VALUE rb_mCairo_Antialias;
109
+ RB_CAIRO_VAR VALUE rb_mCairo_FillRule;
110
+ RB_CAIRO_VAR VALUE rb_mCairo_LineCap;
111
+ RB_CAIRO_VAR VALUE rb_mCairo_LineJoin;
112
+ RB_CAIRO_VAR VALUE rb_mCairo_FontSlant;
113
+ RB_CAIRO_VAR VALUE rb_mCairo_FontWeight;
114
+ RB_CAIRO_VAR VALUE rb_mCairo_SubpixelOrder;
115
+ RB_CAIRO_VAR VALUE rb_mCairo_HintStyle;
116
+ RB_CAIRO_VAR VALUE rb_mCairo_HintMetrics;
117
+ RB_CAIRO_VAR VALUE rb_mCairo_FontType;
118
+ RB_CAIRO_VAR VALUE rb_mCairo_PathDataType;
119
+ RB_CAIRO_VAR VALUE rb_mCairo_Content;
120
+ RB_CAIRO_VAR VALUE rb_mCairo_SurfaceType;
121
+ RB_CAIRO_VAR VALUE rb_mCairo_Format;
122
+ RB_CAIRO_VAR VALUE rb_mCairo_PatternType;
123
+ RB_CAIRO_VAR VALUE rb_mCairo_Extend;
124
+ RB_CAIRO_VAR VALUE rb_mCairo_Filter;
125
+ RB_CAIRO_VAR VALUE rb_mCairo_SVGVersion;
126
+ RB_CAIRO_VAR VALUE rb_mCairo_PSLevel;
127
+ RB_CAIRO_VAR VALUE rb_mCairo_LCDFilter;
128
+ RB_CAIRO_VAR VALUE rb_mCairo_SVGVersion;
129
+ RB_CAIRO_VAR VALUE rb_mCairo_Color;
130
+ RB_CAIRO_VAR VALUE rb_cCairo_Color_Base;
131
+ RB_CAIRO_VAR VALUE rb_cCairo_Paper;
132
+
133
+
134
+ #define RVAL2CRCONTEXT(obj) (rb_cairo_context_from_ruby_object(obj))
135
+ #define CRCONTEXT2RVAL(cr) (rb_cairo_context_to_ruby_object(cr))
136
+
137
+ #define RVAL2CRPATH(obj) (rb_cairo_path_from_ruby_object(obj))
138
+ #define CRPATH2RVAL(path) (rb_cairo_path_to_ruby_object(path))
139
+
140
+ #define RVAL2CRMATRIX(obj) (rb_cairo_matrix_from_ruby_object(obj))
141
+ #define CRMATRIX2RVAL(matrix) (rb_cairo_matrix_to_ruby_object(matrix))
142
+
143
+ #define RVAL2CRPATTERN(obj) (rb_cairo_pattern_from_ruby_object(obj))
144
+ #define CRPATTERN2RVAL(pattern) (rb_cairo_pattern_to_ruby_object(pattern))
145
+
146
+ #define RVAL2CRFONTFACE(obj) (rb_cairo_font_face_from_ruby_object(obj))
147
+ #define CRFONTFACE2RVAL(face) (rb_cairo_font_face_to_ruby_object(face))
148
+
149
+ #define RVAL2CRFONTEXTENTS(obj) (rb_cairo_font_extents_from_ruby_object(obj))
150
+ #define CRFONTEXTENTS2RVAL(ext) (rb_cairo_font_extents_to_ruby_object(ext))
151
+
152
+ #define RVAL2CRFONTOPTIONS(obj) (rb_cairo_font_options_from_ruby_object(obj))
153
+ #define CRFONTOPTIONS2RVAL(opt) (rb_cairo_font_options_to_ruby_object(opt))
154
+
155
+ #define RVAL2CRSCALEDFONT(obj) (rb_cairo_scaled_font_from_ruby_object(obj))
156
+ #define CRSCALEDFONT2RVAL(font) (rb_cairo_scaled_font_to_ruby_object(font))
157
+
158
+ #define RVAL2CRTEXTEXTENTS(obj) (rb_cairo_text_extents_from_ruby_object(obj))
159
+ #define CRTEXTEXTENTS2RVAL(ext) (rb_cairo_text_extents_to_ruby_object(ext))
160
+
161
+ #define RVAL2CRGLYPH(obj) (rb_cairo_glyph_from_ruby_object(obj))
162
+ #define CRGLYPH2RVAL(glyph) (rb_cairo_glyph_to_ruby_object(glyph))
163
+
164
+ #define RVAL2CRTEXTCLUSTER(obj) (rb_cairo_text_cluster_from_ruby_object(obj))
165
+ #define CRTEXTCLUSTER2RVAL(cluster) (rb_cairo_text_cluster_to_ruby_object(cluster))
166
+
167
+ #define RVAL2CRSURFACE(obj) (rb_cairo_surface_from_ruby_object(obj))
168
+ #define CRSURFACE2RVAL(surface) (rb_cairo_surface_to_ruby_object(surface))
169
+ #define CRSURFACE2RVAL_WITH_DESTROY(surface) \
170
+ (rb_cairo_surface_to_ruby_object_with_destroy(surface))
171
+
172
+ cairo_t *rb_cairo_context_from_ruby_object (VALUE obj);
173
+ VALUE rb_cairo_context_to_ruby_object (cairo_t *cr);
174
+
175
+ cairo_path_t *rb_cairo_path_from_ruby_object (VALUE obj);
176
+ VALUE rb_cairo_path_to_ruby_object (cairo_path_t *path);
177
+
178
+ cairo_matrix_t *rb_cairo_matrix_from_ruby_object (VALUE obj);
179
+ VALUE rb_cairo_matrix_to_ruby_object (cairo_matrix_t *matrix);
180
+
181
+ cairo_pattern_t *rb_cairo_pattern_from_ruby_object (VALUE obj);
182
+ VALUE rb_cairo_pattern_to_ruby_object (cairo_pattern_t *pat);
183
+
184
+ cairo_font_face_t *rb_cairo_font_face_from_ruby_object (VALUE obj);
185
+ VALUE rb_cairo_font_face_to_ruby_object (cairo_font_face_t *face);
186
+
187
+ cairo_font_extents_t *rb_cairo_font_extents_from_ruby_object (VALUE obj);
188
+ VALUE rb_cairo_font_extents_to_ruby_object (cairo_font_extents_t *extents);
189
+
190
+ cairo_font_options_t *rb_cairo_font_options_from_ruby_object (VALUE obj);
191
+ VALUE rb_cairo_font_options_to_ruby_object (cairo_font_options_t *options);
192
+
193
+ cairo_scaled_font_t *rb_cairo_scaled_font_from_ruby_object (VALUE obj);
194
+ VALUE rb_cairo_scaled_font_to_ruby_object (cairo_scaled_font_t *options);
195
+
196
+ cairo_text_extents_t *rb_cairo_text_extents_from_ruby_object (VALUE obj);
197
+ VALUE rb_cairo_text_extents_to_ruby_object (cairo_text_extents_t *extents);
198
+
199
+ cairo_glyph_t *rb_cairo_glyph_from_ruby_object (VALUE obj);
200
+ VALUE rb_cairo_glyph_to_ruby_object (cairo_glyph_t *glyph);
201
+
202
+ #if CAIRO_CHECK_VERSION(1, 7, 2)
203
+ cairo_text_cluster_t *rb_cairo_text_cluster_from_ruby_object (VALUE obj);
204
+ VALUE rb_cairo_text_cluster_to_ruby_object (cairo_text_cluster_t *cluster);
205
+ #endif
206
+
207
+ cairo_surface_t *rb_cairo_surface_from_ruby_object (VALUE obj);
208
+ VALUE rb_cairo_surface_to_ruby_object (cairo_surface_t *surface);
209
+ VALUE rb_cairo_surface_to_ruby_object_with_destroy
210
+ (cairo_surface_t *surface);
211
+
212
+
213
+ #define RVAL2CROPERATOR(obj) (rb_cairo_operator_from_ruby_object(obj))
214
+ #define RVAL2CRANTIALIAS(obj) (rb_cairo_antialias_from_ruby_object(obj))
215
+ #define RVAL2CRFILLRULE(obj) (rb_cairo_fill_rule_from_ruby_object(obj))
216
+ #define RVAL2CRLINECAP(obj) (rb_cairo_line_cap_from_ruby_object(obj))
217
+ #define RVAL2CRLINEJOIN(obj) (rb_cairo_line_join_from_ruby_object(obj))
218
+ #define RVAL2CRFONTSLANT(obj) (rb_cairo_font_slant_from_ruby_object(obj))
219
+ #define RVAL2CRFONTWEIGHT(obj) (rb_cairo_font_weight_from_ruby_object(obj))
220
+ #define RVAL2CRSUBPIXELORDER(obj) (rb_cairo_subpixel_order_from_ruby_object(obj))
221
+ #define RVAL2CRHINTSTYLE(obj) (rb_cairo_hint_style_from_ruby_object(obj))
222
+ #define RVAL2CRHINTMETRICS(obj) (rb_cairo_hint_metrics_from_ruby_object(obj))
223
+ #define RVAL2CRPATHDATATYPE(obj) (rb_cairo_path_data_type_from_ruby_object(obj))
224
+ #define RVAL2CRCONTENT(obj) (rb_cairo_content_from_ruby_object(obj))
225
+ #define RVAL2CRFORMAT(obj) (rb_cairo_format_from_ruby_object(obj))
226
+ #define RVAL2CREXTEND(obj) (rb_cairo_extend_from_ruby_object(obj))
227
+ #define RVAL2CRFILTER(obj) (rb_cairo_filter_from_ruby_object(obj))
228
+ #ifdef CAIRO_HAS_SVG_SURFACE
229
+ #define RVAL2CRSVGVERSION(obj) (rb_cairo_svg_version_from_ruby_object(obj))
230
+ #endif
231
+ #ifdef CAIRO_HAS_PS_SURFACE
232
+ # if CAIRO_CHECK_VERSION(1, 5, 2)
233
+ #define RVAL2CRPSLEVEL(obj) (rb_cairo_ps_level_from_ruby_object(obj))
234
+ # endif
235
+ #endif
236
+ #if CAIRO_CHECK_VERSION(1, 7, 6)
237
+ #define RVAL2CRTEXTCLUSTERFLAGS(obj) (rb_cairo_text_cluster_flags_from_ruby_object(obj))
238
+ #endif
239
+
240
+ cairo_operator_t rb_cairo_operator_from_ruby_object (VALUE obj);
241
+ cairo_antialias_t rb_cairo_antialias_from_ruby_object (VALUE obj);
242
+ cairo_fill_rule_t rb_cairo_fill_rule_from_ruby_object (VALUE obj);
243
+ cairo_line_cap_t rb_cairo_line_cap_from_ruby_object (VALUE obj);
244
+ cairo_line_join_t rb_cairo_line_join_from_ruby_object (VALUE obj);
245
+ cairo_font_slant_t rb_cairo_font_slant_from_ruby_object (VALUE obj);
246
+ cairo_font_weight_t rb_cairo_font_weight_from_ruby_object (VALUE obj);
247
+ cairo_subpixel_order_t rb_cairo_subpixel_order_from_ruby_object (VALUE obj);
248
+ cairo_hint_style_t rb_cairo_hint_style_from_ruby_object (VALUE obj);
249
+ cairo_hint_metrics_t rb_cairo_hint_metrics_from_ruby_object (VALUE obj);
250
+ cairo_path_data_type_t rb_cairo_path_data_type_from_ruby_object (VALUE obj);
251
+ cairo_content_t rb_cairo_content_from_ruby_object (VALUE obj);
252
+ cairo_format_t rb_cairo_format_from_ruby_object (VALUE obj);
253
+ cairo_extend_t rb_cairo_extend_from_ruby_object (VALUE obj);
254
+ cairo_filter_t rb_cairo_filter_from_ruby_object (VALUE obj);
255
+ #ifdef CAIRO_HAS_SVG_SURFACE
256
+ cairo_svg_version_t rb_cairo_svg_version_from_ruby_object (VALUE obj);
257
+ #endif
258
+ #ifdef CAIRO_HAS_PS_SURFACE
259
+ # if CAIRO_CHECK_VERSION(1, 5, 2)
260
+ cairo_ps_level_t rb_cairo_ps_level_from_ruby_object (VALUE obj);
261
+ # endif
262
+ #endif
263
+ #if CAIRO_CHECK_VERSION(1, 7, 6)
264
+ cairo_text_cluster_flags_t rb_cairo_text_cluster_flags_from_ruby_object (VALUE obj);
265
+ #endif
266
+
267
+ void rb_cairo_check_status (cairo_status_t status);
268
+
269
+
270
+ #define RB_CAIRO_DEF_SETTERS(klass) rb_cairo_def_setters(klass);
271
+ void rb_cairo_def_setters (VALUE klass);
272
+
273
+ RB_CAIRO_END_DECLS
274
+
275
+ #endif