rmagick 2.13.2 → 4.2.2

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

Potentially problematic release.


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

Files changed (380) hide show
  1. checksums.yaml +7 -0
  2. data/.codeclimate.yml +63 -0
  3. data/.editorconfig +17 -0
  4. data/.github/ISSUE_TEMPLATE.md +17 -0
  5. data/.github/workflows/ci.yml +107 -0
  6. data/.gitignore +25 -0
  7. data/.rspec +2 -0
  8. data/.rubocop.yml +37 -0
  9. data/.rubocop_todo.yml +449 -0
  10. data/.yardopts +5 -0
  11. data/CHANGELOG.md +1277 -0
  12. data/CODE_OF_CONDUCT.md +128 -0
  13. data/CONTRIBUTING.md +81 -0
  14. data/Gemfile +4 -0
  15. data/LICENSE +20 -0
  16. data/README.md +324 -0
  17. data/Rakefile +190 -0
  18. data/before_install_linux.sh +69 -0
  19. data/before_install_osx.sh +57 -0
  20. data/deprecated/RMagick.rb +6 -0
  21. data/ext/RMagick/extconf.rb +334 -333
  22. data/ext/RMagick/rmagick.c +129 -127
  23. data/ext/RMagick/rmagick.h +221 -320
  24. data/ext/RMagick/rmdraw.c +458 -767
  25. data/ext/RMagick/rmenum.c +305 -752
  26. data/ext/RMagick/rmfill.c +231 -199
  27. data/ext/RMagick/rmilist.c +437 -478
  28. data/ext/RMagick/rmimage.c +6130 -5342
  29. data/ext/RMagick/rminfo.c +695 -833
  30. data/ext/RMagick/rmkinfo.c +198 -0
  31. data/ext/RMagick/rmmain.c +752 -506
  32. data/ext/RMagick/rmmontage.c +94 -152
  33. data/ext/RMagick/rmpixel.c +619 -425
  34. data/ext/RMagick/rmstruct.c +206 -309
  35. data/ext/RMagick/rmutil.c +514 -344
  36. data/lib/rmagick/version.rb +5 -0
  37. data/lib/rmagick.rb +1 -0
  38. data/lib/rmagick_internal.rb +1922 -0
  39. data/lib/rvg/clippath.rb +35 -39
  40. data/lib/rvg/container.rb +123 -124
  41. data/lib/rvg/deep_equal.rb +45 -49
  42. data/lib/rvg/describable.rb +41 -47
  43. data/lib/rvg/embellishable.rb +380 -411
  44. data/lib/rvg/misc.rb +691 -711
  45. data/lib/rvg/paint.rb +43 -47
  46. data/lib/rvg/pathdata.rb +119 -125
  47. data/lib/rvg/rvg.rb +214 -213
  48. data/lib/rvg/stretchable.rb +153 -162
  49. data/lib/rvg/stylable.rb +111 -117
  50. data/lib/rvg/text.rb +169 -180
  51. data/lib/rvg/transformable.rb +121 -127
  52. data/lib/rvg/units.rb +58 -61
  53. data/rmagick.gemspec +36 -16
  54. metadata +188 -365
  55. data/ChangeLog +0 -773
  56. data/Doxyfile +0 -1514
  57. data/README-Mac-OSX.txt +0 -1
  58. data/README.html +0 -10
  59. data/build_tarball.rake +0 -215
  60. data/doc/comtasks.html +0 -287
  61. data/doc/constants.html +0 -1581
  62. data/doc/css/doc.css +0 -299
  63. data/doc/css/popup.css +0 -34
  64. data/doc/css/ref.css +0 -67
  65. data/doc/draw.html +0 -3269
  66. data/doc/ex/InitialCoords.rb +0 -23
  67. data/doc/ex/NewCoordSys.rb +0 -32
  68. data/doc/ex/OrigCoordSys.rb +0 -18
  69. data/doc/ex/PreserveAspectRatio.rb +0 -205
  70. data/doc/ex/RotateScale.rb +0 -37
  71. data/doc/ex/Skew.rb +0 -38
  72. data/doc/ex/Use01.rb +0 -16
  73. data/doc/ex/Use02.rb +0 -21
  74. data/doc/ex/Use03.rb +0 -16
  75. data/doc/ex/ViewBox.rb +0 -33
  76. data/doc/ex/adaptive_threshold.rb +0 -10
  77. data/doc/ex/add_noise.rb +0 -17
  78. data/doc/ex/affine.rb +0 -48
  79. data/doc/ex/affine_transform.rb +0 -20
  80. data/doc/ex/arc.rb +0 -49
  81. data/doc/ex/arcpath.rb +0 -33
  82. data/doc/ex/arcs01.rb +0 -28
  83. data/doc/ex/arcs02.rb +0 -61
  84. data/doc/ex/average.rb +0 -15
  85. data/doc/ex/axes.rb +0 -64
  86. data/doc/ex/baseline_shift01.rb +0 -18
  87. data/doc/ex/bilevel_channel.rb +0 -9
  88. data/doc/ex/blur_image.rb +0 -12
  89. data/doc/ex/border.rb +0 -10
  90. data/doc/ex/bounding_box.rb +0 -44
  91. data/doc/ex/cbezier1.rb +0 -42
  92. data/doc/ex/cbezier2.rb +0 -42
  93. data/doc/ex/cbezier3.rb +0 -42
  94. data/doc/ex/cbezier4.rb +0 -43
  95. data/doc/ex/cbezier5.rb +0 -43
  96. data/doc/ex/cbezier6.rb +0 -53
  97. data/doc/ex/channel.rb +0 -26
  98. data/doc/ex/charcoal.rb +0 -12
  99. data/doc/ex/chop.rb +0 -29
  100. data/doc/ex/circle.rb +0 -33
  101. data/doc/ex/circle01.rb +0 -17
  102. data/doc/ex/clip_path.rb +0 -60
  103. data/doc/ex/coalesce.rb +0 -60
  104. data/doc/ex/color_fill_to_border.rb +0 -29
  105. data/doc/ex/color_floodfill.rb +0 -28
  106. data/doc/ex/color_histogram.rb +0 -48
  107. data/doc/ex/color_reset.rb +0 -11
  108. data/doc/ex/colorize.rb +0 -16
  109. data/doc/ex/colors.rb +0 -64
  110. data/doc/ex/compose_mask.rb +0 -23
  111. data/doc/ex/composite.rb +0 -135
  112. data/doc/ex/composite_layers.rb +0 -53
  113. data/doc/ex/composite_tiled.rb +0 -23
  114. data/doc/ex/contrast.rb +0 -36
  115. data/doc/ex/crop.rb +0 -31
  116. data/doc/ex/crop_with_gravity.rb +0 -46
  117. data/doc/ex/cubic01.rb +0 -45
  118. data/doc/ex/cubic02.rb +0 -94
  119. data/doc/ex/cycle_colormap.rb +0 -21
  120. data/doc/ex/dissolve.rb +0 -13
  121. data/doc/ex/drawcomp.rb +0 -42
  122. data/doc/ex/drop_shadow.rb +0 -60
  123. data/doc/ex/edge.rb +0 -11
  124. data/doc/ex/ellipse.rb +0 -45
  125. data/doc/ex/ellipse01.rb +0 -22
  126. data/doc/ex/emboss.rb +0 -11
  127. data/doc/ex/enhance.rb +0 -28
  128. data/doc/ex/equalize.rb +0 -11
  129. data/doc/ex/evenodd.rb +0 -43
  130. data/doc/ex/fill_pattern.rb +0 -26
  131. data/doc/ex/flatten_images.rb +0 -36
  132. data/doc/ex/flip.rb +0 -11
  133. data/doc/ex/flop.rb +0 -11
  134. data/doc/ex/font_styles.rb +0 -34
  135. data/doc/ex/fonts.rb +0 -20
  136. data/doc/ex/frame.rb +0 -12
  137. data/doc/ex/gaussian_blur.rb +0 -11
  138. data/doc/ex/get_multiline_type_metrics.rb +0 -42
  139. data/doc/ex/get_pixels.rb +0 -48
  140. data/doc/ex/get_type_metrics.rb +0 -146
  141. data/doc/ex/gradientfill.rb +0 -27
  142. data/doc/ex/grav.rb +0 -46
  143. data/doc/ex/gravity.rb +0 -79
  144. data/doc/ex/group.rb +0 -26
  145. data/doc/ex/hatchfill.rb +0 -27
  146. data/doc/ex/image.rb +0 -46
  147. data/doc/ex/images/Apple.miff +0 -0
  148. data/doc/ex/images/Ballerina.jpg +0 -0
  149. data/doc/ex/images/Ballerina3.jpg +0 -0
  150. data/doc/ex/images/Button_0.gif +0 -0
  151. data/doc/ex/images/Button_1.gif +0 -0
  152. data/doc/ex/images/Button_2.gif +0 -0
  153. data/doc/ex/images/Button_3.gif +0 -0
  154. data/doc/ex/images/Button_4.gif +0 -0
  155. data/doc/ex/images/Button_5.gif +0 -0
  156. data/doc/ex/images/Button_6.gif +0 -0
  157. data/doc/ex/images/Button_7.gif +0 -0
  158. data/doc/ex/images/Button_8.gif +0 -0
  159. data/doc/ex/images/Button_9.gif +0 -0
  160. data/doc/ex/images/Button_A.gif +0 -0
  161. data/doc/ex/images/Button_B.gif +0 -0
  162. data/doc/ex/images/Button_C.gif +0 -0
  163. data/doc/ex/images/Button_D.gif +0 -0
  164. data/doc/ex/images/Button_E.gif +0 -0
  165. data/doc/ex/images/Button_F.gif +0 -0
  166. data/doc/ex/images/Button_G.gif +0 -0
  167. data/doc/ex/images/Button_H.gif +0 -0
  168. data/doc/ex/images/Button_I.gif +0 -0
  169. data/doc/ex/images/Button_J.gif +0 -0
  170. data/doc/ex/images/Button_K.gif +0 -0
  171. data/doc/ex/images/Button_L.gif +0 -0
  172. data/doc/ex/images/Button_M.gif +0 -0
  173. data/doc/ex/images/Button_N.gif +0 -0
  174. data/doc/ex/images/Button_O.gif +0 -0
  175. data/doc/ex/images/Button_P.gif +0 -0
  176. data/doc/ex/images/Button_Q.gif +0 -0
  177. data/doc/ex/images/Button_R.gif +0 -0
  178. data/doc/ex/images/Button_S.gif +0 -0
  179. data/doc/ex/images/Button_T.gif +0 -0
  180. data/doc/ex/images/Button_U.gif +0 -0
  181. data/doc/ex/images/Button_V.gif +0 -0
  182. data/doc/ex/images/Button_W.gif +0 -0
  183. data/doc/ex/images/Button_X.gif +0 -0
  184. data/doc/ex/images/Button_Y.gif +0 -0
  185. data/doc/ex/images/Button_Z.gif +0 -0
  186. data/doc/ex/images/Cheetah.jpg +0 -0
  187. data/doc/ex/images/Coffee.wmf +0 -0
  188. data/doc/ex/images/Flower_Hat.jpg +0 -0
  189. data/doc/ex/images/Gold_Statue.jpg +0 -0
  190. data/doc/ex/images/Hot_Air_Balloons.jpg +0 -0
  191. data/doc/ex/images/Hot_Air_Balloons_H.jpg +0 -0
  192. data/doc/ex/images/Leaf.miff +0 -0
  193. data/doc/ex/images/No.wmf +0 -0
  194. data/doc/ex/images/Polynesia.jpg +0 -0
  195. data/doc/ex/images/Red_Rocks.jpg +0 -0
  196. data/doc/ex/images/Rocks_On_Beach.miff +0 -0
  197. data/doc/ex/images/Shorts.jpg +0 -0
  198. data/doc/ex/images/Snake.wmf +0 -0
  199. data/doc/ex/images/Violin.jpg +0 -0
  200. data/doc/ex/images/Yellow_Rose.miff +0 -0
  201. data/doc/ex/images/big-duck.gif +0 -0
  202. data/doc/ex/images/duck.gif +0 -0
  203. data/doc/ex/images/duck0.gif +0 -0
  204. data/doc/ex/images/duck1.gif +0 -0
  205. data/doc/ex/images/duck10.gif +0 -0
  206. data/doc/ex/images/duck11.gif +0 -0
  207. data/doc/ex/images/duck12.gif +0 -0
  208. data/doc/ex/images/duck13.gif +0 -0
  209. data/doc/ex/images/duck14.gif +0 -0
  210. data/doc/ex/images/duck15.gif +0 -0
  211. data/doc/ex/images/duck2.gif +0 -0
  212. data/doc/ex/images/duck3.gif +0 -0
  213. data/doc/ex/images/duck4.gif +0 -0
  214. data/doc/ex/images/duck5.gif +0 -0
  215. data/doc/ex/images/duck6.gif +0 -0
  216. data/doc/ex/images/duck7.gif +0 -0
  217. data/doc/ex/images/duck8.gif +0 -0
  218. data/doc/ex/images/duck9.gif +0 -0
  219. data/doc/ex/images/graydient230x6.gif +0 -0
  220. data/doc/ex/images/logo400x83.gif +0 -0
  221. data/doc/ex/images/model.miff +0 -0
  222. data/doc/ex/images/notimplemented.gif +0 -0
  223. data/doc/ex/images/smile.miff +0 -0
  224. data/doc/ex/images/spin.gif +0 -0
  225. data/doc/ex/implode.rb +0 -34
  226. data/doc/ex/level.rb +0 -11
  227. data/doc/ex/level_colors.rb +0 -11
  228. data/doc/ex/line.rb +0 -42
  229. data/doc/ex/line01.rb +0 -23
  230. data/doc/ex/mask.rb +0 -36
  231. data/doc/ex/matte_fill_to_border.rb +0 -40
  232. data/doc/ex/matte_floodfill.rb +0 -33
  233. data/doc/ex/matte_replace.rb +0 -40
  234. data/doc/ex/median_filter.rb +0 -28
  235. data/doc/ex/modulate.rb +0 -11
  236. data/doc/ex/mono.rb +0 -23
  237. data/doc/ex/morph.rb +0 -26
  238. data/doc/ex/mosaic.rb +0 -35
  239. data/doc/ex/motion_blur.rb +0 -11
  240. data/doc/ex/negate.rb +0 -11
  241. data/doc/ex/negate_channel.rb +0 -9
  242. data/doc/ex/nested_rvg.rb +0 -21
  243. data/doc/ex/nonzero.rb +0 -43
  244. data/doc/ex/normalize.rb +0 -11
  245. data/doc/ex/oil_paint.rb +0 -11
  246. data/doc/ex/opacity.rb +0 -37
  247. data/doc/ex/ordered_dither.rb +0 -11
  248. data/doc/ex/path.rb +0 -64
  249. data/doc/ex/pattern1.rb +0 -25
  250. data/doc/ex/pattern2.rb +0 -26
  251. data/doc/ex/polaroid.rb +0 -28
  252. data/doc/ex/polygon.rb +0 -24
  253. data/doc/ex/polygon01.rb +0 -23
  254. data/doc/ex/polyline.rb +0 -23
  255. data/doc/ex/polyline01.rb +0 -23
  256. data/doc/ex/posterize.rb +0 -8
  257. data/doc/ex/preview.rb +0 -9
  258. data/doc/ex/qbezierpath.rb +0 -52
  259. data/doc/ex/quad01.rb +0 -36
  260. data/doc/ex/quantize-m.rb +0 -25
  261. data/doc/ex/radial_blur.rb +0 -9
  262. data/doc/ex/raise.rb +0 -8
  263. data/doc/ex/random_threshold_channel.rb +0 -13
  264. data/doc/ex/rect01.rb +0 -15
  265. data/doc/ex/rect02.rb +0 -22
  266. data/doc/ex/rectangle.rb +0 -35
  267. data/doc/ex/reduce_noise.rb +0 -28
  268. data/doc/ex/remap.rb +0 -12
  269. data/doc/ex/remap_images.rb +0 -21
  270. data/doc/ex/resize_to_fill.rb +0 -10
  271. data/doc/ex/resize_to_fit.rb +0 -10
  272. data/doc/ex/roll.rb +0 -9
  273. data/doc/ex/rotate.rb +0 -45
  274. data/doc/ex/rotate_f.rb +0 -14
  275. data/doc/ex/roundrect.rb +0 -34
  276. data/doc/ex/rubyname.rb +0 -30
  277. data/doc/ex/rvg_clippath.rb +0 -14
  278. data/doc/ex/rvg_linecap.rb +0 -43
  279. data/doc/ex/rvg_linejoin.rb +0 -41
  280. data/doc/ex/rvg_opacity.rb +0 -19
  281. data/doc/ex/rvg_pattern.rb +0 -26
  282. data/doc/ex/rvg_stroke_dasharray.rb +0 -12
  283. data/doc/ex/segment.rb +0 -11
  284. data/doc/ex/sepiatone.rb +0 -8
  285. data/doc/ex/shade.rb +0 -11
  286. data/doc/ex/shadow.rb +0 -31
  287. data/doc/ex/shave.rb +0 -15
  288. data/doc/ex/shear.rb +0 -10
  289. data/doc/ex/sketch.rb +0 -18
  290. data/doc/ex/skewx.rb +0 -52
  291. data/doc/ex/skewy.rb +0 -47
  292. data/doc/ex/smile.rb +0 -125
  293. data/doc/ex/solarize.rb +0 -11
  294. data/doc/ex/sparse_color.rb +0 -55
  295. data/doc/ex/splice.rb +0 -9
  296. data/doc/ex/spread.rb +0 -11
  297. data/doc/ex/stegano.rb +0 -55
  298. data/doc/ex/stroke_dasharray.rb +0 -43
  299. data/doc/ex/stroke_fill.rb +0 -11
  300. data/doc/ex/stroke_linecap.rb +0 -44
  301. data/doc/ex/stroke_linejoin.rb +0 -48
  302. data/doc/ex/stroke_width.rb +0 -49
  303. data/doc/ex/swirl.rb +0 -17
  304. data/doc/ex/text.rb +0 -37
  305. data/doc/ex/text01.rb +0 -17
  306. data/doc/ex/text_align.rb +0 -36
  307. data/doc/ex/text_antialias.rb +0 -38
  308. data/doc/ex/text_styles.rb +0 -21
  309. data/doc/ex/text_undercolor.rb +0 -28
  310. data/doc/ex/texture_fill_to_border.rb +0 -34
  311. data/doc/ex/texture_floodfill.rb +0 -32
  312. data/doc/ex/texturefill.rb +0 -25
  313. data/doc/ex/threshold.rb +0 -13
  314. data/doc/ex/to_blob.rb +0 -14
  315. data/doc/ex/translate.rb +0 -39
  316. data/doc/ex/transparent.rb +0 -38
  317. data/doc/ex/transpose.rb +0 -9
  318. data/doc/ex/transverse.rb +0 -9
  319. data/doc/ex/tref01.rb +0 -25
  320. data/doc/ex/triangle01.rb +0 -16
  321. data/doc/ex/trim.rb +0 -24
  322. data/doc/ex/tspan01.rb +0 -18
  323. data/doc/ex/tspan02.rb +0 -19
  324. data/doc/ex/tspan03.rb +0 -21
  325. data/doc/ex/unsharp_mask.rb +0 -28
  326. data/doc/ex/viewex.rb +0 -35
  327. data/doc/ex/vignette.rb +0 -12
  328. data/doc/ex/watermark.rb +0 -28
  329. data/doc/ex/wave.rb +0 -9
  330. data/doc/ex/wet_floor.rb +0 -59
  331. data/doc/ex/writing_mode01.rb +0 -27
  332. data/doc/ex/writing_mode02.rb +0 -26
  333. data/doc/ilist.html +0 -2056
  334. data/doc/image1.html +0 -4680
  335. data/doc/image2.html +0 -3665
  336. data/doc/image3.html +0 -4522
  337. data/doc/imageattrs.html +0 -1638
  338. data/doc/imusage.html +0 -514
  339. data/doc/index.html +0 -416
  340. data/doc/info.html +0 -1499
  341. data/doc/magick.html +0 -565
  342. data/doc/optequiv.html +0 -2435
  343. data/doc/rvg.html +0 -975
  344. data/doc/rvgclip.html +0 -248
  345. data/doc/rvggroup.html +0 -305
  346. data/doc/rvgimage.html +0 -289
  347. data/doc/rvgpattern.html +0 -475
  348. data/doc/rvgshape.html +0 -406
  349. data/doc/rvgstyle.html +0 -270
  350. data/doc/rvgtext.html +0 -465
  351. data/doc/rvgtspan.html +0 -238
  352. data/doc/rvgtut.html +0 -530
  353. data/doc/rvguse.html +0 -145
  354. data/doc/rvgxform.html +0 -294
  355. data/doc/scripts/doc.js +0 -22
  356. data/doc/scripts/stripeTables.js +0 -23
  357. data/doc/struct.html +0 -1339
  358. data/doc/usage.html +0 -1621
  359. data/examples/constitute.rb +0 -7
  360. data/examples/crop_with_gravity.rb +0 -46
  361. data/examples/demo.rb +0 -324
  362. data/examples/describe.rb +0 -44
  363. data/examples/find_similar_region.rb +0 -34
  364. data/examples/histogram.rb +0 -325
  365. data/examples/identify.rb +0 -187
  366. data/examples/image_opacity.rb +0 -29
  367. data/examples/import_export.rb +0 -31
  368. data/examples/pattern_fill.rb +0 -38
  369. data/examples/rotating_text.rb +0 -45
  370. data/examples/spinner.rb +0 -50
  371. data/examples/thumbnail.rb +0 -65
  372. data/examples/vignette.rb +0 -79
  373. data/ext/RMagick/MANIFEST +0 -358
  374. data/lib/RMagick.rb +0 -1962
  375. data/metaconfig +0 -7
  376. data/post-clean.rb +0 -12
  377. data/post-install.rb +0 -50
  378. data/post-setup.rb +0 -254
  379. data/setup.rb +0 -1585
  380. data/uninstall.rb +0 -76
data/doc/rvgpattern.html DELETED
@@ -1,475 +0,0 @@
1
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
2
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3
-
4
- <html xmlns="http://www.w3.org/1999/xhtml">
5
- <head>
6
- <meta name="generator" content=
7
- "HTML Tidy for Linux/x86 (vers 1 September 2005), see www.w3.org" />
8
-
9
- <title>RMagick 2.13.2: RVG Reference: RVG::Pattern Class</title>
10
- <meta http-equiv="Content-Type" content=
11
- "text/html; charset=us-ascii" />
12
- <meta name="GENERATOR" content="Quanta Plus" />
13
- <meta name="Copyright" content=
14
- "Copyright (C) 2006 by Timothy P. Hunter" />
15
- <link rel="stylesheet" type="text/css" href="css/doc.css" />
16
- <script type="text/javascript" src="scripts/doc.js">
17
- </script>
18
- <script type="text/javascript">
19
- //<![CDATA[
20
- //]]>
21
- </script>
22
- <style type="text/css">
23
- /*<![CDATA[*/
24
- }
25
- /*]]>*/
26
- </style>
27
- </head>
28
-
29
- <body>
30
- <h6 id="header">RMagick 2.13.2 User's Guide and Reference</h6>
31
-
32
- <div class="nav">
33
- &laquo;&nbsp;<a href="rvgimage.html">Prev</a> | <a href=
34
- "index.html">Contents</a> | <a href=
35
- "rvgclip.html">Next</a>&nbsp;&raquo;
36
- </div>
37
-
38
- <h1>class RVG::Pattern <span class="superclass">&lt;
39
- Object</span></h1>
40
-
41
- <div id="toc">
42
- <h2>Table of Contents</h2>
43
-
44
- <h3>class methods</h3>
45
-
46
- <ul>
47
- <li><a href="#new">new</a></li>
48
- </ul>
49
-
50
- <h3>instance methods</h3>
51
-
52
- <div>
53
- <div class="toccol">
54
- <ul>
55
- <li><a href="#g">g</a></li>
56
-
57
- <li><a href="#image">image</a></li>
58
-
59
- <li><a href=
60
- "#preserve_aspect_ratio">preserve_aspect_ratio</a></li>
61
- </ul>
62
- </div>
63
-
64
- <div class="toccol">
65
- <ul>
66
- <li><a href="#rvg">rvg</a></li>
67
-
68
- <li><a href="#RVG_text">text</a></li>
69
- </ul>
70
- </div>
71
-
72
- <div class="toccol">
73
- <ul>
74
- <li><a href="#RVG_use">use</a></li>
75
-
76
- <li><a href="#viewbox">viewbox</a></li>
77
- </ul>
78
- </div>
79
- </div>
80
-
81
- <h3>shared methods</h3>
82
-
83
- <p>In addition to the methods listed above, this class also
84
- implements the <a href="rvgstyle.html">styles</a> method, the
85
- <a href="rvgshape.html">shape methods</a> and the <a href=
86
- "rvgxform.html">transform methods</a>.</p>
87
- </div>
88
-
89
- <h2 class="methods">class methods</h2>
90
-
91
- <div class="sig">
92
- <h3 id="new">new</h3>
93
-
94
- <p>RVG::Pattern.new(<span class="arg">width</span>=0,
95
- <span class="arg">height</span>=0, <span class=
96
- "arg">x</span>=0, <span class="arg">y</span>=0) [ <span class=
97
- "arg">{ |pattern| drawing method calls }</span> ] -&gt;
98
- <em>pattern</em></p>
99
- </div>
100
-
101
- <div class="desc">
102
- <h4>Description</h4>
103
-
104
- <p>Creates a pattern that can be used with the
105
- <code>:fill</code> and <code>:stroke</code> styles.</p>
106
-
107
- <p>Define the pattern in the associated block. The pattern can
108
- be composed of <a href="rvgshape.html">shapes</a>, <a href=
109
- "rvgtext.html#new">text</a>, <a href="rvgimage.html#new">raster
110
- images</a>, <a href="rvggroup.html#new">groups</a>, and
111
- <a href="rvg.html#RVG_new">RVG objects</a>. You can use the
112
- <a href="rvguse.html#new">use</a> method to include graphic
113
- objects in the pattern.</p>
114
-
115
- <h4>Arguments</h4>
116
-
117
- <dl>
118
- <dt>width, height</dt>
119
-
120
- <dd>These arguments define the pattern viewport.</dd>
121
-
122
- <dt>x, y</dt>
123
-
124
- <dd>Specify the starting offset of the pattern. The pattern
125
- will be repeated at <span class=
126
- "arg">x</span><code>+m*width</code> and <span class=
127
- "arg">y</span><code>+n*height</code> offsets.</dd>
128
- </dl>
129
-
130
- <h4>Example</h4>
131
-
132
- <p><a href="javascript:popup('rvg_pattern.rb.html')"><img src=
133
- "ex/rvg_pattern.gif" title="Click to see the example script"
134
- alt="pattern example" /></a></p>
135
- </div>
136
-
137
- <h2 class="methods">instance methods</h2>
138
-
139
- <div class="sig">
140
- <h3 id='g'>g</h3>
141
-
142
- <p><span class="arg">pattern.</span>g [{|<span class=
143
- "arg">grp</span>| ...}] -&gt; <em>group</em></p>
144
- </div>
145
-
146
- <div class="desc">
147
- <h4>Description</h4>
148
-
149
- <p>Calls <a href="rvggroup.html#new">RVG::Group.new</a> to
150
- construct a group and adds it to the pattern. Yields to a block
151
- if one is present, passing the new group as an argument.</p>
152
-
153
- <h4>Returns</h4>
154
-
155
- <p>Returns the new group, so <code>RVG::Group</code> methods
156
- can be chained to this method.</p>
157
- </div>
158
-
159
- <div class="sig">
160
- <h3 id='image'>image</h3>
161
-
162
- <p><span class="arg">pattern.</span>image(<span class=
163
- "arg">raster_image</span>, <span class="arg">width</span>=nil,
164
- <span class="arg">height</span>=nil, <span class=
165
- "arg">x</span>=0, <span class="arg">y</span>=0) -&gt;
166
- <em>image</em></p>
167
- </div>
168
-
169
- <div class="desc">
170
- <h4>Description</h4>
171
-
172
- <p>Calls <a href="rvgimage.html#new">RVG::Image.new</a> to
173
- construct an image and adds it to the pattern.</p>
174
-
175
- <h4>Returns</h4>
176
-
177
- <p>Returns the new image, so <code>RVG::Image</code> methods
178
- can be chained to this method.</p>
179
- </div>
180
-
181
- <div class="sig">
182
- <h3 id='preserve_aspect_ratio'>preserve_aspect_ratio</h3>
183
-
184
- <p><span class=
185
- "arg">pattern</span>.preserve_aspect_ratio(<span class=
186
- "arg">align</span>, <span class=
187
- "arg">meet_or_slice</span>='meet') [{|<span class=
188
- "arg">self</span>| ...}] -&gt; <em>self</em></p>
189
- </div>
190
-
191
- <div class="desc">
192
- <h4>Description</h4>
193
-
194
- <p>If you use the <a href="#viewbox">viewbox</a> method and the
195
- user coordinate system does not scale uniformly to the default
196
- coordinate system, use the <code>preserve_aspect_ratio</code>
197
- method to specify whether or not the content is stretched to
198
- fit. If not, you can specify how to fit the content into the
199
- space.</p>
200
-
201
- <p><code>Preserve_aspect_ratio</code> yields to a block if one
202
- is present, passing <span class="arg">self</span> as an
203
- argument.</p>
204
-
205
- <h4>Arguments</h4>
206
-
207
- <dl>
208
- <dt>align</dt>
209
-
210
- <dd>
211
- When the value of the <code>meet_or_slice</code> argument
212
- is 'meet' or 'slice', this argument controls the placement
213
- of the content within the viewport. The <code>align</code>
214
- argument is the concatenation of an <em>x</em>-alignment and
215
- a <em>y</em>-alignment. The values are shown in these
216
- lists:
217
-
218
- <h6><em>x</em>-alignment</h6>
219
-
220
- <dl>
221
- <dt>xMin</dt>
222
-
223
- <dd>align the minimum <em>x</em> value of the content
224
- with the left corner of the viewport.</dd>
225
-
226
- <dt>xMid</dt>
227
-
228
- <dd>vertically center the content within the
229
- viewport.</dd>
230
-
231
- <dt>xMax</dt>
232
-
233
- <dd>align the maximum <em>x</em> value of the content
234
- with the right corner of the viewport.</dd>
235
- </dl>
236
-
237
- <h6><em>y</em>-alignment</h6>
238
-
239
- <dl>
240
- <dt>YMin</dt>
241
-
242
- <dd>align the minimum <em>y</em> value of the content
243
- with the top of the viewport.</dd>
244
-
245
- <dt>YMid</dt>
246
-
247
- <dd>horizontally center the content within the
248
- viewport.</dd>
249
-
250
- <dt>YMax</dt>
251
-
252
- <dd>align the maximum <em>y</em> value of the content
253
- with the bottom of the viewport</dd>
254
- </dl>
255
- </dd>
256
-
257
- <dt>meet_or_slice</dt>
258
-
259
- <dd>
260
- This argument can have one of these three values:
261
-
262
- <dl>
263
- <dt>'none'</dt>
264
-
265
- <dd>The content is scaled as necessary so that it fits
266
- exactly within the viewport. The aspect ratio is
267
- <em>not</em> maintained.</dd>
268
-
269
- <dt>'meet'</dt>
270
-
271
- <dd>The content is scaled as necessary so that the larger
272
- dimension exactly fits the viewport. There may be some
273
- unused space in the viewport. The aspect ratio is
274
- maintained.</dd>
275
-
276
- <dt>'slice'</dt>
277
-
278
- <dd>The content is scaled as necessary so that the
279
- smaller dimension exactly fits the viewport. Some of the
280
- content in the larger dimension may be cut off. The
281
- aspect ratio is maintained.</dd>
282
- </dl>
283
- </dd>
284
- </dl>
285
-
286
- <h4>Example</h4>
287
-
288
- <p>See the RVG class <a href=
289
- "rvg.html#RVG_preserve_aspect_ratio">example</a>.</p>
290
-
291
- <h4>Returns</h4>
292
-
293
- <p><span class="arg">Self</span>, so other
294
- <code>RVG::Pattern</code> methods can be chained to this
295
- method.</p>
296
-
297
- <h4>See Also</h4>
298
-
299
- <p><a href="#viewbox">viewbox</a></p>
300
- </div>
301
-
302
- <div class="sig">
303
- <h3 id="rvg">rvg</h3>
304
-
305
- <p><span class="arg">pattern</span>.rvg(<span class=
306
- "arg">width</span>, <span class="arg">height</span>,
307
- <span class="arg">x</span>=0, <span class="arg">y</span>=0)
308
- [{|<span class="arg">new_rvg</span>| ...}] -&gt;
309
- <em>pattern</em></p>
310
- </div>
311
-
312
- <div class="desc">
313
- <h4>Description</h4>
314
-
315
- <p>This method constructs a new RVG object and adds it to the
316
- pattern. Each nested RVG object can use the <a href=
317
- "rvg.html#RVG_viewbox">viewbox</a> method to define its own
318
- coordinate system. The <code>rvg</code> method yields to a
319
- block, passing the nested RVG object as an argument. Within the
320
- block, any drawing objects added to the nested RVG object are
321
- rendered within the nested RVG object's viewport.</p>
322
-
323
- <h4>Arguments</h4>
324
-
325
- <dl>
326
- <dt>width, height</dt>
327
-
328
- <dd>Specifies the viewport width and height. The units are in
329
- the user coordinate system of the parent container.</dd>
330
-
331
- <dt>x, y</dt>
332
-
333
- <dd>The x- and y-axis offsets of the viewport upper-left
334
- corner. The units are in the user coordinate system of the
335
- parent container.</dd>
336
- </dl>
337
-
338
- <h4>Example</h4>
339
-
340
- <p>See the example for <a href=
341
- "#RVG_preserve_aspect_ratio">preserve_aspect_ratio</a> in
342
- <code>class RVG</code>.</p>
343
-
344
- <h4>Returns</h4>
345
-
346
- <p>The <code>RVG</code> object, so other <code>RVG</code>
347
- methods can be chained to this method.</p>
348
- </div>
349
-
350
- <div class="sig">
351
- <h3 id='RVG_text'>text</h3>
352
-
353
- <p><span class="arg">pattern.</span>text(<span class=
354
- "arg">x</span>=0, <span class="arg">y</span>=0, <span class=
355
- "arg">text</span>=nil) [{|<span class="arg">text</span>| ...}]
356
- -&gt; <em>text</em></p>
357
- </div>
358
-
359
- <div class="desc">
360
- <h4>Description</h4>
361
-
362
- <p>Calls <a href="rvgtext.html#new">RVG::Text.new</a> to
363
- construct a text object and adds it to the pattern. Yields to a
364
- block if one is present, passing the new text object as an
365
- argument.</p>
366
-
367
- <h4>Returns</h4>
368
-
369
- <p>The <code>RVG::Text</code> object, so other
370
- <code>RVG::Text</code> methods can be chained to this
371
- method.</p>
372
- </div>
373
-
374
- <div class="sig">
375
- <h3 id="RVG_use">use</h3>
376
-
377
- <p><span class="arg">pattern</span>.use(<span class=
378
- "arg">obj</span>, <span class="arg">x</span>=0, <span class=
379
- "arg">y</span>=0, <span class="arg">width</span>=nil,
380
- <span class="arg">height</span>=nil) -&gt; <em>use</em></p>
381
- </div>
382
-
383
- <div class="desc">
384
- <h4>Description</h4>
385
-
386
- <p>Calls <a href="rvguse.html#new">RVG::Use.new</a> to
387
- constructs a <code>use</code> object and adds it to the
388
- pattern.</p>
389
-
390
- <p>When the referenced argument is an RVG object, <span class=
391
- "arg">width</span> and <span class="arg">height</span> can be
392
- used to specify the width and height of the viewport. If
393
- present and non-nil, these arguments override any width and
394
- height specified when the RVG object was created. You must
395
- specify the viewport size either when creating the RVG object
396
- or when referencing it with <code>use</code>.</p>
397
-
398
- <h4>Examples</h4>
399
-
400
- <p>See <a href="rvguse.html#new">RVG::Use.new</a></p>
401
-
402
- <h4>Returns</h4>
403
-
404
- <p>The <code>RVG::Use</code> object, so other
405
- <code>RVG::Use</code> methods can be chained to this
406
- method.</p>
407
- </div>
408
-
409
- <div class="sig">
410
- <h3 id="viewbox">viewbox</h3>
411
-
412
- <p><span class="arg">pattern</span>.viewbox(<span class=
413
- "arg">min_x</span>, <span class="arg">min_y</span>,
414
- <span class="arg">width</span>, <span class=
415
- "arg">height</span>) [{|<span class="arg">self</span>| ...}]
416
- -&gt; <em>self</em></p>
417
- </div>
418
-
419
- <div class="desc">
420
- <h4>Description</h4>
421
-
422
- <p>The area of the pattern is called the <em>viewport</em>. By
423
- default the origin of the coordinate system for an pattern is
424
- (0,0). The user coordinates are pixels and the width and height
425
- are established by the <span class="arg">width</span> and
426
- <span class="arg">height</span> arguments to
427
- <code>RVG::Pattern.new</code>.</p>
428
-
429
- <p>Use the <code>viewbox</code> method to superimpose a user
430
- coordinate system on the viewport. The <code>viewbox</code>
431
- method lets you set up a coordinate system using the units of
432
- your choice.</p>
433
-
434
- <p>The <code>viewbox</code> method yields to a block if one is
435
- present, passing <code>self</code> as an argument.</p>
436
-
437
- <h4>Arguments</h4>
438
-
439
- <dl>
440
- <dt>min_x, min_y</dt>
441
-
442
- <dd>The minimum <em>x</em>-coordinate and
443
- <em>y</em>-coordinate of the user coordinate system.</dd>
444
-
445
- <dt>width, height</dt>
446
-
447
- <dd>The width and height of the user coordinate system.</dd>
448
- </dl>
449
-
450
- <h4>Example</h4>
451
-
452
- <p>See the <a href="rvg.html#RVG_viewbox">example</a> for the
453
- <code>RVG</code> class.</p>
454
-
455
- <h4>Returns</h4>
456
-
457
- <p><span class="arg">Self</span>, so other
458
- <code>RVG::Pattern</code> methods may be chained to
459
- <code>viewbox</code>.</p>
460
-
461
- <h4>See Also</h4>
462
-
463
- <p><a href=
464
- "#preserve_aspect_ratio">preserve_aspect_ratio</a></p>
465
- </div>
466
-
467
- <p class="spacer">&nbsp;</p>
468
-
469
- <div class="nav">
470
- &laquo;&nbsp;<a href="rvgimage.html">Prev</a> | <a href=
471
- "index.html">Contents</a> | <a href=
472
- "rvgclip.html">Next</a>&nbsp;&raquo;
473
- </div>
474
- </body>
475
- </html>