cairo 1.6.1-x86-mswin32 → 1.7.0-x86-mswin32

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

Potentially problematic release.


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

Files changed (410) hide show
  1. data/ChangeLog +285 -0
  2. data/NEWS +33 -0
  3. data/README +15 -4
  4. data/Rakefile +3 -0
  5. data/cairo/bin/libcairo-2.dll +0 -0
  6. data/cairo/bin/libpng12-0.dll +0 -0
  7. data/cairo/include/{libpng13/png.h → png.h} +285 -135
  8. data/cairo/include/{libpng13/pngconf.h → pngconf.h} +116 -72
  9. data/cairo/lib/cairo.lib +0 -0
  10. data/cairo/lib/libcairo.dll.a +0 -0
  11. data/cairo/lib/libpng.def +361 -371
  12. data/cairo/lib/libpng.lib +0 -0
  13. data/cairo/lib/libpng12.dll.a +0 -0
  14. data/cairo/lib/pkgconfig/cairo-pdf.pc +1 -1
  15. data/cairo/lib/pkgconfig/cairo-png.pc +2 -2
  16. data/cairo/lib/pkgconfig/cairo-ps.pc +1 -1
  17. data/cairo/lib/pkgconfig/cairo-svg.pc +1 -1
  18. data/cairo/lib/pkgconfig/cairo-win32-font.pc +1 -1
  19. data/cairo/lib/pkgconfig/cairo-win32.pc +1 -1
  20. data/cairo/lib/pkgconfig/cairo.pc +2 -2
  21. data/cairo/lib/pkgconfig/libpng.pc +10 -14
  22. data/cairo/lib/pkgconfig/libpng12.pc +10 -0
  23. data/cairo/make/{cairo-1.6.4-1.sh → cairo-1.6.4-2.sh} +3 -3
  24. data/cairo/make/libpng-1.2.29.sh +35 -0
  25. data/cairo/manifest/cairo-1.6.4-2.mft +6 -0
  26. data/cairo/manifest/{cairo-dev-1.6.4-1.mft → cairo-dev-1.6.4-2.mft} +2 -2
  27. data/cairo/manifest/libpng-1.2.29.mft +2 -0
  28. data/cairo/manifest/libpng-dev-1.2.29.mft +12 -0
  29. data/cairo/share/doc/{cairo-1.6.4-1 → cairo-1.6.4-2}/COPYING +0 -0
  30. data/cairo/share/doc/{cairo-1.6.4-1 → cairo-1.6.4-2}/COPYING-LGPL-2.1 +0 -0
  31. data/cairo/share/doc/{cairo-1.6.4-1 → cairo-1.6.4-2}/COPYING-MPL-1.1 +0 -0
  32. data/cairo/share/man/man3/libpng.3 +3680 -0
  33. data/cairo/share/man/man3/libpngpf.3 +274 -0
  34. data/cairo/share/man/man5/png.5 +74 -0
  35. data/doc/en/cairo-antialias.html +0 -3
  36. data/doc/en/cairo-clip-not-representable-error.html +0 -3
  37. data/doc/en/cairo-color-base.html +0 -3
  38. data/doc/en/cairo-color-cmyk.html +0 -3
  39. data/doc/en/cairo-color-hsv.html +0 -3
  40. data/doc/en/cairo-color-rgb.html +0 -3
  41. data/doc/en/cairo-color-x11.html +0 -3
  42. data/doc/en/cairo-color.html +0 -3
  43. data/doc/en/cairo-content.html +0 -3
  44. data/doc/en/cairo-context-blur.html +0 -3
  45. data/doc/en/cairo-context-circle.html +0 -3
  46. data/doc/en/cairo-context-color.html +0 -3
  47. data/doc/en/cairo-context-path.html +0 -3
  48. data/doc/en/cairo-context-rectangle.html +0 -3
  49. data/doc/en/cairo-context-triangle.html +0 -3
  50. data/doc/en/cairo-context.html +119 -102
  51. data/doc/en/cairo-error.html +0 -3
  52. data/doc/en/cairo-extend.html +0 -3
  53. data/doc/en/cairo-file-not-found.html +0 -3
  54. data/doc/en/cairo-fill-rule.html +0 -3
  55. data/doc/en/cairo-filter.html +0 -3
  56. data/doc/en/cairo-font-extents.html +67 -12
  57. data/doc/en/cairo-font-face.html +0 -3
  58. data/doc/en/cairo-font-options.html +26 -14
  59. data/doc/en/cairo-font-slant.html +0 -3
  60. data/doc/en/cairo-font-type-mismatch.html +47 -0
  61. data/doc/en/cairo-font-weight.html +0 -3
  62. data/doc/en/cairo-format.html +0 -3
  63. data/doc/en/cairo-glyph.html +0 -3
  64. data/doc/en/cairo-gradient-pattern.html +0 -3
  65. data/doc/en/cairo-hint-metrics.html +0 -3
  66. data/doc/en/cairo-hint-style.html +0 -3
  67. data/doc/en/cairo-image-surface.html +0 -3
  68. data/doc/en/cairo-invalid-clusters.html +47 -0
  69. data/doc/en/cairo-invalid-content-error.html +0 -3
  70. data/doc/en/cairo-invalid-dash-error.html +0 -3
  71. data/doc/en/cairo-invalid-dsc-comment-error.html +0 -3
  72. data/doc/en/cairo-invalid-format-error.html +0 -3
  73. data/doc/en/cairo-invalid-index-error.html +0 -3
  74. data/doc/en/cairo-invalid-matrix-error.html +0 -3
  75. data/doc/en/cairo-invalid-path-data-error.html +0 -3
  76. data/doc/en/cairo-invalid-pop-group-error.html +0 -3
  77. data/doc/en/cairo-invalid-restore-error.html +0 -3
  78. data/doc/en/cairo-invalid-slant.html +47 -0
  79. data/doc/en/cairo-invalid-status-error.html +0 -3
  80. data/doc/en/cairo-invalid-stride-error.html +0 -3
  81. data/doc/en/cairo-invalid-string-error.html +0 -3
  82. data/doc/en/cairo-invalid-visual-error.html +0 -3
  83. data/doc/en/cairo-invalid-weight.html +47 -0
  84. data/doc/en/cairo-lcd-filter.html +39 -0
  85. data/doc/en/cairo-line-cap.html +0 -3
  86. data/doc/en/cairo-line-join.html +0 -3
  87. data/doc/en/cairo-linear-pattern.html +0 -3
  88. data/doc/en/cairo-matrix.html +43 -41
  89. data/doc/en/cairo-negative-count.html +47 -0
  90. data/doc/en/cairo-no-current-point-error.html +0 -3
  91. data/doc/en/cairo-null-pointer-error.html +0 -3
  92. data/doc/en/cairo-operator.html +0 -3
  93. data/doc/en/cairo-paper-parse-error.html +0 -3
  94. data/doc/en/cairo-paper-unknown-paper-name.html +0 -3
  95. data/doc/en/cairo-paper-unknown-unit.html +0 -3
  96. data/doc/en/cairo-paper-unrecognized-paper-description.html +0 -3
  97. data/doc/en/cairo-paper.html +0 -3
  98. data/doc/en/cairo-path-close-path.html +0 -3
  99. data/doc/en/cairo-path-curve-to.html +0 -3
  100. data/doc/en/cairo-path-data-type.html +0 -3
  101. data/doc/en/cairo-path-data.html +0 -3
  102. data/doc/en/cairo-path-line-to.html +0 -3
  103. data/doc/en/cairo-path-move-to.html +0 -3
  104. data/doc/en/cairo-path.html +0 -3
  105. data/doc/en/cairo-pattern-type-mismatch-error.html +0 -3
  106. data/doc/en/cairo-pattern.html +0 -3
  107. data/doc/en/cairo-pdf-surface.html +0 -3
  108. data/doc/en/cairo-point.html +0 -3
  109. data/doc/en/cairo-ps-level.html +0 -3
  110. data/doc/en/cairo-ps-surface.html +0 -3
  111. data/doc/en/cairo-quartz-image-surface.html +0 -3
  112. data/doc/en/cairo-quartz-surface.html +0 -3
  113. data/doc/en/cairo-radial-pattern.html +0 -3
  114. data/doc/en/cairo-read-error.html +0 -3
  115. data/doc/en/cairo-rectangle.html +0 -3
  116. data/doc/en/cairo-scaled-font.html +13 -6
  117. data/doc/en/cairo-solid-pattern.html +0 -3
  118. data/doc/en/cairo-subpixel-order.html +0 -3
  119. data/doc/en/cairo-surface-finished-error.html +0 -3
  120. data/doc/en/cairo-surface-pattern.html +0 -3
  121. data/doc/en/cairo-surface-type-mismatch-error.html +0 -3
  122. data/doc/en/cairo-surface.html +22 -15
  123. data/doc/en/cairo-svg-surface.html +0 -3
  124. data/doc/en/cairo-svg-version.html +0 -3
  125. data/doc/en/cairo-temp-file-error.html +0 -3
  126. data/doc/en/cairo-text-cluster.html +84 -0
  127. data/doc/en/cairo-text-extents.html +78 -13
  128. data/doc/en/cairo-toy-font-face.html +67 -0
  129. data/doc/en/cairo-user-font-error.html +47 -0
  130. data/doc/en/cairo-user-font-face-text-to-glyphs-data.html +94 -0
  131. data/doc/en/cairo-user-font-face.html +72 -0
  132. data/doc/en/cairo-user-font-immutable.html +47 -0
  133. data/doc/en/cairo-win32-printing-surface.html +0 -3
  134. data/doc/en/cairo-win32-surface.html +0 -3
  135. data/doc/en/cairo-write-error.html +0 -3
  136. data/doc/en/cairo.html +92 -80
  137. data/doc/en/index.html +327 -240
  138. data/doc/ja/cairo-clip-not-representable-error.html +1 -1
  139. data/doc/ja/cairo-color-base.html +1 -1
  140. data/doc/ja/cairo-color-cmyk.html +9 -9
  141. data/doc/ja/cairo-color-hsv.html +8 -8
  142. data/doc/ja/cairo-color-rgb.html +9 -9
  143. data/doc/ja/cairo-color.html +8 -8
  144. data/doc/ja/cairo-context-circle.html +1 -1
  145. data/doc/ja/cairo-context-color.html +1 -1
  146. data/doc/ja/cairo-context-path.html +2 -2
  147. data/doc/ja/cairo-context.html +435 -342
  148. data/doc/ja/cairo-font-extents.html +69 -15
  149. data/doc/ja/cairo-font-face.html +3 -3
  150. data/doc/ja/cairo-font-options.html +37 -12
  151. data/doc/ja/cairo-font-slant.html +1 -1
  152. data/doc/ja/cairo-font-type-mismatch.html +52 -0
  153. data/doc/ja/cairo-glyph.html +5 -5
  154. data/doc/ja/cairo-gradient-pattern.html +6 -6
  155. data/doc/ja/cairo-image-surface.html +8 -8
  156. data/doc/ja/cairo-invalid-clusters.html +55 -0
  157. data/doc/ja/cairo-invalid-restore-error.html +1 -1
  158. data/doc/ja/cairo-invalid-slant.html +57 -0
  159. data/doc/ja/cairo-invalid-weight.html +57 -0
  160. data/doc/ja/cairo-lcd-filter.html +63 -0
  161. data/doc/ja/cairo-line-join.html +1 -1
  162. data/doc/ja/cairo-linear-pattern.html +2 -2
  163. data/doc/ja/cairo-matrix.html +35 -24
  164. data/doc/ja/cairo-negative-count.html +52 -0
  165. data/doc/ja/cairo-paper-unknown-paper-name.html +2 -2
  166. data/doc/ja/cairo-paper-unknown-unit.html +2 -2
  167. data/doc/ja/cairo-paper-unrecognized-paper-description.html +1 -1
  168. data/doc/ja/cairo-paper.html +12 -12
  169. data/doc/ja/cairo-path-close-path.html +1 -1
  170. data/doc/ja/cairo-path-curve-to.html +1 -1
  171. data/doc/ja/cairo-path-data.html +8 -8
  172. data/doc/ja/cairo-path-line-to.html +1 -1
  173. data/doc/ja/cairo-path-move-to.html +1 -1
  174. data/doc/ja/cairo-path.html +21 -21
  175. data/doc/ja/cairo-pattern.html +4 -4
  176. data/doc/ja/cairo-pdf-surface.html +2 -2
  177. data/doc/ja/cairo-point.html +5 -5
  178. data/doc/ja/cairo-ps-level.html +2 -2
  179. data/doc/ja/cairo-ps-surface.html +6 -6
  180. data/doc/ja/cairo-quartz-image-surface.html +2 -2
  181. data/doc/ja/cairo-quartz-surface.html +3 -3
  182. data/doc/ja/cairo-radial-pattern.html +2 -2
  183. data/doc/ja/cairo-rectangle.html +5 -5
  184. data/doc/ja/cairo-scaled-font.html +53 -17
  185. data/doc/ja/cairo-solid-pattern.html +3 -3
  186. data/doc/ja/cairo-surface-pattern.html +2 -2
  187. data/doc/ja/cairo-surface.html +58 -36
  188. data/doc/ja/cairo-svg-surface.html +4 -4
  189. data/doc/ja/cairo-svg-version.html +2 -2
  190. data/doc/ja/cairo-text-cluster.html +102 -0
  191. data/doc/ja/cairo-text-extents.html +84 -22
  192. data/doc/ja/cairo-toy-font-face.html +107 -0
  193. data/doc/ja/cairo-user-font-error.html +55 -0
  194. data/doc/ja/cairo-user-font-face-text-to-glyphs-data.html +155 -0
  195. data/doc/ja/cairo-user-font-face.html +268 -0
  196. data/doc/ja/cairo-user-font-immutable.html +54 -0
  197. data/doc/ja/cairo-win32-printing-surface.html +3 -3
  198. data/doc/ja/cairo-win32-surface.html +4 -4
  199. data/doc/ja/cairo.html +110 -77
  200. data/doc/ja/index.html +292 -205
  201. data/extconf.rb +3 -1
  202. data/misc/update-colors.rb +0 -0
  203. data/pkg-config.rb +54 -28
  204. data/samples/agg/aa_test.rb +0 -0
  205. data/samples/blur.rb +0 -0
  206. data/samples/png.rb +0 -0
  207. data/samples/scalable.rb +0 -0
  208. data/samples/text-on-path.rb +0 -0
  209. data/samples/text2.rb +0 -0
  210. data/src/cairo.def +8 -0
  211. data/src/cairo.so +0 -0
  212. data/src/lib/cairo.rb +12 -7
  213. data/src/lib/cairo/constants.rb +1 -0
  214. data/src/libruby-cairo.a +0 -0
  215. data/src/rb_cairo.c +25 -3
  216. data/src/rb_cairo.h +29 -18
  217. data/src/rb_cairo_constants.c +39 -10
  218. data/src/rb_cairo_context.c +156 -15
  219. data/src/rb_cairo_exception.c +143 -3
  220. data/src/rb_cairo_font_extents.c +81 -6
  221. data/src/rb_cairo_font_face.c +646 -4
  222. data/src/rb_cairo_font_options.c +24 -2
  223. data/src/rb_cairo_glyph.c +5 -3
  224. data/src/rb_cairo_matrix.c +17 -1
  225. data/src/rb_cairo_pattern.c +4 -4
  226. data/src/rb_cairo_private.c +169 -5
  227. data/src/rb_cairo_private.h +45 -3
  228. data/src/rb_cairo_scaled_font.c +61 -3
  229. data/src/rb_cairo_surface.c +174 -59
  230. data/src/rb_cairo_text_cluster.c +151 -0
  231. data/src/rb_cairo_text_extents.c +85 -2
  232. data/test-unit/Rakefile +30 -0
  233. data/test-unit/bin/testrb +5 -0
  234. data/test-unit/lib/test/unit.rb +280 -0
  235. data/test-unit/lib/test/unit/assertionfailederror.rb +14 -0
  236. data/test-unit/lib/test/unit/assertions.rb +722 -0
  237. data/test-unit/lib/test/unit/attribute.rb +125 -0
  238. data/test-unit/lib/test/unit/autorunner.rb +254 -0
  239. data/test-unit/lib/test/unit/collector.rb +43 -0
  240. data/test-unit/lib/test/unit/collector/descendant.rb +23 -0
  241. data/test-unit/lib/test/unit/collector/dir.rb +108 -0
  242. data/test-unit/lib/test/unit/collector/load.rb +135 -0
  243. data/test-unit/lib/test/unit/collector/objectspace.rb +34 -0
  244. data/test-unit/lib/test/unit/color.rb +61 -0
  245. data/test-unit/lib/test/unit/diff.rb +524 -0
  246. data/test-unit/lib/test/unit/error.rb +124 -0
  247. data/test-unit/lib/test/unit/exceptionhandler.rb +39 -0
  248. data/test-unit/lib/test/unit/failure.rb +110 -0
  249. data/test-unit/lib/test/unit/fixture.rb +185 -0
  250. data/test-unit/lib/test/unit/notification.rb +125 -0
  251. data/test-unit/lib/test/unit/omission.rb +143 -0
  252. data/test-unit/lib/test/unit/pending.rb +146 -0
  253. data/test-unit/lib/test/unit/priority.rb +146 -0
  254. data/test-unit/lib/test/unit/runner/console.rb +46 -0
  255. data/test-unit/lib/test/unit/runner/emacs.rb +8 -0
  256. data/test-unit/lib/test/unit/testcase.rb +281 -0
  257. data/test-unit/lib/test/unit/testresult.rb +89 -0
  258. data/test-unit/lib/test/unit/testsuite.rb +110 -0
  259. data/test-unit/lib/test/unit/ui/console/outputlevel.rb +14 -0
  260. data/test-unit/lib/test/unit/ui/console/testrunner.rb +195 -0
  261. data/test-unit/lib/test/unit/ui/emacs/testrunner.rb +49 -0
  262. data/test-unit/lib/test/unit/ui/testrunner.rb +20 -0
  263. data/test-unit/lib/test/unit/ui/testrunnermediator.rb +77 -0
  264. data/test-unit/lib/test/unit/ui/testrunnerutilities.rb +41 -0
  265. data/test-unit/lib/test/unit/util/backtracefilter.rb +41 -0
  266. data/test-unit/lib/test/unit/util/observable.rb +90 -0
  267. data/test-unit/lib/test/unit/util/procwrapper.rb +48 -0
  268. data/test-unit/lib/test/unit/version.rb +7 -0
  269. data/test-unit/sample/adder.rb +13 -0
  270. data/test-unit/sample/subtracter.rb +12 -0
  271. data/test-unit/sample/tc_adder.rb +18 -0
  272. data/test-unit/sample/tc_subtracter.rb +18 -0
  273. data/test-unit/sample/ts_examples.rb +7 -0
  274. data/test-unit/test/collector/test_descendant.rb +135 -0
  275. data/test-unit/test/collector/test_dir.rb +406 -0
  276. data/test-unit/test/collector/test_load.rb +333 -0
  277. data/test-unit/test/collector/test_objectspace.rb +98 -0
  278. data/test-unit/test/run-test.rb +13 -0
  279. data/test-unit/test/test_assertions.rb +693 -0
  280. data/test-unit/test/test_attribute.rb +86 -0
  281. data/test-unit/test/test_color.rb +37 -0
  282. data/test-unit/test/test_diff.rb +477 -0
  283. data/test-unit/test/test_emacs_runner.rb +60 -0
  284. data/test-unit/test/test_error.rb +26 -0
  285. data/test-unit/test/test_failure.rb +33 -0
  286. data/test-unit/test/test_fixture.rb +252 -0
  287. data/test-unit/test/test_notification.rb +33 -0
  288. data/test-unit/test/test_omission.rb +81 -0
  289. data/test-unit/test/test_pending.rb +70 -0
  290. data/test-unit/test/test_priority.rb +89 -0
  291. data/test-unit/test/test_testcase.rb +430 -0
  292. data/test-unit/test/test_testresult.rb +113 -0
  293. data/test-unit/test/test_testsuite.rb +129 -0
  294. data/test-unit/test/testunit_test_util.rb +14 -0
  295. data/test-unit/test/ui/test_testrunmediator.rb +20 -0
  296. data/test-unit/test/util/test_backtracefilter.rb +41 -0
  297. data/test-unit/test/util/test_observable.rb +102 -0
  298. data/test-unit/test/util/test_procwrapper.rb +36 -0
  299. data/test/cairo-test-utils.rb +18 -0
  300. data/test/run-test.rb +14 -1
  301. data/test/test_constants.rb +19 -0
  302. data/test/test_context.rb +117 -0
  303. data/test/test_exception.rb +27 -0
  304. data/test/test_font_extents.rb +36 -0
  305. data/test/test_font_face.rb +244 -0
  306. data/test/test_font_options.rb +32 -0
  307. data/test/test_pkg_config.rb +3 -2
  308. data/test/test_scaled_font.rb +34 -0
  309. data/test/test_surface.rb +41 -0
  310. data/test/test_text_cluster.rb +32 -0
  311. data/test/test_text_extents.rb +40 -0
  312. data/test/test_text_to_glyphs_data.rb +47 -0
  313. metadata +129 -109
  314. data/cairo/bin/libpng13.dll +0 -0
  315. data/cairo/lib/libpng13.dll.a +0 -0
  316. data/cairo/lib/pkgconfig/libpng13.pc +0 -14
  317. data/cairo/manifest/cairo-1.6.4-1.mft +0 -6
  318. data/cairo/manifest/libpng-dev-1.2.8.mft +0 -7
  319. data/doc/en/cairo-antialias.rd +0 -16
  320. data/doc/en/cairo-clip-not-representable-error.rd +0 -17
  321. data/doc/en/cairo-color-base.rd +0 -38
  322. data/doc/en/cairo-color-cmyk.rd +0 -107
  323. data/doc/en/cairo-color-hsv.rd +0 -91
  324. data/doc/en/cairo-color-rgb.rd +0 -95
  325. data/doc/en/cairo-color-x11.rd +0 -151
  326. data/doc/en/cairo-color.rd +0 -213
  327. data/doc/en/cairo-content.rd +0 -15
  328. data/doc/en/cairo-context-blur.rd +0 -15
  329. data/doc/en/cairo-context-circle.rd +0 -15
  330. data/doc/en/cairo-context-color.rd +0 -15
  331. data/doc/en/cairo-context-path.rd +0 -19
  332. data/doc/en/cairo-context-rectangle.rd +0 -15
  333. data/doc/en/cairo-context-triangle.rd +0 -15
  334. data/doc/en/cairo-context.rd +0 -491
  335. data/doc/en/cairo-error.rd +0 -16
  336. data/doc/en/cairo-extend.rd +0 -16
  337. data/doc/en/cairo-file-not-found.rd +0 -17
  338. data/doc/en/cairo-fill-rule.rd +0 -14
  339. data/doc/en/cairo-filter.rd +0 -18
  340. data/doc/en/cairo-font-extents.rd +0 -40
  341. data/doc/en/cairo-font-face.rd +0 -14
  342. data/doc/en/cairo-font-options.rd +0 -94
  343. data/doc/en/cairo-font-slant.rd +0 -15
  344. data/doc/en/cairo-font-weight.rd +0 -14
  345. data/doc/en/cairo-format.rd +0 -22
  346. data/doc/en/cairo-glyph.rd +0 -62
  347. data/doc/en/cairo-gradient-pattern.rd +0 -41
  348. data/doc/en/cairo-hint-metrics.rd +0 -15
  349. data/doc/en/cairo-hint-style.rd +0 -17
  350. data/doc/en/cairo-image-surface.rd +0 -47
  351. data/doc/en/cairo-invalid-content-error.rd +0 -17
  352. data/doc/en/cairo-invalid-dash-error.rd +0 -17
  353. data/doc/en/cairo-invalid-dsc-comment-error.rd +0 -17
  354. data/doc/en/cairo-invalid-format-error.rd +0 -17
  355. data/doc/en/cairo-invalid-index-error.rd +0 -17
  356. data/doc/en/cairo-invalid-matrix-error.rd +0 -17
  357. data/doc/en/cairo-invalid-path-data-error.rd +0 -17
  358. data/doc/en/cairo-invalid-pop-group-error.rd +0 -17
  359. data/doc/en/cairo-invalid-restore-error.rd +0 -17
  360. data/doc/en/cairo-invalid-status-error.rd +0 -17
  361. data/doc/en/cairo-invalid-stride-error.rd +0 -17
  362. data/doc/en/cairo-invalid-string-error.rd +0 -17
  363. data/doc/en/cairo-invalid-visual-error.rd +0 -17
  364. data/doc/en/cairo-line-cap.rd +0 -15
  365. data/doc/en/cairo-line-join.rd +0 -15
  366. data/doc/en/cairo-linear-pattern.rd +0 -28
  367. data/doc/en/cairo-matrix.rd +0 -186
  368. data/doc/en/cairo-no-current-point-error.rd +0 -17
  369. data/doc/en/cairo-null-pointer-error.rd +0 -17
  370. data/doc/en/cairo-operator.rd +0 -26
  371. data/doc/en/cairo-paper-parse-error.rd +0 -17
  372. data/doc/en/cairo-paper-unknown-paper-name.rd +0 -30
  373. data/doc/en/cairo-paper-unknown-unit.rd +0 -30
  374. data/doc/en/cairo-paper-unrecognized-paper-description.rd +0 -30
  375. data/doc/en/cairo-paper.rd +0 -141
  376. data/doc/en/cairo-path-close-path.rd +0 -21
  377. data/doc/en/cairo-path-curve-to.rd +0 -21
  378. data/doc/en/cairo-path-data-type.rd +0 -16
  379. data/doc/en/cairo-path-data.rd +0 -62
  380. data/doc/en/cairo-path-line-to.rd +0 -21
  381. data/doc/en/cairo-path-move-to.rd +0 -21
  382. data/doc/en/cairo-path.rd +0 -109
  383. data/doc/en/cairo-pattern-type-mismatch-error.rd +0 -17
  384. data/doc/en/cairo-pattern.rd +0 -62
  385. data/doc/en/cairo-pdf-surface.rd +0 -27
  386. data/doc/en/cairo-point.rd +0 -42
  387. data/doc/en/cairo-ps-level.rd +0 -24
  388. data/doc/en/cairo-ps-surface.rd +0 -55
  389. data/doc/en/cairo-quartz-image-surface.rd +0 -27
  390. data/doc/en/cairo-quartz-surface.rd +0 -27
  391. data/doc/en/cairo-radial-pattern.rd +0 -28
  392. data/doc/en/cairo-read-error.rd +0 -17
  393. data/doc/en/cairo-rectangle.rd +0 -54
  394. data/doc/en/cairo-scaled-font.rd +0 -50
  395. data/doc/en/cairo-solid-pattern.rd +0 -31
  396. data/doc/en/cairo-subpixel-order.rd +0 -17
  397. data/doc/en/cairo-surface-finished-error.rd +0 -17
  398. data/doc/en/cairo-surface-pattern.rd +0 -27
  399. data/doc/en/cairo-surface-type-mismatch-error.rd +0 -17
  400. data/doc/en/cairo-surface.rd +0 -72
  401. data/doc/en/cairo-svg-surface.rd +0 -44
  402. data/doc/en/cairo-svg-version.rd +0 -24
  403. data/doc/en/cairo-temp-file-error.rd +0 -17
  404. data/doc/en/cairo-text-extents.rd +0 -44
  405. data/doc/en/cairo-win32-printing-surface.rd +0 -27
  406. data/doc/en/cairo-win32-surface.rd +0 -31
  407. data/doc/en/cairo-write-error.rd +0 -17
  408. data/doc/en/cairo.rd +0 -95
  409. data/doc/en/index.rd +0 -1051
  410. data/samples/agg/aa_demo.rb +0 -47
data/extconf.rb CHANGED
@@ -80,7 +80,9 @@ major, minor, micro = 1, 2, 0
80
80
 
81
81
  PKGConfig.have_package(pkg, major, minor, micro) or exit 1
82
82
 
83
- have_func("rb_errinfo")
83
+ have_header("ruby/st.h") unless have_macro("HAVE_RUBY_ST_H", "ruby.h")
84
+ have_func("rb_errinfo", "ruby.h")
85
+ have_type("enum ruby_value_type", "ruby.h")
84
86
 
85
87
  check_win32
86
88
  target_name = File.basename(modname)
File without changes
@@ -164,41 +164,67 @@ class PackageConfig
164
164
  end
165
165
  end
166
166
 
167
+ def search_pkg_config_from_path(pkg_config)
168
+ (ENV["PATH"] || "").split(separator).each do |path|
169
+ try_pkg_config = Pathname(path) + pkg_config
170
+ return try_pkg_config if try_pkg_config.exist?
171
+ end
172
+ nil
173
+ end
174
+
175
+ def search_pkg_config_by_dln_find_exe(pkg_config)
176
+ begin
177
+ require "dl/import"
178
+ rescue LoadError
179
+ return nil
180
+ end
181
+ dln = Module.new
182
+ dln.module_eval do
183
+ if DL.const_defined?(:Importer)
184
+ extend DL::Importer
185
+ else
186
+ extend DL::Importable
187
+ end
188
+ begin
189
+ dlload RbConfig::CONFIG["LIBRUBY"]
190
+ rescue RuntimeError
191
+ return nil if $!.message == "unknown error"
192
+ return nil if /: image not found\z/ =~ $!.message
193
+ raise
194
+ rescue DL::DLError
195
+ return nil
196
+ end
197
+ extern "const char *dln_find_exe(const char *, const char *)"
198
+ end
199
+ dln.dln_find_exe(pkg_config.to_s, ".")
200
+ end
201
+
167
202
  def guess_default_path
168
- default_path = "/usr/local/lib/pkgconfig:/usr/lib/pkgconfig"
203
+ default_path = ["/usr/local/lib64/pkgconfig",
204
+ "/usr/local/lib/pkgconfig",
205
+ "/usr/local/libdata/pkgconfig",
206
+ "/opt/local/lib/pkgconfig",
207
+ "/usr/lib64/pkgconfig",
208
+ "/usr/lib/pkgconfig",
209
+ "/usr/share/pkgconfig"].join(separator)
169
210
  libdir = ENV["PKG_CONFIG_LIBDIR"]
170
- default_path = "#{libdir}:#{default_path}" if libdir
211
+ default_path = [libdir, default_path].join(separator) if libdir
212
+
171
213
  pkg_config = with_config("pkg-config", ENV["PKG_CONFIG"] || "pkg-config")
172
214
  pkg_config = Pathname.new(pkg_config)
173
215
  unless pkg_config.absolute?
174
- begin
175
- require "dl/import"
176
- rescue LoadError
177
- return default_path
178
- end
179
- dln = Module.new
180
- dln.module_eval do
181
- if DL.const_defined?(:Importer)
182
- extend DL::Importer
183
- else
184
- extend DL::Importable
185
- end
186
- begin
187
- dlload RbConfig::CONFIG["LIBRUBY"]
188
- rescue RuntimeError
189
- return default_path if $!.message == "unknown error"
190
- raise
191
- rescue DL::DLError
192
- return default_path
193
- end
194
- extern "const char *dln_find_exe(const char *, const char *)"
195
- end
196
- pkg_config = dln.dln_find_exe(pkg_config.to_s, nil)
197
- return default_path if pkg_config.nil?
198
- pkg_config = Pathname.new(pkg_config)
216
+ found_pkg_config = search_pkg_config_from_path(pkg_config)
217
+ pkg_config = found_pkg_config if found_pkg_config
199
218
  end
219
+ unless pkg_config.absolute?
220
+ found_pkg_config = search_pkg_config_by_dln_find_exe(pkg_config)
221
+ pkg_config = found_pkg_config if found_pkg_config
222
+ end
223
+
224
+ return default_path unless pkg_config.absolute?
200
225
  [(pkg_config.parent.parent + "lib" + "pkgconfig").to_s,
201
- default_path].join(":")
226
+ (pkg_config.parent.parent + "libdata" + "pkgconfig").to_s,
227
+ default_path].join(separator)
202
228
  end
203
229
  end
204
230
 
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -16,11 +16,15 @@ EXPORTS
16
16
  rb_cCairo_LinearPattern DATA
17
17
  rb_cCairo_RadialPattern DATA
18
18
  rb_cCairo_FontFace DATA
19
+ rb_cCairo_ToyFontFace DATA
20
+ rb_cCairo_UserFontFace DATA
21
+ rb_cCairo_UserFontFace_TextToGlyphsData DATA
19
22
  rb_cCairo_FontExtents DATA
20
23
  rb_cCairo_FontOptions DATA
21
24
  rb_cCairo_ScaledFont DATA
22
25
  rb_cCairo_TextExtents DATA
23
26
  rb_cCairo_Glyph DATA
27
+ rb_cCairo_TextCluster DATA
24
28
  rb_cCairo_Surface DATA
25
29
  rb_cCairo_ImageSurface DATA
26
30
  rb_cCairo_PDFSurface DATA
@@ -48,6 +52,7 @@ EXPORTS
48
52
  rb_mCairo_Filter DATA
49
53
  rb_mCairo_SVGVersion DATA
50
54
  rb_mCairo_PSLevel DATA
55
+ rb_mCairo_LCDFilter DATA
51
56
 
52
57
  rb_mCairo_Color DATA
53
58
  rb_cCairo_Color_Base DATA
@@ -73,6 +78,8 @@ EXPORTS
73
78
  rb_cairo_text_extents_to_ruby_object
74
79
  rb_cairo_glyph_from_ruby_object
75
80
  rb_cairo_glyph_to_ruby_object
81
+ rb_cairo_text_cluster_from_ruby_object
82
+ rb_cairo_text_cluster_to_ruby_object
76
83
  rb_cairo_surface_from_ruby_object
77
84
  rb_cairo_surface_to_ruby_object
78
85
  rb_cairo_surface_to_ruby_object_with_destroy
@@ -93,4 +100,5 @@ EXPORTS
93
100
  rb_cairo_filter_from_ruby_object
94
101
  rb_cairo_svg_version_from_ruby_object
95
102
  rb_cairo_ps_level_from_ruby_object
103
+ rb_cairo_lcd_filter_from_ruby_object
96
104
  rb_cairo_check_status
Binary file
@@ -45,14 +45,19 @@ require 'cairo/constants'
45
45
  module Cairo
46
46
  class << self
47
47
  undef __add_one_arg_setter
48
- end
49
48
 
50
- module_function
51
- def bindings_version
52
- major, minor, micro, tag = BINDINGS_VERSION
53
- version = [major, minor, micro].join('.')
54
- version << "-#{tag}" if tag
55
- version
49
+ def bindings_version
50
+ major, minor, micro, tag = BINDINGS_VERSION
51
+ version = [major, minor, micro].join('.')
52
+ version << "-#{tag}" if tag
53
+ version
54
+ end
55
+
56
+ def exit_application(exception, status)
57
+ puts("#{exception.class}: #{exception}")
58
+ puts(exception.backtrace)
59
+ exit(status)
60
+ end
56
61
  end
57
62
 
58
63
  class Surface
@@ -18,4 +18,5 @@ module Cairo
18
18
  define_constants.call(PathDataType, nil, Path)
19
19
  define_constants.call(SVGVersion, nil, SVGSurface)
20
20
  define_constants.call(SVGVersion, "SVG")
21
+ define_constants.call(LCDFilter, "LCD_FILTER") if const_defined?(:LCDFilter)
21
22
  end
Binary file
@@ -3,9 +3,9 @@
3
3
  * Ruby Cairo Binding
4
4
  *
5
5
  * $Author: kou $
6
- * $Date: 2008-04-24 12:36:17 $
6
+ * $Date: 2008-08-16 08:16:39 $
7
7
  *
8
- * Copyright 2006-2007 Kouhei Sutou <kou@cozmixng.org>
8
+ * Copyright 2006-2008 Kouhei Sutou <kou@cozmixng.org>
9
9
  * Copyright 2005 Øyvind Kolås <pippin@freedesktop.org>
10
10
  * Copyright 2004-2005 MenTaLguY <mental@rydia.com>
11
11
  *
@@ -27,6 +27,24 @@ rb_cairo_def_setters (VALUE klass)
27
27
  rb_funcall (rb_mCairo, id__add_one_arg_setter, 1, klass);
28
28
  }
29
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
+
30
48
  void
31
49
  Init_cairo ()
32
50
  {
@@ -58,7 +76,10 @@ Init_cairo ()
58
76
 
59
77
  rb_define_const (rb_mCairo, "BINDINGS_VERSION",
60
78
  rb_ary_new3 (4,
61
- INT2FIX (1), INT2FIX (6), INT2FIX (1), Qnil));
79
+ INT2FIX (1), INT2FIX (7), INT2FIX (0), Qnil));
80
+
81
+ rb_define_module_function (rb_mCairo, "satisfied_version?",
82
+ rb_cairo_satisfied_version, -1);
62
83
 
63
84
  rb_mCairo_Color = rb_const_get (rb_mCairo, rb_intern ("Color"));
64
85
  rb_cCairo_Color_Base = rb_const_get (rb_mCairo_Color, rb_intern ("Base"));
@@ -79,4 +100,5 @@ Init_cairo ()
79
100
  Init_cairo_text_extents ();
80
101
  Init_cairo_pattern ();
81
102
  Init_cairo_glyph ();
103
+ Init_cairo_text_cluster ();
82
104
  }
@@ -3,8 +3,9 @@
3
3
  * Ruby Cairo Binding
4
4
  *
5
5
  * $Author: kou $
6
- * $Date: 2008-04-11 03:01:33 $
6
+ * $Date: 2008-08-17 07:21:42 $
7
7
  *
8
+ * Copyright 2006-2008 Kouhei Sutou <kou@cozmixng.org>
8
9
  * Copyright 2005 Øyvind Kolås <pippin@freedesktop.org>
9
10
  * Copyright 2004-2005 MenTaLguY <mental@rydia.com>
10
11
  *
@@ -18,28 +19,18 @@
18
19
 
19
20
  #include <cairo.h>
20
21
 
21
- #if CAIRO_HAS_PS_SURFACE
22
+ #ifdef CAIRO_HAS_PS_SURFACE
22
23
  # include <cairo-ps.h>
23
24
  #endif
24
25
 
25
- #if CAIRO_HAS_PDF_SURFACE
26
+ #ifdef CAIRO_HAS_PDF_SURFACE
26
27
  # include <cairo-pdf.h>
27
28
  #endif
28
29
 
29
- #if CAIRO_HAS_SVG_SURFACE
30
+ #ifdef CAIRO_HAS_SVG_SURFACE
30
31
  # include <cairo-svg.h>
31
32
  #endif
32
33
 
33
- #if CAIRO_HAS_WIN32_SURFACE
34
- # define OpenFile OpenFile_win32
35
- # include <cairo-win32.h>
36
- # undef OpenFile
37
- #endif
38
-
39
- #if CAIRO_HAS_QUARTZ_SURFACE
40
- # include <cairo-quartz.h>
41
- #endif
42
-
43
34
  #define CAIRO_CHECK_VERSION(major, minor, micro) \
44
35
  (CAIRO_VERSION_MAJOR > (major) || \
45
36
  (CAIRO_VERSION_MAJOR == (major) && CAIRO_VERSION_MINOR > (minor)) || \
@@ -93,6 +84,9 @@ RB_CAIRO_VAR VALUE rb_cCairo_GradientPattern;
93
84
  RB_CAIRO_VAR VALUE rb_cCairo_LinearPattern;
94
85
  RB_CAIRO_VAR VALUE rb_cCairo_RadialPattern;
95
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;
96
90
  RB_CAIRO_VAR VALUE rb_cCairo_FontExtents;
97
91
  RB_CAIRO_VAR VALUE rb_cCairo_FontOptions;
98
92
  RB_CAIRO_VAR VALUE rb_cCairo_ScaledFont;
@@ -129,6 +123,9 @@ RB_CAIRO_VAR VALUE rb_mCairo_PatternType;
129
123
  RB_CAIRO_VAR VALUE rb_mCairo_Extend;
130
124
  RB_CAIRO_VAR VALUE rb_mCairo_Filter;
131
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;
132
129
  RB_CAIRO_VAR VALUE rb_mCairo_Color;
133
130
  RB_CAIRO_VAR VALUE rb_cCairo_Color_Base;
134
131
  RB_CAIRO_VAR VALUE rb_cCairo_Paper;
@@ -164,6 +161,9 @@ RB_CAIRO_VAR VALUE rb_cCairo_Paper;
164
161
  #define RVAL2CRGLYPH(obj) (rb_cairo_glyph_from_ruby_object(obj))
165
162
  #define CRGLYPH2RVAL(glyph) (rb_cairo_glyph_to_ruby_object(glyph))
166
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
167
  #define RVAL2CRSURFACE(obj) (rb_cairo_surface_from_ruby_object(obj))
168
168
  #define CRSURFACE2RVAL(surface) (rb_cairo_surface_to_ruby_object(surface))
169
169
  #define CRSURFACE2RVAL_WITH_DESTROY(surface) \
@@ -199,6 +199,11 @@ VALUE rb_cairo_text_extents_to_ruby_object (cairo_text_extents
199
199
  cairo_glyph_t *rb_cairo_glyph_from_ruby_object (VALUE obj);
200
200
  VALUE rb_cairo_glyph_to_ruby_object (cairo_glyph_t *glyph);
201
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
+
202
207
  cairo_surface_t *rb_cairo_surface_from_ruby_object (VALUE obj);
203
208
  VALUE rb_cairo_surface_to_ruby_object (cairo_surface_t *surface);
204
209
  VALUE rb_cairo_surface_to_ruby_object_with_destroy
@@ -220,14 +225,17 @@ VALUE rb_cairo_surface_to_ruby_object_with_destroy
220
225
  #define RVAL2CRFORMAT(obj) (rb_cairo_format_from_ruby_object(obj))
221
226
  #define RVAL2CREXTEND(obj) (rb_cairo_extend_from_ruby_object(obj))
222
227
  #define RVAL2CRFILTER(obj) (rb_cairo_filter_from_ruby_object(obj))
223
- #if CAIRO_HAS_SVG_SURFACE
228
+ #ifdef CAIRO_HAS_SVG_SURFACE
224
229
  #define RVAL2CRSVGVERSION(obj) (rb_cairo_svg_version_from_ruby_object(obj))
225
230
  #endif
226
- #if CAIRO_HAS_PS_SURFACE
231
+ #ifdef CAIRO_HAS_PS_SURFACE
227
232
  # if CAIRO_CHECK_VERSION(1, 5, 2)
228
233
  #define RVAL2CRPSLEVEL(obj) (rb_cairo_ps_level_from_ruby_object(obj))
229
234
  # endif
230
235
  #endif
236
+ #if CAIRO_CHECK_VERSION(1, 7, 2)
237
+ #define RVAL2CRLCDFILTER(obj) (rb_cairo_lcd_filter_from_ruby_object(obj))
238
+ #endif
231
239
 
232
240
  cairo_operator_t rb_cairo_operator_from_ruby_object (VALUE obj);
233
241
  cairo_antialias_t rb_cairo_antialias_from_ruby_object (VALUE obj);
@@ -244,14 +252,17 @@ cairo_content_t rb_cairo_content_from_ruby_object (VALUE obj);
244
252
  cairo_format_t rb_cairo_format_from_ruby_object (VALUE obj);
245
253
  cairo_extend_t rb_cairo_extend_from_ruby_object (VALUE obj);
246
254
  cairo_filter_t rb_cairo_filter_from_ruby_object (VALUE obj);
247
- #if CAIRO_HAS_SVG_SURFACE
255
+ #ifdef CAIRO_HAS_SVG_SURFACE
248
256
  cairo_svg_version_t rb_cairo_svg_version_from_ruby_object (VALUE obj);
249
257
  #endif
250
- #if CAIRO_HAS_PS_SURFACE
258
+ #ifdef CAIRO_HAS_PS_SURFACE
251
259
  # if CAIRO_CHECK_VERSION(1, 5, 2)
252
260
  cairo_ps_level_t rb_cairo_ps_level_from_ruby_object (VALUE obj);
253
261
  # endif
254
262
  #endif
263
+ #if CAIRO_CHECK_VERSION(1, 7, 2)
264
+ cairo_lcd_filter_t rb_cairo_lcd_filter_from_ruby_object (VALUE obj);
265
+ #endif
255
266
 
256
267
  void rb_cairo_check_status (cairo_status_t status);
257
268
 
@@ -3,7 +3,7 @@
3
3
  * Ruby Cairo Binding
4
4
  *
5
5
  * $Author: kou $
6
- * $Date: 2008-04-04 04:25:16 $
6
+ * $Date: 2008-08-13 12:27:39 $
7
7
  *
8
8
  * Copyright 2005 Øyvind Kolås <pippin@freedesktop.org>
9
9
  * Copyright 2004-2005 MenTaLguY <mental@rydia.com>
@@ -33,6 +33,7 @@ VALUE rb_mCairo_Extend;
33
33
  VALUE rb_mCairo_Filter;
34
34
  VALUE rb_mCairo_SVGVersion = Qnil;
35
35
  VALUE rb_mCairo_PSLevel = Qnil;
36
+ VALUE rb_mCairo_LCDFilter = Qnil;
36
37
 
37
38
  #define CAIRO_OPERATOR_MIN CAIRO_OPERATOR_CLEAR
38
39
  #define CAIRO_OPERATOR_MAX CAIRO_OPERATOR_SATURATE
@@ -85,6 +86,9 @@ VALUE rb_mCairo_PSLevel = Qnil;
85
86
  #define CAIRO_PS_LEVEL_MIN CAIRO_PS_LEVEL_2
86
87
  #define CAIRO_PS_LEVEL_MAX CAIRO_PS_LEVEL_3
87
88
 
89
+ #define CAIRO_LCD_FILTER_MIN CAIRO_LCD_FILTER_DEFAULT
90
+ #define CAIRO_LCD_FILTER_MAX CAIRO_LCD_FILTER_FIR5
91
+
88
92
  #define DEFINE_RVAL2ENUM(name, const_name) \
89
93
  cairo_ ## name ## _t \
90
94
  rb_cairo_ ## name ## _from_ruby_object (VALUE rb_ ## name) \
@@ -124,23 +128,31 @@ DEFINE_RVAL2ENUM(content, CONTENT)
124
128
  DEFINE_RVAL2ENUM(format, FORMAT)
125
129
  DEFINE_RVAL2ENUM(extend, EXTEND)
126
130
  DEFINE_RVAL2ENUM(filter, FILTER)
127
- #if CAIRO_HAS_SVG_SURFACE
131
+ #ifdef CAIRO_HAS_SVG_SURFACE
128
132
  DEFINE_RVAL2ENUM(svg_version, SVG_VERSION)
129
133
  #endif
130
- #if CAIRO_HAS_PS_SURFACE && CAIRO_CHECK_VERSION(1, 5, 2)
134
+
135
+ #ifdef CAIRO_HAS_PS_SURFACE
136
+ # if CAIRO_CHECK_VERSION(1, 5, 2)
131
137
  DEFINE_RVAL2ENUM(ps_level, PS_LEVEL)
132
- #else
133
- # ifdef RB_CAIRO_PLATFORM_WIN32
138
+ #define PS_LEVEL_ENUM_DEFINED 1
139
+ # endif
140
+ #endif
141
+
142
+ #if CAIRO_CHECK_VERSION(1, 7, 2)
143
+ DEFINE_RVAL2ENUM(lcd_filter, LCD_FILTER)
144
+ #endif
145
+
146
+ #if defined(RB_CAIRO_PLATFORM_WIN32) && !defined(PS_LEVEL_ENUM_DEFINED)
134
147
  void
135
148
  rb_cairo_ps_level_from_ruby_object (VALUE rb_ps_level)
136
149
  {
137
150
  /* dummy */
138
151
  }
139
- # endif
140
152
  #endif
141
153
 
142
154
 
143
- #if CAIRO_HAS_SVG_SURFACE
155
+ #ifdef CAIRO_HAS_SVG_SURFACE
144
156
  static VALUE
145
157
  cr_svg_get_versions (VALUE self)
146
158
  {
@@ -187,7 +199,7 @@ cr_format_stride_for_width (VALUE self, VALUE format, VALUE width)
187
199
  }
188
200
  #endif
189
201
 
190
- #if CAIRO_HAS_PS_SURFACE
202
+ #ifdef CAIRO_HAS_PS_SURFACE
191
203
  # if CAIRO_CHECK_VERSION(1, 5, 8)
192
204
  static VALUE
193
205
  cr_ps_get_levels (VALUE self)
@@ -428,7 +440,7 @@ Init_cairo_constants (void)
428
440
  rb_define_const (rb_mCairo_Filter, "GAUSSIAN",
429
441
  INT2FIX (CAIRO_FILTER_GAUSSIAN));
430
442
 
431
- #if CAIRO_HAS_SVG_SURFACE
443
+ #ifdef CAIRO_HAS_SVG_SURFACE
432
444
  /* cairo_svg_version_t */
433
445
  rb_mCairo_SVGVersion = rb_define_module_under (rb_mCairo, "SVGVersion");
434
446
  rb_define_const (rb_mCairo_SVGVersion, "VERSION_1_1",
@@ -442,7 +454,8 @@ Init_cairo_constants (void)
442
454
  cr_svg_version_to_string, -1);
443
455
  #endif
444
456
 
445
- #if CAIRO_HAS_PS_SURFACE && CAIRO_CHECK_VERSION(1, 5, 2)
457
+ #ifdef CAIRO_HAS_PS_SURFACE
458
+ # if CAIRO_CHECK_VERSION(1, 5, 2)
446
459
  /* cairo_ps_level_t */
447
460
  rb_mCairo_PSLevel = rb_define_module_under (rb_mCairo, "PSLevel");
448
461
  rb_define_const (rb_mCairo_PSLevel, "LEVEL_2", INT2FIX (CAIRO_PS_LEVEL_2));
@@ -452,5 +465,21 @@ Init_cairo_constants (void)
452
465
  cr_ps_get_levels, 0);
453
466
  rb_define_singleton_method (rb_mCairo_PSLevel, "name",
454
467
  cr_ps_level_to_string, -1);
468
+ # endif
469
+ #endif
470
+
471
+ #if CAIRO_CHECK_VERSION(1, 7, 2)
472
+ /* cairo_lcd_filter_t */
473
+ rb_mCairo_LCDFilter = rb_define_module_under (rb_mCairo, "LCDFilter");
474
+ rb_define_const (rb_mCairo_LCDFilter, "DEFAULT",
475
+ INT2FIX (CAIRO_LCD_FILTER_DEFAULT));
476
+ rb_define_const (rb_mCairo_LCDFilter, "NONE",
477
+ INT2FIX (CAIRO_LCD_FILTER_NONE));
478
+ rb_define_const (rb_mCairo_LCDFilter, "INTRA_PIXEL",
479
+ INT2FIX (CAIRO_LCD_FILTER_INTRA_PIXEL));
480
+ rb_define_const (rb_mCairo_LCDFilter, "FIR3",
481
+ INT2FIX (CAIRO_LCD_FILTER_FIR3));
482
+ rb_define_const (rb_mCairo_LCDFilter, "FIR5",
483
+ INT2FIX (CAIRO_LCD_FILTER_FIR5));
455
484
  #endif
456
485
  }