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/ChangeLog CHANGED
@@ -1,3 +1,288 @@
1
+ 2008-08-17 Kouhei Sutou <kou@cozmixng.org>
2
+
3
+ * NEWS: add 1.7.0 entry. (cairo 1.7.4 is supported)
4
+
5
+ * src/, test/: add missing version checks.
6
+
7
+ * src/rb_cairo_font_face.c
8
+ (cr_user_font_face_text_to_glyphs_func): set num_glyphs to -1 if
9
+ callback isn't found.
10
+
11
+ * src/rb_cairo_private.c (rb_cairo__glyphs_from_ruby_object)
12
+ (rb_cairo__text_clusters_from_ruby_object): set -1 to *num_XXX
13
+ instead of 0.
14
+
15
+ * src/rb_cairo_text_extents.c: add Cairo::TextExtents#initialize
16
+ and setters.
17
+
18
+ * test/test_text_extents.rb: add.
19
+
20
+ * src/rb_cairo_font_extents.c: add Cairo::FontExtents#initialize
21
+ and setters.
22
+
23
+ * test/test_font_extents.rb: add.
24
+
25
+ * src/rb_cairo_font_face.c: add
26
+ Cairo::UserFontFace::TextToGlyphsData#need_backward?.
27
+
28
+ * test/test_text_to_glyphs_data.rb: add tests for
29
+ Cairo::UserFontFace::TextToGlyphsData.
30
+
31
+ * test/test_font_face.rb
32
+ (FontFaceTest#test_toy_font_face_new_with_invalid_family_name):
33
+ add a test for creating Cairo::ToyFontFace with invalid family
34
+ name.
35
+ (FontFaceTest#test_toy_font_face_new): add a test for creating
36
+ Cairo::ToyFontFace with nil family name.
37
+
38
+ * src/rb_cairo_font_face.c (cr_toy_font_face_initialize): accept nil.
39
+
40
+ * src/rb_cairo_context.c (cr_select_font_face): make family optional.
41
+
42
+ * test/test_context.rb
43
+ (ContextTest#test_select_font_face),
44
+ (ContextTest#test_select_font_face_with_invalid_family_name): add
45
+ a test for Cairo::Context#select_font_face.
46
+
47
+ 2008-08-16 Kouhei Sutou <kou@cozmixng.org>
48
+
49
+ * test/test_pkg_config.rb (PkgConfigTest#test_requires_private):
50
+ work on my environment.
51
+
52
+ * src/lib/cairo.rb (Cairo.exit_application): add.
53
+
54
+ * src/rb_cairo_surface.c: use rb_cairo__invoke_callback().
55
+
56
+ * src/rb_cairo_private.c, src/rb_cairo_private.h
57
+ (rb_cairo__invoke_callback): use rb_protect() and exit if an
58
+ exception is raised in callback.
59
+
60
+ * src/rb_cairo_font_face.c: support Cairo::UserFontFace.
61
+
62
+ * src/rb_cairo_exception.c, src/rb_cairo_private.h
63
+ (rb_cairo__exception_to_status): add.
64
+
65
+ * src/rb_cairo_context.c (cr_show_text_glyphs): initialize variables.
66
+
67
+ * src/cairo.def, src/rb_cairo.h: add
68
+ rb_cCairo_UserFontFace_TextToGlyphsData.
69
+
70
+ * test/test_font_face.rb: add tests for user font.
71
+
72
+ * src/rb_cairo_private.[ch] (rb_cairo__text_clusters_from_ruby_object)
73
+ (rb_cairo__glyphs_from_ruby_object): add.
74
+
75
+ * test/test_context.rb (ContextTest#test_text_to_glyphs): add a
76
+ test for Cairo::Context#show_text_glyphs.
77
+
78
+ * src/rb_cairo_context.c: support Cairo::Context#show_text_glyphs.
79
+
80
+ * test/test_text_cluster.rb: add tests for Cairo::TextCluster.
81
+
82
+ * test/test_scaled_font.rb (ScaledFontTest#test_text_to_glyphs):
83
+ add a test for Cairo::ScaledFont#text_to_glyphs.
84
+
85
+ * src/rb_cairo.h, src/rb_cairo.c, src/cairo.def,
86
+ src/rb_cairo_text_cluster.c: add Cairo::TextCluster.
87
+
88
+ * src/rb_cairo_scaled_font.c: support
89
+ Cairo::ScaledFont#text_to_glyphs.
90
+
91
+ * src/rb_cairo_private.[ch] (rb_cairo__glyphs_to_ruby_object),
92
+ (rb_cairo__text_clusters_to_ruby_object): add.
93
+
94
+ * src/rb_cairo_context.c: support
95
+ Cairo::Context#have_show_text_glyphs?.
96
+
97
+ * test/test_context.rb (ContextTest#test_have_show_text_glyphs):
98
+ add a test for Cairo::Context#have_show_text_glyphs?.
99
+
100
+ 2008-08-14 Kouhei Sutou <kou@cozmixng.org>
101
+
102
+ * src/rb_cairo_scaled_font.c: support Cairo::ScaledFont#scale_matrix.
103
+
104
+ * test/test_scaled_font.rb: add.
105
+
106
+ * src/rb_cairo_matrix.c (cr_matrix_equal): add Cairo::Matrix#==.
107
+
108
+ * src/rb_cairo_surface.c: support Cairo::Surface#fallback_resolution.
109
+
110
+ * test/test_surface.rb (SurfaceTest#test_fallback_resolution): add
111
+ a test for Cairo::Surface#fallback_resolution.
112
+
113
+ * test/test_context.rb (ContextTest#test_font_face): add a test
114
+ for Cairo::Context#font_face{,=}.
115
+
116
+ * src/rb_cairo_private.[ch] (rb_cairo__inspect): add.
117
+
118
+ * test/test_font_face.rb: add.
119
+
120
+ * src/rb_cairo_font_face.c: support Cairo::ToyFontFace.
121
+
122
+ * src/cairo.def, src/rb_cairo.h: add rb_cCairo_ToyFontFace and
123
+ rb_cCairo_UserFontFace.
124
+
125
+ 2008-08-13 Kouhei Sutou <kou@cozmixng.org>
126
+
127
+ * src/lib/cairo/constants.rb (Cairo::LCD_FILTER_*): define.
128
+
129
+ * src/rb_cairo.h (RVAL2CRLCDFILTER,
130
+ rb_cairo_lcd_filter_from_ruby_object): add.
131
+
132
+ * src/cairo.def (rb_cairo_lcd_filter_from_ruby_object): add.
133
+
134
+ * src/rb_cairo_font_options.c (Cairo::FontOptions#lcd_filter,
135
+ Cairo::FontOptions#lcd_filter=): add.
136
+
137
+ * test/test_font_options.rb: add.
138
+
139
+ * src/rb_cairo.h, src/cairo.def, src/rb_cairo_constants.c
140
+ (Cairo::LCDFilter): add.
141
+
142
+ * test/test_constants.rb: add.
143
+
144
+ * src/rb_cairo_exception.c: support new statuses appeared since
145
+ cairo 1.7.2.
146
+
147
+ * src/rb_cairo.c (Cairo.satisfied_version?): add.
148
+
149
+ * test/test_exception.rb: add.
150
+
151
+ * test/cairo-test-utils.rb: add.
152
+
153
+ * test/run-test.rb: use Test::Unit 2.x.
154
+
155
+ * test-unit: imported Test::Unit 2.x.
156
+
157
+ 2008-08-11 Kouhei Sutou <kou@cozmixng.org>
158
+
159
+ * test/test_context.rb: add.
160
+
161
+ * test/run-test.rb: don't use at_exit test runner because rcairo
162
+ uses at_exit based GC guard mechanism.
163
+
164
+ * src/rb_cairo_context.c: free all alive Cairo::Context before
165
+ stop GC like Cairo::Surface.
166
+
167
+ * src/rb_cairo_private.[ch]: abstract explicit free before stop GC
168
+ used by Cairo::Surface.
169
+
170
+ * src/rb_cairo_surface.c: use abstracted explicit free before stop
171
+ GC.
172
+
173
+ 2008-08-06 Kouhei Sutou <kou@cozmixng.org>
174
+
175
+ * README: update sample scripts dependency description.
176
+ Suggested by Davide Rambaldi.
177
+
178
+ * README: add a Davide Rambaldi's entry.
179
+
180
+ 2008-08-02 Kouhei Sutou <kou@cozmixng.org>
181
+
182
+ * src/rb_cairo_surface.c: handle unknown surface type as
183
+ Cairo::Surface.
184
+
185
+ * src/rb_cairo_surface.c: add Cairo::Surface#destroy.
186
+
187
+ * README: update Paul van Tilburg's entry.
188
+
189
+ * extconf.rb: check ruby/st.h availability.
190
+ Suggested by Paul van Tilburg.
191
+
192
+ * src/rb_cairo_surface.c: use HAVE_RUBY_ST_H.
193
+
194
+ 2008-07-29 Kouhei Sutou <kou@cozmixng.org>
195
+
196
+ * src/rb_cairo_context.c: export Cairo::Context#destroy.
197
+
198
+ 2008-07-21 Kouhei Sutou <kou@cozmixng.org>
199
+
200
+ * src/rb_cairo_context.c (cr_set_source_generic): accept surface
201
+ without width and height.
202
+
203
+ 2008-07-19 Kouhei Sutou <kou@cozmixng.org>
204
+
205
+ * src/rb_cairo.c: 1.6.3 -> 1.7.0.
206
+
207
+ * NEWS: add a new entry for 1.6.3.
208
+
209
+ * src/rb_cairo.c: 1.7.0 -> 1.6.3.
210
+
211
+ 2008-06-20 Kouhei Sutou <kou@cozmixng.org>
212
+
213
+ * README: update OBATA Akio's entry.
214
+
215
+ * src/depend (install-so): use INSTALL_DATA and RUBYARCHDIR.
216
+ Suggested by OBATA Akio. Thanks!!!
217
+
218
+ * pkg-config.rb: add libdata.
219
+
220
+ * pkg-config.rb:
221
+ - add /opt/local/lib/pkgconfig as default path.
222
+ - improve default path guess.
223
+ Suggested by Carsten Bormann. Thanks!!!
224
+
225
+ * README: add Carsten Bormann to thanks list. Thanks!!!
226
+
227
+ * test/test_surface.rb: add.
228
+
229
+ * src/rb_cairo_surface.c (yield_and_finish): don't finish if it
230
+ isn't needed.
231
+
232
+ * src/rb_cairo_surface.c: finish all guarded surfaces at end.
233
+
234
+ 2008-06-19 Kouhei Sutou <kou@cozmixng.org>
235
+
236
+ * src/: use #ifdef for CAIRO_HAS_*.
237
+
238
+ * src/rb_cairo_surface.c: guard custom write surfaces from GC to
239
+ avoid writing in GC.
240
+ Reported by James Healy. Thanks!!!
241
+
242
+ * README: add James Healy to Thanks list.
243
+
244
+ * pkg-config.rb (PackageConfig#guess_default_path): add
245
+ /usr/share/pkgconfig to default path.
246
+ Suggested by James Healy. Thanks!!!
247
+
248
+ 2008-06-14 Kouhei Sutou <kou@cozmixng.org>
249
+
250
+ * src/rb_cairo.c: 1.6.2 -> 1.7.0.
251
+
252
+ * Rakefile: don't clean on release target to keep generated document.
253
+
254
+ * src/rb_cairo_surface.c: rename OpenFile before include rubyio.h.
255
+
256
+ * NEWS: add an entry for 1.6.2.
257
+
258
+ * pkg-config.rb: work with ruby 1.9.
259
+
260
+ * src/rb_cairo.c: 1.7.0 -> 1.6.2.
261
+
262
+ 2008-06-13 Kouhei Sutou <kou@cozmixng.org>
263
+
264
+ * pkg-config.rb: add PREFIX/lib64/pkgconfig to default path list.
265
+
266
+ 2008-06-12 Kouhei Sutou <kou@cozmixng.org>
267
+
268
+ * extconf.rb: include <ruby.h>.
269
+
270
+ * src/rb_cairo_private.h: add fallback RARRAY_PTR and RARRAY_LEN.
271
+
272
+ * src/rb_cairo_context.c, src/rb_cairo_pattern.c: use RARRAY_PTR
273
+ and RARRAY_LEN.
274
+
275
+ 2008-04-30 Kouhei Sutou <kou@cozmixng.org>
276
+
277
+ * src/rb_cairo.h: move environment dependent headers to ...
278
+ * src/rb_cairo_surface.c: ... here.
279
+ guard T_DATA macro for old Mac OS X environment.
280
+
281
+ * extconf.rb: check enum ruby_value_type availability that is
282
+ defined in Ruby 1.9 with RUBY_T_DATA.
283
+
284
+ * pkg-config.rb (PackageConfig#guess_default_path): handle DL exception.
285
+
1
286
  2008-04-26 Kouhei Sutou <kou@cozmixng.org>
2
287
 
3
288
  * Rakefile: fix document dependency.
data/NEWS CHANGED
@@ -1,3 +1,36 @@
1
+ Release 1.7.0 (2008-08-16) Kouhei Sutou <kou@cozmixng.org>)
2
+ ===========================================================
3
+
4
+ Features
5
+ --------
6
+ * Support cairo 1.7.4.
7
+ * Add new methods:
8
+ * Cairo::Context#destroy
9
+ * Cairo::Surface#destroy
10
+ * Cairo.satisfied_version?
11
+ * Resupport ruby 1.9. (suggested by Paul van Tilburg)
12
+ * Fix README. (suggested by Davide Rambaldi)
13
+
14
+ Release 1.6.3 (2008-07-19) Kouhei Sutou <kou@cozmixng.org>)
15
+ ===========================================================
16
+
17
+ Features
18
+ --------
19
+ * Fix build failure on Debian GNU/Linux. (reported by James Healy)
20
+ * Fix GC failure with Ruby 1.8.7. (reported by James Healy)
21
+ * Improve building on MacOS X. (suggested by Carsten Bormann)
22
+ * Fix install location of cairo.so. (suggested by OBATA Akio)
23
+
24
+ Release 1.6.2 (2008-06-14) Kouhei Sutou <kou@cozmixng.org>)
25
+ ===========================================================
26
+
27
+ Features
28
+ --------
29
+ * Fix build failure on MacOS X.
30
+ * Fix build failure on 64bit Linux.
31
+ * Fix build failure with old Ruby.
32
+ * Fix build failure with Ruby 1.9.
33
+
1
34
  Release 1.6.1 (2008-04-24) Kouhei Sutou <kou@cozmixng.org>)
2
35
  ===========================================================
3
36
 
data/README CHANGED
@@ -19,8 +19,12 @@ Compiling
19
19
  % make # to compile
20
20
 
21
21
  # make install # to install the cairo extension.
22
- # the samples in the samples folder should be able
23
- # to run before installation.
22
+ # The samples in the samples folder should be able
23
+ # to run before installation except text-on-path.rb
24
+ # and text2.rb. They uses Ruby/Pango with rcairo
25
+ # support. So you need to install rcairo and build
26
+ # Ruby/Pango with it before you run them.
27
+
24
28
 
25
29
  Windows
26
30
  -------
@@ -62,9 +66,16 @@ Thanks
62
66
 
63
67
  * Yoshinao Muramatsu: win32 surface support patch.
64
68
  * NANKI Haruo: some bug fix patches.
65
- * Paul van Tilburg: some patches that support ruby 1.9.
69
+ * Paul van Tilburg:
70
+ - some patches that support ruby 1.9.
71
+ - some suggestions.
66
72
  * Binzo: some bug reports and fixed that.
67
73
  * kimura wataru:
68
74
  - some advices for RubyCocoa.
69
75
  - reports a bug.
70
- * OBATA Akio: reports a bug.
76
+ * OBATA Akio:
77
+ - reports a bug.
78
+ - some suggestions.
79
+ * James Healy: reports bugs.
80
+ * Carsten Bormann: A suggestion.
81
+ * Davide Rambaldi: A suggestion.
data/Rakefile CHANGED
@@ -5,6 +5,7 @@ require 'English'
5
5
  require 'find'
6
6
  require 'fileutils'
7
7
  require 'rubygems'
8
+ gem 'hoe', '=1.6'
8
9
  require 'hoe'
9
10
 
10
11
  base_dir = File.join(File.dirname(__FILE__))
@@ -108,6 +109,8 @@ project.lib_files = project.spec.files.grep(%r|^src/lib/|)
108
109
  task(:install).instance_variable_get("@actions").clear
109
110
  task(:uninstall).instance_variable_get("@actions").clear
110
111
 
112
+ task(:release).prerequisites.reject! {|name| name == "clean"}
113
+
111
114
  task :install do
112
115
  [
113
116
  [project.lib_files, "lib", Hoe::RUBYLIB, 0444],
Binary file
Binary file
@@ -1,14 +1,14 @@
1
1
  /* png.h - header file for PNG reference library
2
2
  *
3
- * libpng version 1.2.8 - December 3, 2004
4
- * Copyright (c) 1998-2004 Glenn Randers-Pehrson
3
+ * libpng version 1.2.29 - May 8, 2008
4
+ * Copyright (c) 1998-2008 Glenn Randers-Pehrson
5
5
  * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
6
6
  * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.)
7
7
  *
8
8
  * Authors and maintainers:
9
9
  * libpng versions 0.71, May 1995, through 0.88, January 1996: Guy Schalnat
10
10
  * libpng versions 0.89c, June 1996, through 0.96, May 1997: Andreas Dilger
11
- * libpng versions 0.97, January 1998, through 1.2.8 - December 3, 2004: Glenn
11
+ * libpng versions 0.97, January 1998, through 1.2.29 - May 8, 2008: Glenn
12
12
  * See also "Contributing Authors", below.
13
13
  *
14
14
  * Note about libpng version numbers:
@@ -102,15 +102,96 @@
102
102
  * 1.0.16 10 10016 10.so.0.1.0.16
103
103
  * 1.2.6 13 10206 12.so.0.1.2.6
104
104
  * 1.2.7beta1-2 13 10207 12.so.0.1.2.7beta1-2
105
- * 1.0.17rc1 10 10017 12.so.0.1.0.17rc1
105
+ * 1.0.17rc1 10 10017 10.so.0.1.0.17rc1
106
106
  * 1.2.7rc1 13 10207 12.so.0.1.2.7rc1
107
- * 1.0.17 10 10017 12.so.0.1.0.17
107
+ * 1.0.17 10 10017 10.so.0.1.0.17
108
108
  * 1.2.7 13 10207 12.so.0.1.2.7
109
109
  * 1.2.8beta1-5 13 10208 12.so.0.1.2.8beta1-5
110
- * 1.0.18rc1-5 10 10018 12.so.0.1.0.18rc1-5
110
+ * 1.0.18rc1-5 10 10018 10.so.0.1.0.18rc1-5
111
111
  * 1.2.8rc1-5 13 10208 12.so.0.1.2.8rc1-5
112
- * 1.0.18 10 10018 12.so.0.1.0.18
112
+ * 1.0.18 10 10018 10.so.0.1.0.18
113
113
  * 1.2.8 13 10208 12.so.0.1.2.8
114
+ * 1.2.9beta1-3 13 10209 12.so.0.1.2.9beta1-3
115
+ * 1.2.9beta4-11 13 10209 12.so.0.9[.0]
116
+ * 1.2.9rc1 13 10209 12.so.0.9[.0]
117
+ * 1.2.9 13 10209 12.so.0.9[.0]
118
+ * 1.2.10beta1-8 13 10210 12.so.0.10[.0]
119
+ * 1.2.10rc1-3 13 10210 12.so.0.10[.0]
120
+ * 1.2.10 13 10210 12.so.0.10[.0]
121
+ * 1.2.11beta1-4 13 10211 12.so.0.11[.0]
122
+ * 1.0.19rc1-5 10 10019 10.so.0.19[.0]
123
+ * 1.2.11rc1-5 13 10211 12.so.0.11[.0]
124
+ * 1.0.19 10 10019 10.so.0.19[.0]
125
+ * 1.2.11 13 10211 12.so.0.11[.0]
126
+ * 1.0.20 10 10020 10.so.0.20[.0]
127
+ * 1.2.12 13 10212 12.so.0.12[.0]
128
+ * 1.2.13beta1 13 10213 12.so.0.13[.0]
129
+ * 1.0.21 10 10021 10.so.0.21[.0]
130
+ * 1.2.13 13 10213 12.so.0.13[.0]
131
+ * 1.2.14beta1-2 13 10214 12.so.0.14[.0]
132
+ * 1.0.22rc1 10 10022 10.so.0.22[.0]
133
+ * 1.2.14rc1 13 10214 12.so.0.14[.0]
134
+ * 1.0.22 10 10022 10.so.0.22[.0]
135
+ * 1.2.14 13 10214 12.so.0.14[.0]
136
+ * 1.2.15beta1-6 13 10215 12.so.0.15[.0]
137
+ * 1.0.23rc1-5 10 10023 10.so.0.23[.0]
138
+ * 1.2.15rc1-5 13 10215 12.so.0.15[.0]
139
+ * 1.0.23 10 10023 10.so.0.23[.0]
140
+ * 1.2.15 13 10215 12.so.0.15[.0]
141
+ * 1.2.16beta1-2 13 10216 12.so.0.16[.0]
142
+ * 1.2.16rc1 13 10216 12.so.0.16[.0]
143
+ * 1.0.24 10 10024 10.so.0.24[.0]
144
+ * 1.2.16 13 10216 12.so.0.16[.0]
145
+ * 1.2.17beta1-2 13 10217 12.so.0.17[.0]
146
+ * 1.0.25rc1 10 10025 10.so.0.25[.0]
147
+ * 1.2.17rc1-3 13 10217 12.so.0.17[.0]
148
+ * 1.0.25 10 10025 10.so.0.25[.0]
149
+ * 1.2.17 13 10217 12.so.0.17[.0]
150
+ * 1.0.26 10 10026 10.so.0.26[.0]
151
+ * 1.2.18 13 10218 12.so.0.18[.0]
152
+ * 1.2.19beta1-31 13 10219 12.so.0.19[.0]
153
+ * 1.0.27rc1-6 10 10027 10.so.0.27[.0]
154
+ * 1.2.19rc1-6 13 10219 12.so.0.19[.0]
155
+ * 1.0.27 10 10027 10.so.0.27[.0]
156
+ * 1.2.19 13 10219 12.so.0.19[.0]
157
+ * 1.2.20beta01-04 13 10220 12.so.0.20[.0]
158
+ * 1.0.28rc1-6 10 10028 10.so.0.28[.0]
159
+ * 1.2.20rc1-6 13 10220 12.so.0.20[.0]
160
+ * 1.0.28 10 10028 10.so.0.28[.0]
161
+ * 1.2.20 13 10220 12.so.0.20[.0]
162
+ * 1.2.21beta1-2 13 10221 12.so.0.21[.0]
163
+ * 1.2.21rc1-3 13 10221 12.so.0.21[.0]
164
+ * 1.0.29 10 10029 10.so.0.29[.0]
165
+ * 1.2.21 13 10221 12.so.0.21[.0]
166
+ * 1.2.22beta1-4 13 10222 12.so.0.22[.0]
167
+ * 1.0.30rc1 10 10030 10.so.0.30[.0]
168
+ * 1.2.22rc1 13 10222 12.so.0.22[.0]
169
+ * 1.0.30 10 10030 10.so.0.30[.0]
170
+ * 1.2.22 13 10222 12.so.0.22[.0]
171
+ * 1.2.23beta01-05 13 10223 12.so.0.23[.0]
172
+ * 1.2.23rc01 13 10223 12.so.0.23[.0]
173
+ * 1.2.23 13 10223 12.so.0.23[.0]
174
+ * 1.2.24beta01-02 13 10224 12.so.0.24[.0]
175
+ * 1.2.24rc01 13 10224 12.so.0.24[.0]
176
+ * 1.2.24 13 10224 12.so.0.24[.0]
177
+ * 1.2.25beta01-06 13 10225 12.so.0.25[.0]
178
+ * 1.2.25rc01-02 13 10225 12.so.0.25[.0]
179
+ * 1.0.31 10 10031 10.so.0.31[.0]
180
+ * 1.2.25 13 10225 12.so.0.25[.0]
181
+ * 1.2.26beta01-06 13 10226 12.so.0.26[.0]
182
+ * 1.2.26rc01 13 10226 12.so.0.26[.0]
183
+ * 1.2.26 13 10226 12.so.0.26[.0]
184
+ * 1.0.32 10 10032 10.so.0.32[.0]
185
+ * 1.2.27beta01-06 13 10227 12.so.0.27[.0]
186
+ * 1.2.27rc01 13 10227 12.so.0.27[.0]
187
+ * 1.0.33 10 10033 10.so.0.33[.0]
188
+ * 1.2.27 13 10227 12.so.0.27[.0]
189
+ * 1.0.34 10 10034 10.so.0.34[.0]
190
+ * 1.2.28 13 10228 12.so.0.28[.0]
191
+ * 1.2.29beta01-03 13 10229 12.so.0.29[.0]
192
+ * 1.2.29rc01 13 10229 12.so.0.29[.0]
193
+ * 1.0.35 10 10035 10.so.0.35[.0]
194
+ * 1.2.29 13 10229 12.so.0.29[.0]
114
195
  *
115
196
  * Henceforth the source version will match the shared-library major
116
197
  * and minor numbers; the shared-library major version number will be
@@ -120,7 +201,7 @@
120
201
  * to the source version x.y.z (leading zeros in y and z). Beta versions
121
202
  * were given the previous public release number plus a letter, until
122
203
  * version 1.0.6j; from then on they were given the upcoming public
123
- * release number plus "betaNN" or "rcN".
204
+ * release number plus "betaNN" or "rcNN".
124
205
  *
125
206
  * Binary incompatibility exists only when applications make direct access
126
207
  * to the info_ptr or png_ptr members through png.h, and the compiled
@@ -140,8 +221,8 @@
140
221
  * If you modify libpng you may insert additional notices immediately following
141
222
  * this sentence.
142
223
  *
143
- * libpng versions 1.2.6, August 15, 2004, through 1.2.8, December 3, 2004, are
144
- * Copyright (c) 2004 Glenn Randers-Pehrson, and are
224
+ * libpng versions 1.2.6, August 15, 2004, through 1.2.29, May 8, 2008, are
225
+ * Copyright (c) 2004, 2006-2008 Glenn Randers-Pehrson, and are
145
226
  * distributed according to the same disclaimer and license as libpng-1.2.5
146
227
  * with the following individual added to the list of Contributing Authors:
147
228
  *
@@ -252,13 +333,13 @@
252
333
  * Y2K compliance in libpng:
253
334
  * =========================
254
335
  *
255
- * December 3, 2004
336
+ * May 8, 2008
256
337
  *
257
338
  * Since the PNG Development group is an ad-hoc body, we can't make
258
339
  * an official declaration.
259
340
  *
260
341
  * This is your unofficial assurance that libpng from version 0.71 and
261
- * upward through 1.2.8 are Y2K compliant. It is my belief that earlier
342
+ * upward through 1.2.29 are Y2K compliant. It is my belief that earlier
262
343
  * versions were also Y2K compliant.
263
344
  *
264
345
  * Libpng only has three year fields. One is a 2-byte unsigned integer
@@ -314,9 +395,9 @@
314
395
  */
315
396
 
316
397
  /* Version information for png.h - this should match the version in png.c */
317
- #define PNG_LIBPNG_VER_STRING "1.2.8"
398
+ #define PNG_LIBPNG_VER_STRING "1.2.29"
318
399
  #define PNG_HEADER_VERSION_STRING \
319
- " libpng version 1.2.8 - December 3, 2004 (header)\n"
400
+ " libpng version 1.2.29 - May 8, 2008\n"
320
401
 
321
402
  #define PNG_LIBPNG_VER_SONUM 0
322
403
  #define PNG_LIBPNG_VER_DLLNUM 13
@@ -324,7 +405,7 @@
324
405
  /* These should match the first 3 components of PNG_LIBPNG_VER_STRING: */
325
406
  #define PNG_LIBPNG_VER_MAJOR 1
326
407
  #define PNG_LIBPNG_VER_MINOR 2
327
- #define PNG_LIBPNG_VER_RELEASE 8
408
+ #define PNG_LIBPNG_VER_RELEASE 29
328
409
  /* This should match the numeric part of the final component of
329
410
  * PNG_LIBPNG_VER_STRING, omitting any leading zero: */
330
411
 
@@ -352,7 +433,7 @@
352
433
  * Versions 0.7 through 1.0.0 were in the range 0 to 100 here (only
353
434
  * version 1.0.0 was mis-numbered 100 instead of 10000). From
354
435
  * version 1.0.1 it's xxyyzz, where x=major, y=minor, z=release */
355
- #define PNG_LIBPNG_VER 10208 /* 1.2.8 */
436
+ #define PNG_LIBPNG_VER 10229 /* 1.2.29 */
356
437
 
357
438
  #ifndef PNG_VERSION_INFO_ONLY
358
439
  /* include the compression library's header */
@@ -376,14 +457,14 @@
376
457
  */
377
458
 
378
459
  #if defined(PNG_USER_PRIVATEBUILD)
379
- # define PNG_LIBPNG_BUILD_TYPE PNG_LIBPNG_BUILD_BASE_TYPE | \
380
- PNG_LIBPNG_BUILD_PRIVATE
460
+ # define PNG_LIBPNG_BUILD_TYPE \
461
+ (PNG_LIBPNG_BUILD_BASE_TYPE | PNG_LIBPNG_BUILD_PRIVATE)
381
462
  #else
382
463
  # if defined(PNG_LIBPNG_SPECIALBUILD)
383
- # define PNG_LIBPNG_BUILD_TYPE PNG_LIBPNG_BUILD_BASE_TYPE | \
384
- PNG_LIBPNG_BUILD_SPECIAL
464
+ # define PNG_LIBPNG_BUILD_TYPE \
465
+ (PNG_LIBPNG_BUILD_BASE_TYPE | PNG_LIBPNG_BUILD_SPECIAL)
385
466
  # else
386
- # define PNG_LIBPNG_BUILD_TYPE PNG_LIBPNG_BUILD_BASE_TYPE
467
+ # define PNG_LIBPNG_BUILD_TYPE (PNG_LIBPNG_BUILD_BASE_TYPE)
387
468
  # endif
388
469
  #endif
389
470
 
@@ -440,7 +521,7 @@ extern "C" {
440
521
  * the version above.
441
522
  */
442
523
  #ifdef PNG_USE_GLOBAL_ARRAYS
443
- PNG_EXPORT_VAR (const char) png_libpng_ver[18];
524
+ PNG_EXPORT_VAR (PNG_CONST char) png_libpng_ver[18];
444
525
  /* need room for 99.99.99beta99z */
445
526
  #else
446
527
  #define png_libpng_ver png_get_header_ver(NULL)
@@ -449,17 +530,14 @@ PNG_EXPORT_VAR (const char) png_libpng_ver[18];
449
530
  #ifdef PNG_USE_GLOBAL_ARRAYS
450
531
  /* This was removed in version 1.0.5c */
451
532
  /* Structures to facilitate easy interlacing. See png.c for more details */
452
- PNG_EXPORT_VAR (const int FARDATA) png_pass_start[7];
453
- PNG_EXPORT_VAR (const int FARDATA) png_pass_inc[7];
454
- PNG_EXPORT_VAR (const int FARDATA) png_pass_ystart[7];
455
- PNG_EXPORT_VAR (const int FARDATA) png_pass_yinc[7];
456
- PNG_EXPORT_VAR (const int FARDATA) png_pass_mask[7];
457
- PNG_EXPORT_VAR (const int FARDATA) png_pass_dsp_mask[7];
458
- #ifdef PNG_HAVE_ASSEMBLER_COMBINE_ROW
459
- PNG_EXPORT_VAR (const int FARDATA) png_pass_width[7];
460
- #endif
533
+ PNG_EXPORT_VAR (PNG_CONST int FARDATA) png_pass_start[7];
534
+ PNG_EXPORT_VAR (PNG_CONST int FARDATA) png_pass_inc[7];
535
+ PNG_EXPORT_VAR (PNG_CONST int FARDATA) png_pass_ystart[7];
536
+ PNG_EXPORT_VAR (PNG_CONST int FARDATA) png_pass_yinc[7];
537
+ PNG_EXPORT_VAR (PNG_CONST int FARDATA) png_pass_mask[7];
538
+ PNG_EXPORT_VAR (PNG_CONST int FARDATA) png_pass_dsp_mask[7];
461
539
  /* This isn't currently used. If you need it, see png.c for more details.
462
- PNG_EXPORT_VAR (const int FARDATA) png_pass_height[7];
540
+ PNG_EXPORT_VAR (PNG_CONST int FARDATA) png_pass_height[7];
463
541
  */
464
542
  #endif
465
543
 
@@ -596,9 +674,10 @@ typedef png_time FAR * FAR * png_timepp;
596
674
  * up private chunks for output even though the library doesn't actually
597
675
  * know about their semantics.
598
676
  */
677
+ #define PNG_CHUNK_NAME_LENGTH 5
599
678
  typedef struct png_unknown_chunk_t
600
679
  {
601
- png_byte name[5];
680
+ png_byte name[PNG_CHUNK_NAME_LENGTH];
602
681
  png_byte *data;
603
682
  png_size_t size;
604
683
 
@@ -894,8 +973,10 @@ typedef png_info FAR * FAR * png_infopp;
894
973
  #define PNG_UINT_31_MAX ((png_uint_32)0x7fffffffL)
895
974
  #define PNG_UINT_32_MAX ((png_uint_32)(-1))
896
975
  #define PNG_SIZE_MAX ((png_size_t)(-1))
976
+ #if defined(PNG_1_0_X) || defined (PNG_1_2_X)
897
977
  /* PNG_MAX_UINT is deprecated; use PNG_UINT_31_MAX instead. */
898
978
  #define PNG_MAX_UINT PNG_UINT_31_MAX
979
+ #endif
899
980
 
900
981
  /* These describe the color_type field in png_info. */
901
982
  /* color type masks */
@@ -1123,10 +1204,12 @@ struct png_struct_def
1123
1204
  png_uint_32 row_number; /* current row in interlace pass */
1124
1205
  png_bytep prev_row; /* buffer to save previous (unfiltered) row */
1125
1206
  png_bytep row_buf; /* buffer to save current (unfiltered) row */
1207
+ #ifndef PNG_NO_WRITE_FILTERING
1126
1208
  png_bytep sub_row; /* buffer to save "sub" row when filtering */
1127
1209
  png_bytep up_row; /* buffer to save "up" row when filtering */
1128
1210
  png_bytep avg_row; /* buffer to save "avg" row when filtering */
1129
1211
  png_bytep paeth_row; /* buffer to save "Paeth" row when filtering */
1212
+ #endif
1130
1213
  png_row_info row_info; /* used for transformation routines */
1131
1214
 
1132
1215
  png_uint_32 idat_size; /* current IDAT size for read */
@@ -1228,8 +1311,7 @@ struct png_struct_def
1228
1311
  png_size_t current_text_left; /* how much text left to read in input */
1229
1312
  png_charp current_text; /* current text chunk buffer */
1230
1313
  png_charp current_text_ptr; /* current location in current_text */
1231
- # endif /* PNG_PROGRESSIVE_READ_SUPPORTED && PNG_TEXT_SUPPORTED */
1232
-
1314
+ # endif /* PNG_TEXT_SUPPORTED */
1233
1315
  #endif /* PNG_PROGRESSIVE_READ_SUPPORTED */
1234
1316
 
1235
1317
  #if defined(__TURBOC__) && !defined(_Windows) && !defined(__FLAT__)
@@ -1311,16 +1393,20 @@ struct png_struct_def
1311
1393
  png_byte filter_type;
1312
1394
  #endif
1313
1395
 
1314
- #if defined(PNG_1_0_X) || (defined(PNG_DEBUG) && defined(PNG_USE_PNGGCCRD))
1396
+ #if defined(PNG_1_0_X)
1315
1397
  /* New member added in libpng-1.0.10, ifdef'ed out in 1.2.0 */
1316
1398
  png_uint_32 row_buf_size;
1317
1399
  #endif
1318
1400
 
1319
1401
  /* New members added in libpng-1.2.0 */
1320
- #if !defined(PNG_1_0_X) && defined(PNG_ASSEMBLER_CODE_SUPPORTED)
1402
+ #if defined(PNG_ASSEMBLER_CODE_SUPPORTED)
1403
+ # if !defined(PNG_1_0_X)
1404
+ # if defined(PNG_MMX_CODE_SUPPORTED)
1321
1405
  png_byte mmx_bitdepth_threshold;
1322
1406
  png_uint_32 mmx_rowbytes_threshold;
1407
+ # endif
1323
1408
  png_uint_32 asm_flags;
1409
+ # endif
1324
1410
  #endif
1325
1411
 
1326
1412
  /* New members added in libpng-1.0.2 but first enabled by default in 1.2.0 */
@@ -1350,13 +1436,21 @@ struct png_struct_def
1350
1436
  png_uint_32 user_height_max;
1351
1437
  #endif
1352
1438
 
1439
+ /* New member added in libpng-1.0.25 and 1.2.17 */
1440
+ #if defined(PNG_UNKNOWN_CHUNKS_SUPPORTED)
1441
+ /* storage for unknown chunk that the library doesn't recognize. */
1442
+ png_unknown_chunk unknown_chunk;
1443
+ #endif
1444
+
1445
+ /* New members added in libpng-1.2.26 */
1446
+ png_uint_32 old_big_row_buf_size, old_prev_row_size;
1353
1447
  };
1354
1448
 
1355
1449
 
1356
1450
  /* This triggers a compiler error in png.c, if png.c and png.h
1357
1451
  * do not agree upon the version number.
1358
1452
  */
1359
- typedef png_structp version_1_2_8;
1453
+ typedef png_structp version_1_2_29;
1360
1454
 
1361
1455
  typedef png_struct FAR * FAR * png_structpp;
1362
1456
 
@@ -1442,11 +1536,14 @@ extern PNG_EXPORT(void,png_write_chunk_end) PNGARG((png_structp png_ptr));
1442
1536
  extern PNG_EXPORT(png_infop,png_create_info_struct)
1443
1537
  PNGARG((png_structp png_ptr));
1444
1538
 
1539
+ #if defined(PNG_1_0_X) || defined (PNG_1_2_X)
1445
1540
  /* Initialize the info structure (old interface - DEPRECATED) */
1446
1541
  extern PNG_EXPORT(void,png_info_init) PNGARG((png_infop info_ptr));
1447
1542
  #undef png_info_init
1448
1543
  #define png_info_init(info_ptr) png_info_init_3(&info_ptr,\
1449
1544
  png_sizeof(png_info));
1545
+ #endif
1546
+
1450
1547
  extern PNG_EXPORT(void,png_info_init_3) PNGARG((png_infopp info_ptr,
1451
1548
  png_size_t png_info_struct_size));
1452
1549
 
@@ -1483,9 +1580,16 @@ extern PNG_EXPORT(void,png_convert_from_time_t) PNGARG((png_timep ptime,
1483
1580
  #if defined(PNG_READ_EXPAND_SUPPORTED)
1484
1581
  /* Expand data to 24-bit RGB, or 8-bit grayscale, with alpha if available. */
1485
1582
  extern PNG_EXPORT(void,png_set_expand) PNGARG((png_structp png_ptr));
1486
- extern PNG_EXPORT(void,png_set_gray_1_2_4_to_8) PNGARG((png_structp png_ptr));
1583
+ #if !defined(PNG_1_0_X)
1584
+ extern PNG_EXPORT(void,png_set_expand_gray_1_2_4_to_8) PNGARG((png_structp
1585
+ png_ptr));
1586
+ #endif
1487
1587
  extern PNG_EXPORT(void,png_set_palette_to_rgb) PNGARG((png_structp png_ptr));
1488
1588
  extern PNG_EXPORT(void,png_set_tRNS_to_alpha) PNGARG((png_structp png_ptr));
1589
+ #if defined(PNG_1_0_X) || defined (PNG_1_2_X)
1590
+ /* Deprecated */
1591
+ extern PNG_EXPORT(void,png_set_gray_1_2_4_to_8) PNGARG((png_structp png_ptr));
1592
+ #endif
1489
1593
  #endif
1490
1594
 
1491
1595
  #if defined(PNG_READ_BGR_SUPPORTED) || defined(PNG_WRITE_BGR_SUPPORTED)
@@ -1606,6 +1710,7 @@ extern PNG_EXPORT(void,png_set_gamma) PNGARG((png_structp png_ptr,
1606
1710
  #endif
1607
1711
  #endif
1608
1712
 
1713
+ #if defined(PNG_1_0_X) || defined (PNG_1_2_X)
1609
1714
  #if defined(PNG_READ_EMPTY_PLTE_SUPPORTED) || \
1610
1715
  defined(PNG_WRITE_EMPTY_PLTE_SUPPORTED)
1611
1716
  /* Permit or disallow empty PLTE (0: not permitted, 1: permitted) */
@@ -1613,6 +1718,7 @@ extern PNG_EXPORT(void,png_set_gamma) PNGARG((png_structp png_ptr,
1613
1718
  extern PNG_EXPORT(void,png_permit_empty_plte) PNGARG((png_structp png_ptr,
1614
1719
  int empty_plte_permitted));
1615
1720
  #endif
1721
+ #endif
1616
1722
 
1617
1723
  #if defined(PNG_WRITE_FLUSH_SUPPORTED)
1618
1724
  /* Set how many lines between output flushes - 0 for no flushing */
@@ -1992,6 +2098,7 @@ extern void *png_far_to_near PNGARG((png_structp png_ptr,png_voidp ptr,
1992
2098
  int check));
1993
2099
  #endif /* USE_FAR_KEYWORD */
1994
2100
 
2101
+ #ifndef PNG_NO_ERROR_TEXT
1995
2102
  /* Fatal error in PNG image of libpng - can't continue */
1996
2103
  extern PNG_EXPORT(void,png_error) PNGARG((png_structp png_ptr,
1997
2104
  png_const_charp error_message));
@@ -1999,14 +2106,22 @@ extern PNG_EXPORT(void,png_error) PNGARG((png_structp png_ptr,
1999
2106
  /* The same, but the chunk name is prepended to the error string. */
2000
2107
  extern PNG_EXPORT(void,png_chunk_error) PNGARG((png_structp png_ptr,
2001
2108
  png_const_charp error_message));
2109
+ #else
2110
+ /* Fatal error in PNG image of libpng - can't continue */
2111
+ extern PNG_EXPORT(void,png_err) PNGARG((png_structp png_ptr));
2112
+ #endif
2002
2113
 
2114
+ #ifndef PNG_NO_WARNINGS
2003
2115
  /* Non-fatal error in libpng. Can continue, but may have a problem. */
2004
2116
  extern PNG_EXPORT(void,png_warning) PNGARG((png_structp png_ptr,
2005
2117
  png_const_charp warning_message));
2006
2118
 
2119
+ #ifdef PNG_READ_SUPPORTED
2007
2120
  /* Non-fatal error in libpng, chunk name is prepended to message. */
2008
2121
  extern PNG_EXPORT(void,png_chunk_warning) PNGARG((png_structp png_ptr,
2009
2122
  png_const_charp warning_message));
2123
+ #endif /* PNG_READ_SUPPORTED */
2124
+ #endif /* PNG_NO_WARNINGS */
2010
2125
 
2011
2126
  /* The png_set_<chunk> functions are for storing values in the png_info_struct.
2012
2127
  * Similarly, the png_get_<chunk> calls are used to read values from the
@@ -2327,11 +2442,12 @@ extern PNG_EXPORT(png_uint_32,png_get_sCAL_s) PNGARG((png_structp png_ptr,
2327
2442
  #ifdef PNG_FLOATING_POINT_SUPPORTED
2328
2443
  extern PNG_EXPORT(void,png_set_sCAL) PNGARG((png_structp png_ptr,
2329
2444
  png_infop info_ptr, int unit, double width, double height));
2330
- #endif
2445
+ #else
2331
2446
  #ifdef PNG_FIXED_POINT_SUPPORTED
2332
2447
  extern PNG_EXPORT(void,png_set_sCAL_s) PNGARG((png_structp png_ptr,
2333
2448
  png_infop info_ptr, int unit, png_charp swidth, png_charp sheight));
2334
2449
  #endif
2450
+ #endif
2335
2451
  #endif /* PNG_sCAL_SUPPORTED || PNG_WRITE_sCAL_SUPPORTED */
2336
2452
 
2337
2453
  #if defined(PNG_UNKNOWN_CHUNKS_SUPPORTED)
@@ -2339,7 +2455,7 @@ extern PNG_EXPORT(void,png_set_sCAL_s) PNGARG((png_structp png_ptr,
2339
2455
  handling or default unknown chunk handling is not desired. Any chunks not
2340
2456
  listed will be handled in the default manner. The IHDR and IEND chunks
2341
2457
  must not be listed.
2342
- keep = 0: follow default behavour
2458
+ keep = 0: follow default behaviour
2343
2459
  = 1: do not keep
2344
2460
  = 2: keep only if safe-to-copy
2345
2461
  = 3: keep even if unsafe-to-copy
@@ -2427,8 +2543,6 @@ extern PNG_EXPORT(void, png_write_png) PNGARG((png_structp png_ptr,
2427
2543
  #define png_debug2(l, m, p1, p2)
2428
2544
  #endif
2429
2545
 
2430
- extern PNG_EXPORT(png_bytep,png_sig_bytes) PNGARG((void));
2431
-
2432
2546
  extern PNG_EXPORT(png_charp,png_get_copyright) PNGARG((png_structp png_ptr));
2433
2547
  extern PNG_EXPORT(png_charp,png_get_header_ver) PNGARG((png_structp png_ptr));
2434
2548
  extern PNG_EXPORT(png_charp,png_get_header_version) PNGARG((png_structp png_ptr));
@@ -2447,6 +2561,7 @@ extern PNG_EXPORT(png_uint_32,png_permit_mng_features) PNGARG((png_structp
2447
2561
 
2448
2562
  /* Added to version 1.2.0 */
2449
2563
  #if defined(PNG_ASSEMBLER_CODE_SUPPORTED)
2564
+ #if defined(PNG_MMX_CODE_SUPPORTED)
2450
2565
  #define PNG_ASM_FLAG_MMX_SUPPORT_COMPILED 0x01 /* not user-settable */
2451
2566
  #define PNG_ASM_FLAG_MMX_SUPPORT_IN_CPU 0x02 /* not user-settable */
2452
2567
  #define PNG_ASM_FLAG_MMX_READ_COMBINE_ROW 0x04
@@ -2472,6 +2587,7 @@ extern PNG_EXPORT(png_uint_32,png_permit_mng_features) PNGARG((png_structp
2472
2587
 
2473
2588
  #define PNG_SELECT_READ 1
2474
2589
  #define PNG_SELECT_WRITE 2
2590
+ #endif /* PNG_MMX_CODE_SUPPORTED */
2475
2591
 
2476
2592
  #if !defined(PNG_1_0_X)
2477
2593
  /* pngget.c */
@@ -2504,11 +2620,11 @@ extern PNG_EXPORT(void,png_set_mmx_thresholds)
2504
2620
  png_uint_32 mmx_rowbytes_threshold));
2505
2621
 
2506
2622
  #endif /* PNG_1_0_X */
2507
- #endif /* PNG_ASSEMBLER_CODE_SUPPORTED */
2508
2623
 
2509
2624
  #if !defined(PNG_1_0_X)
2510
2625
  /* png.c, pnggccrd.c, or pngvcrd.c */
2511
2626
  extern PNG_EXPORT(int,png_mmx_support) PNGARG((void));
2627
+ #endif /* PNG_ASSEMBLER_CODE_SUPPORTED */
2512
2628
 
2513
2629
  /* Strip the prepended error numbers ("#nnn ") from error and warning
2514
2630
  * messages before passing them to the error or warning handler. */
@@ -2572,22 +2688,65 @@ extern PNG_EXPORT(png_uint_32,png_get_user_height_max) PNGARG((png_structp
2572
2688
 
2573
2689
  #endif /* PNG_READ_COMPOSITE_NODIV_SUPPORTED */
2574
2690
 
2691
+ /* Inline macros to do direct reads of bytes from the input buffer. These
2692
+ * require that you are using an architecture that uses PNG byte ordering
2693
+ * (MSB first) and supports unaligned data storage. I think that PowerPC
2694
+ * in big-endian mode and 680x0 are the only ones that will support this.
2695
+ * The x86 line of processors definitely do not. The png_get_int_32()
2696
+ * routine also assumes we are using two's complement format for negative
2697
+ * values, which is almost certainly true.
2698
+ */
2699
+ #if defined(PNG_READ_BIG_ENDIAN_SUPPORTED)
2700
+ # define png_get_uint_32(buf) ( *((png_uint_32p) (buf)))
2701
+ # define png_get_uint_16(buf) ( *((png_uint_16p) (buf)))
2702
+ # define png_get_int_32(buf) ( *((png_int_32p) (buf)))
2703
+ #else
2704
+ extern PNG_EXPORT(png_uint_32,png_get_uint_32) PNGARG((png_bytep buf));
2705
+ extern PNG_EXPORT(png_uint_16,png_get_uint_16) PNGARG((png_bytep buf));
2706
+ extern PNG_EXPORT(png_int_32,png_get_int_32) PNGARG((png_bytep buf));
2707
+ #endif /* !PNG_READ_BIG_ENDIAN_SUPPORTED */
2708
+ extern PNG_EXPORT(png_uint_32,png_get_uint_31)
2709
+ PNGARG((png_structp png_ptr, png_bytep buf));
2710
+ /* No png_get_int_16 -- may be added if there's a real need for it. */
2711
+
2712
+ /* Place a 32-bit number into a buffer in PNG byte order (big-endian).
2713
+ */
2714
+ extern PNG_EXPORT(void,png_save_uint_32)
2715
+ PNGARG((png_bytep buf, png_uint_32 i));
2716
+ extern PNG_EXPORT(void,png_save_int_32)
2717
+ PNGARG((png_bytep buf, png_int_32 i));
2718
+
2719
+ /* Place a 16-bit number into a buffer in PNG byte order.
2720
+ * The parameter is declared unsigned int, not png_uint_16,
2721
+ * just to avoid potential problems on pre-ANSI C compilers.
2722
+ */
2723
+ extern PNG_EXPORT(void,png_save_uint_16)
2724
+ PNGARG((png_bytep buf, unsigned int i));
2725
+ /* No png_save_int_16 -- may be added if there's a real need for it. */
2726
+
2727
+ /* ************************************************************************* */
2728
+
2575
2729
  /* These next functions are used internally in the code. They generally
2576
2730
  * shouldn't be used unless you are writing code to add or replace some
2577
2731
  * functionality in libpng. More information about most functions can
2578
2732
  * be found in the files where the functions are located.
2579
2733
  */
2580
2734
 
2581
- #if defined(PNG_INTERNAL)
2582
2735
 
2583
- /* Various modes of operation. Note that after an init, mode is set to
2584
- * zero automatically when the structure is created.
2736
+ /* Various modes of operation, that are visible to applications because
2737
+ * they are used for unknown chunk location.
2585
2738
  */
2586
2739
  #define PNG_HAVE_IHDR 0x01
2587
2740
  #define PNG_HAVE_PLTE 0x02
2588
2741
  #define PNG_HAVE_IDAT 0x04
2589
- #define PNG_AFTER_IDAT 0x08
2742
+ #define PNG_AFTER_IDAT 0x08 /* Have complete zlib datastream */
2590
2743
  #define PNG_HAVE_IEND 0x10
2744
+
2745
+ #if defined(PNG_INTERNAL)
2746
+
2747
+ /* More modes of operation. Note that after an init, mode is set to
2748
+ * zero automatically when the structure is created.
2749
+ */
2591
2750
  #define PNG_HAVE_gAMA 0x20
2592
2751
  #define PNG_HAVE_cHRM 0x40
2593
2752
  #define PNG_HAVE_sRGB 0x80
@@ -2596,6 +2755,7 @@ extern PNG_EXPORT(png_uint_32,png_get_user_height_max) PNGARG((png_structp
2596
2755
  #define PNG_WROTE_INFO_BEFORE_PLTE 0x400
2597
2756
  #define PNG_BACKGROUND_IS_GRAY 0x800
2598
2757
  #define PNG_HAVE_PNG_SIGNATURE 0x1000
2758
+ #define PNG_HAVE_CHUNK_AFTER_IDAT 0x2000 /* Have another chunk after IDAT */
2599
2759
 
2600
2760
  /* flags for the transformations the PNG library does on the image data */
2601
2761
  #define PNG_BGR 0x0001
@@ -2624,7 +2784,7 @@ extern PNG_EXPORT(png_uint_32,png_get_user_height_max) PNGARG((png_structp
2624
2784
  #define PNG_RGB_TO_GRAY 0x600000L /* two bits, RGB_TO_GRAY_ERR|WARN */
2625
2785
  /* 0x800000L Unused */
2626
2786
  #define PNG_ADD_ALPHA 0x1000000L /* Added to libpng-1.2.7 */
2627
- /* 0x2000000L unused */
2787
+ #define PNG_EXPAND_tRNS 0x2000000L /* Added to libpng-1.2.9 */
2628
2788
  /* 0x4000000L unused */
2629
2789
  /* 0x8000000L unused */
2630
2790
  /* 0x10000000L unused */
@@ -2706,9 +2866,8 @@ extern PNG_EXPORT(png_uint_32,png_get_user_height_max) PNGARG((png_structp
2706
2866
  #if !defined(PNG_NO_EXTERN) || defined(PNG_ALWAYS_EXTERN)
2707
2867
  /* place to hold the signature string for a PNG file. */
2708
2868
  #ifdef PNG_USE_GLOBAL_ARRAYS
2709
- PNG_EXPORT_VAR (const png_byte FARDATA) png_sig[8];
2869
+ PNG_EXPORT_VAR (PNG_CONST png_byte FARDATA) png_sig[8];
2710
2870
  #else
2711
- #define png_sig png_sig_bytes(NULL)
2712
2871
  #endif
2713
2872
  #endif /* PNG_NO_EXTERN */
2714
2873
 
@@ -2716,77 +2875,53 @@ extern PNG_EXPORT(png_uint_32,png_get_user_height_max) PNGARG((png_structp
2716
2875
  * define the name here, and add an invocation of the macro in png.c and
2717
2876
  * wherever it's needed.
2718
2877
  */
2719
- #define PNG_IHDR const png_byte png_IHDR[5] = { 73, 72, 68, 82, '\0'}
2720
- #define PNG_IDAT const png_byte png_IDAT[5] = { 73, 68, 65, 84, '\0'}
2721
- #define PNG_IEND const png_byte png_IEND[5] = { 73, 69, 78, 68, '\0'}
2722
- #define PNG_PLTE const png_byte png_PLTE[5] = { 80, 76, 84, 69, '\0'}
2723
- #define PNG_bKGD const png_byte png_bKGD[5] = { 98, 75, 71, 68, '\0'}
2724
- #define PNG_cHRM const png_byte png_cHRM[5] = { 99, 72, 82, 77, '\0'}
2725
- #define PNG_gAMA const png_byte png_gAMA[5] = {103, 65, 77, 65, '\0'}
2726
- #define PNG_hIST const png_byte png_hIST[5] = {104, 73, 83, 84, '\0'}
2727
- #define PNG_iCCP const png_byte png_iCCP[5] = {105, 67, 67, 80, '\0'}
2728
- #define PNG_iTXt const png_byte png_iTXt[5] = {105, 84, 88, 116, '\0'}
2729
- #define PNG_oFFs const png_byte png_oFFs[5] = {111, 70, 70, 115, '\0'}
2730
- #define PNG_pCAL const png_byte png_pCAL[5] = {112, 67, 65, 76, '\0'}
2731
- #define PNG_sCAL const png_byte png_sCAL[5] = {115, 67, 65, 76, '\0'}
2732
- #define PNG_pHYs const png_byte png_pHYs[5] = {112, 72, 89, 115, '\0'}
2733
- #define PNG_sBIT const png_byte png_sBIT[5] = {115, 66, 73, 84, '\0'}
2734
- #define PNG_sPLT const png_byte png_sPLT[5] = {115, 80, 76, 84, '\0'}
2735
- #define PNG_sRGB const png_byte png_sRGB[5] = {115, 82, 71, 66, '\0'}
2736
- #define PNG_tEXt const png_byte png_tEXt[5] = {116, 69, 88, 116, '\0'}
2737
- #define PNG_tIME const png_byte png_tIME[5] = {116, 73, 77, 69, '\0'}
2738
- #define PNG_tRNS const png_byte png_tRNS[5] = {116, 82, 78, 83, '\0'}
2739
- #define PNG_zTXt const png_byte png_zTXt[5] = {122, 84, 88, 116, '\0'}
2878
+ #define PNG_IHDR png_byte png_IHDR[5] = { 73, 72, 68, 82, '\0'}
2879
+ #define PNG_IDAT png_byte png_IDAT[5] = { 73, 68, 65, 84, '\0'}
2880
+ #define PNG_IEND png_byte png_IEND[5] = { 73, 69, 78, 68, '\0'}
2881
+ #define PNG_PLTE png_byte png_PLTE[5] = { 80, 76, 84, 69, '\0'}
2882
+ #define PNG_bKGD png_byte png_bKGD[5] = { 98, 75, 71, 68, '\0'}
2883
+ #define PNG_cHRM png_byte png_cHRM[5] = { 99, 72, 82, 77, '\0'}
2884
+ #define PNG_gAMA png_byte png_gAMA[5] = {103, 65, 77, 65, '\0'}
2885
+ #define PNG_hIST png_byte png_hIST[5] = {104, 73, 83, 84, '\0'}
2886
+ #define PNG_iCCP png_byte png_iCCP[5] = {105, 67, 67, 80, '\0'}
2887
+ #define PNG_iTXt png_byte png_iTXt[5] = {105, 84, 88, 116, '\0'}
2888
+ #define PNG_oFFs png_byte png_oFFs[5] = {111, 70, 70, 115, '\0'}
2889
+ #define PNG_pCAL png_byte png_pCAL[5] = {112, 67, 65, 76, '\0'}
2890
+ #define PNG_sCAL png_byte png_sCAL[5] = {115, 67, 65, 76, '\0'}
2891
+ #define PNG_pHYs png_byte png_pHYs[5] = {112, 72, 89, 115, '\0'}
2892
+ #define PNG_sBIT png_byte png_sBIT[5] = {115, 66, 73, 84, '\0'}
2893
+ #define PNG_sPLT png_byte png_sPLT[5] = {115, 80, 76, 84, '\0'}
2894
+ #define PNG_sRGB png_byte png_sRGB[5] = {115, 82, 71, 66, '\0'}
2895
+ #define PNG_tEXt png_byte png_tEXt[5] = {116, 69, 88, 116, '\0'}
2896
+ #define PNG_tIME png_byte png_tIME[5] = {116, 73, 77, 69, '\0'}
2897
+ #define PNG_tRNS png_byte png_tRNS[5] = {116, 82, 78, 83, '\0'}
2898
+ #define PNG_zTXt png_byte png_zTXt[5] = {122, 84, 88, 116, '\0'}
2740
2899
 
2741
2900
  #ifdef PNG_USE_GLOBAL_ARRAYS
2742
- PNG_EXPORT_VAR (const png_byte FARDATA) png_IHDR[5];
2743
- PNG_EXPORT_VAR (const png_byte FARDATA) png_IDAT[5];
2744
- PNG_EXPORT_VAR (const png_byte FARDATA) png_IEND[5];
2745
- PNG_EXPORT_VAR (const png_byte FARDATA) png_PLTE[5];
2746
- PNG_EXPORT_VAR (const png_byte FARDATA) png_bKGD[5];
2747
- PNG_EXPORT_VAR (const png_byte FARDATA) png_cHRM[5];
2748
- PNG_EXPORT_VAR (const png_byte FARDATA) png_gAMA[5];
2749
- PNG_EXPORT_VAR (const png_byte FARDATA) png_hIST[5];
2750
- PNG_EXPORT_VAR (const png_byte FARDATA) png_iCCP[5];
2751
- PNG_EXPORT_VAR (const png_byte FARDATA) png_iTXt[5];
2752
- PNG_EXPORT_VAR (const png_byte FARDATA) png_oFFs[5];
2753
- PNG_EXPORT_VAR (const png_byte FARDATA) png_pCAL[5];
2754
- PNG_EXPORT_VAR (const png_byte FARDATA) png_sCAL[5];
2755
- PNG_EXPORT_VAR (const png_byte FARDATA) png_pHYs[5];
2756
- PNG_EXPORT_VAR (const png_byte FARDATA) png_sBIT[5];
2757
- PNG_EXPORT_VAR (const png_byte FARDATA) png_sPLT[5];
2758
- PNG_EXPORT_VAR (const png_byte FARDATA) png_sRGB[5];
2759
- PNG_EXPORT_VAR (const png_byte FARDATA) png_tEXt[5];
2760
- PNG_EXPORT_VAR (const png_byte FARDATA) png_tIME[5];
2761
- PNG_EXPORT_VAR (const png_byte FARDATA) png_tRNS[5];
2762
- PNG_EXPORT_VAR (const png_byte FARDATA) png_zTXt[5];
2901
+ PNG_EXPORT_VAR (png_byte FARDATA) png_IHDR[5];
2902
+ PNG_EXPORT_VAR (png_byte FARDATA) png_IDAT[5];
2903
+ PNG_EXPORT_VAR (png_byte FARDATA) png_IEND[5];
2904
+ PNG_EXPORT_VAR (png_byte FARDATA) png_PLTE[5];
2905
+ PNG_EXPORT_VAR (png_byte FARDATA) png_bKGD[5];
2906
+ PNG_EXPORT_VAR (png_byte FARDATA) png_cHRM[5];
2907
+ PNG_EXPORT_VAR (png_byte FARDATA) png_gAMA[5];
2908
+ PNG_EXPORT_VAR (png_byte FARDATA) png_hIST[5];
2909
+ PNG_EXPORT_VAR (png_byte FARDATA) png_iCCP[5];
2910
+ PNG_EXPORT_VAR (png_byte FARDATA) png_iTXt[5];
2911
+ PNG_EXPORT_VAR (png_byte FARDATA) png_oFFs[5];
2912
+ PNG_EXPORT_VAR (png_byte FARDATA) png_pCAL[5];
2913
+ PNG_EXPORT_VAR (png_byte FARDATA) png_sCAL[5];
2914
+ PNG_EXPORT_VAR (png_byte FARDATA) png_pHYs[5];
2915
+ PNG_EXPORT_VAR (png_byte FARDATA) png_sBIT[5];
2916
+ PNG_EXPORT_VAR (png_byte FARDATA) png_sPLT[5];
2917
+ PNG_EXPORT_VAR (png_byte FARDATA) png_sRGB[5];
2918
+ PNG_EXPORT_VAR (png_byte FARDATA) png_tEXt[5];
2919
+ PNG_EXPORT_VAR (png_byte FARDATA) png_tIME[5];
2920
+ PNG_EXPORT_VAR (png_byte FARDATA) png_tRNS[5];
2921
+ PNG_EXPORT_VAR (png_byte FARDATA) png_zTXt[5];
2763
2922
  #endif /* PNG_USE_GLOBAL_ARRAYS */
2764
2923
 
2765
-
2766
- /* Inline macros to do direct reads of bytes from the input buffer. These
2767
- * require that you are using an architecture that uses PNG byte ordering
2768
- * (MSB first) and supports unaligned data storage. I think that PowerPC
2769
- * in big-endian mode and 680x0 are the only ones that will support this.
2770
- * The x86 line of processors definitely do not. The png_get_int_32()
2771
- * routine also assumes we are using two's complement format for negative
2772
- * values, which is almost certainly true.
2773
- */
2774
- #if defined(PNG_READ_BIG_ENDIAN_SUPPORTED)
2775
- # if defined(PNG_pCAL_SUPPORTED) || defined(PNG_oFFs_SUPPORTED)
2776
- # define png_get_int_32(buf) ( *((png_int_32p) (buf)))
2777
- # endif
2778
- # define png_get_uint_32(buf) ( *((png_uint_32p) (buf)))
2779
- # define png_get_uint_16(buf) ( *((png_uint_16p) (buf)))
2780
- #else
2781
- # if defined(PNG_pCAL_SUPPORTED) || defined(PNG_oFFs_SUPPORTED)
2782
- PNG_EXTERN png_int_32 png_get_int_32 PNGARG((png_bytep buf));
2783
- # endif
2784
- PNG_EXTERN png_uint_32 png_get_uint_32 PNGARG((png_bytep buf));
2785
- PNG_EXTERN png_uint_16 png_get_uint_16 PNGARG((png_bytep buf));
2786
- #endif /* !PNG_READ_BIG_ENDIAN_SUPPORTED */
2787
- PNG_EXTERN png_uint_32 png_get_uint_31 PNGARG((png_structp png_ptr,
2788
- png_bytep buf));
2789
-
2924
+ #if defined(PNG_1_0_X) || defined (PNG_1_2_X)
2790
2925
  /* Initialize png_ptr struct for reading, and allocate any other memory.
2791
2926
  * (old interface - DEPRECATED - use png_create_read_struct instead).
2792
2927
  */
@@ -2794,12 +2929,17 @@ extern PNG_EXPORT(void,png_read_init) PNGARG((png_structp png_ptr));
2794
2929
  #undef png_read_init
2795
2930
  #define png_read_init(png_ptr) png_read_init_3(&png_ptr, \
2796
2931
  PNG_LIBPNG_VER_STRING, png_sizeof(png_struct));
2932
+ #endif
2933
+
2797
2934
  extern PNG_EXPORT(void,png_read_init_3) PNGARG((png_structpp ptr_ptr,
2798
2935
  png_const_charp user_png_ver, png_size_t png_struct_size));
2936
+ #if defined(PNG_1_0_X) || defined (PNG_1_2_X)
2799
2937
  extern PNG_EXPORT(void,png_read_init_2) PNGARG((png_structp png_ptr,
2800
2938
  png_const_charp user_png_ver, png_size_t png_struct_size, png_size_t
2801
2939
  png_info_size));
2940
+ #endif
2802
2941
 
2942
+ #if defined(PNG_1_0_X) || defined (PNG_1_2_X)
2803
2943
  /* Initialize png_ptr struct for writing, and allocate any other memory.
2804
2944
  * (old interface - DEPRECATED - use png_create_write_struct instead).
2805
2945
  */
@@ -2807,6 +2947,8 @@ extern PNG_EXPORT(void,png_write_init) PNGARG((png_structp png_ptr));
2807
2947
  #undef png_write_init
2808
2948
  #define png_write_init(png_ptr) png_write_init_3(&png_ptr, \
2809
2949
  PNG_LIBPNG_VER_STRING, png_sizeof(png_struct));
2950
+ #endif
2951
+
2810
2952
  extern PNG_EXPORT(void,png_write_init_3) PNGARG((png_structpp ptr_ptr,
2811
2953
  png_const_charp user_png_ver, png_size_t png_struct_size));
2812
2954
  extern PNG_EXPORT(void,png_write_init_2) PNGARG((png_structp png_ptr,
@@ -2906,23 +3048,6 @@ PNG_EXTERN void png_calculate_crc PNGARG((png_structp png_ptr, png_bytep ptr,
2906
3048
  PNG_EXTERN void png_flush PNGARG((png_structp png_ptr));
2907
3049
  #endif
2908
3050
 
2909
-
2910
- /* Place a 32-bit number into a buffer in PNG byte order (big-endian).
2911
- * The only currently known PNG chunks that use signed numbers are
2912
- * the ancillary extension chunks, oFFs and pCAL.
2913
- */
2914
- PNG_EXTERN void png_save_uint_32 PNGARG((png_bytep buf, png_uint_32 i));
2915
-
2916
- #if defined(PNG_WRITE_pCAL_SUPPORTED) || defined(PNG_WRITE_oFFs_SUPPORTED)
2917
- PNG_EXTERN void png_save_int_32 PNGARG((png_bytep buf, png_int_32 i));
2918
- #endif
2919
-
2920
- /* Place a 16-bit number into a buffer in PNG byte order.
2921
- * The parameter is declared unsigned int, not png_uint_16,
2922
- * just to avoid potential problems on pre-ANSI C compilers.
2923
- */
2924
- PNG_EXTERN void png_save_uint_16 PNGARG((png_bytep buf, unsigned int i));
2925
-
2926
3051
  /* simple function to write the signature */
2927
3052
  PNG_EXTERN void png_write_sig PNGARG((png_structp png_ptr));
2928
3053
 
@@ -3403,9 +3528,34 @@ PNG_EXTERN void png_do_write_intrapixel PNGARG((png_row_infop row_info,
3403
3528
  #endif
3404
3529
 
3405
3530
  #if defined(PNG_ASSEMBLER_CODE_SUPPORTED)
3531
+ #if defined(PNG_MMX_CODE_SUPPORTED)
3406
3532
  /* png.c */ /* PRIVATE */
3407
3533
  PNG_EXTERN void png_init_mmx_flags PNGARG((png_structp png_ptr));
3408
3534
  #endif
3535
+ #endif
3536
+
3537
+ #if defined(PNG_INCH_CONVERSIONS) && defined(PNG_FLOATING_POINT_SUPPORTED)
3538
+ PNG_EXTERN png_uint_32 png_get_pixels_per_inch PNGARG((png_structp png_ptr,
3539
+ png_infop info_ptr));
3540
+
3541
+ PNG_EXTERN png_uint_32 png_get_x_pixels_per_inch PNGARG((png_structp png_ptr,
3542
+ png_infop info_ptr));
3543
+
3544
+ PNG_EXTERN png_uint_32 png_get_y_pixels_per_inch PNGARG((png_structp png_ptr,
3545
+ png_infop info_ptr));
3546
+
3547
+ PNG_EXTERN float png_get_x_offset_inches PNGARG((png_structp png_ptr,
3548
+ png_infop info_ptr));
3549
+
3550
+ PNG_EXTERN float png_get_y_offset_inches PNGARG((png_structp png_ptr,
3551
+ png_infop info_ptr));
3552
+
3553
+ #if defined(PNG_pHYs_SUPPORTED)
3554
+ PNG_EXTERN png_uint_32 png_get_pHYs_dpi PNGARG((png_structp png_ptr,
3555
+ png_infop info_ptr, png_uint_32 *res_x, png_uint_32 *res_y, int *unit_type));
3556
+ #endif /* PNG_pHYs_SUPPORTED */
3557
+ #endif /* PNG_INCH_CONVERSIONS && PNG_FLOATING_POINT_SUPPORTED */
3558
+
3409
3559
  /* Maintainer: Put new private prototypes here ^ and in libpngpf.3 */
3410
3560
 
3411
3561
  #endif /* PNG_INTERNAL */