rmagick 1.7.1

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 (239) hide show
  1. data/ChangeLog +232 -0
  2. data/Makefile.in +28 -0
  3. data/README.html +404 -0
  4. data/README.txt +397 -0
  5. data/configure +8554 -0
  6. data/configure.ac +497 -0
  7. data/doc/comtasks.html +241 -0
  8. data/doc/constants.html +1195 -0
  9. data/doc/css/doc.css +299 -0
  10. data/doc/css/popup.css +34 -0
  11. data/doc/draw.html +3108 -0
  12. data/doc/ex/Adispatch.rb +43 -0
  13. data/doc/ex/Zconstitute.rb +9 -0
  14. data/doc/ex/adaptive_threshold.rb +19 -0
  15. data/doc/ex/add_noise.rb +18 -0
  16. data/doc/ex/affine.rb +48 -0
  17. data/doc/ex/affine_transform.rb +20 -0
  18. data/doc/ex/arc.rb +47 -0
  19. data/doc/ex/arcpath.rb +33 -0
  20. data/doc/ex/average.rb +15 -0
  21. data/doc/ex/axes.rb +64 -0
  22. data/doc/ex/bilevel_channel.rb +20 -0
  23. data/doc/ex/blur_image.rb +12 -0
  24. data/doc/ex/border.rb +10 -0
  25. data/doc/ex/bounding_box.rb +48 -0
  26. data/doc/ex/cbezier1.rb +40 -0
  27. data/doc/ex/cbezier2.rb +40 -0
  28. data/doc/ex/cbezier3.rb +40 -0
  29. data/doc/ex/cbezier4.rb +41 -0
  30. data/doc/ex/cbezier5.rb +41 -0
  31. data/doc/ex/cbezier6.rb +51 -0
  32. data/doc/ex/channel.rb +26 -0
  33. data/doc/ex/channel_threshold.rb +48 -0
  34. data/doc/ex/charcoal.rb +12 -0
  35. data/doc/ex/chop.rb +29 -0
  36. data/doc/ex/circle.rb +31 -0
  37. data/doc/ex/clip_path.rb +56 -0
  38. data/doc/ex/coalesce.rb +60 -0
  39. data/doc/ex/color_fill_to_border.rb +29 -0
  40. data/doc/ex/color_floodfill.rb +28 -0
  41. data/doc/ex/color_histogram.rb +60 -0
  42. data/doc/ex/color_reset.rb +11 -0
  43. data/doc/ex/colorize.rb +16 -0
  44. data/doc/ex/colors.rb +65 -0
  45. data/doc/ex/composite.rb +135 -0
  46. data/doc/ex/contrast.rb +37 -0
  47. data/doc/ex/crop.rb +31 -0
  48. data/doc/ex/crop_with_gravity.rb +46 -0
  49. data/doc/ex/cycle_colormap.rb +21 -0
  50. data/doc/ex/demo.rb +324 -0
  51. data/doc/ex/drawcomp.rb +42 -0
  52. data/doc/ex/drop_shadow.rb +60 -0
  53. data/doc/ex/edge.rb +11 -0
  54. data/doc/ex/ellipse.rb +43 -0
  55. data/doc/ex/emboss.rb +11 -0
  56. data/doc/ex/enhance.rb +28 -0
  57. data/doc/ex/equalize.rb +11 -0
  58. data/doc/ex/flatten_images.rb +38 -0
  59. data/doc/ex/flip.rb +11 -0
  60. data/doc/ex/flop.rb +11 -0
  61. data/doc/ex/fonts.rb +20 -0
  62. data/doc/ex/frame.rb +12 -0
  63. data/doc/ex/gaussian_blur.rb +11 -0
  64. data/doc/ex/get_multiline_type_metrics.rb +53 -0
  65. data/doc/ex/get_pixels.rb +48 -0
  66. data/doc/ex/get_type_metrics.rb +140 -0
  67. data/doc/ex/gradientfill.rb +27 -0
  68. data/doc/ex/grav.rb +44 -0
  69. data/doc/ex/gravity.rb +80 -0
  70. data/doc/ex/hatchfill.rb +27 -0
  71. data/doc/ex/images/Ballerina.jpg +0 -0
  72. data/doc/ex/images/Ballerina3.jpg +0 -0
  73. data/doc/ex/images/Button_0.gif +0 -0
  74. data/doc/ex/images/Button_1.gif +0 -0
  75. data/doc/ex/images/Button_2.gif +0 -0
  76. data/doc/ex/images/Button_3.gif +0 -0
  77. data/doc/ex/images/Button_4.gif +0 -0
  78. data/doc/ex/images/Button_5.gif +0 -0
  79. data/doc/ex/images/Button_6.gif +0 -0
  80. data/doc/ex/images/Button_7.gif +0 -0
  81. data/doc/ex/images/Button_8.gif +0 -0
  82. data/doc/ex/images/Button_9.gif +0 -0
  83. data/doc/ex/images/Button_A.gif +0 -0
  84. data/doc/ex/images/Button_B.gif +0 -0
  85. data/doc/ex/images/Button_C.gif +0 -0
  86. data/doc/ex/images/Button_D.gif +0 -0
  87. data/doc/ex/images/Button_E.gif +0 -0
  88. data/doc/ex/images/Button_F.gif +0 -0
  89. data/doc/ex/images/Button_G.gif +0 -0
  90. data/doc/ex/images/Button_H.gif +0 -0
  91. data/doc/ex/images/Button_I.gif +0 -0
  92. data/doc/ex/images/Button_J.gif +0 -0
  93. data/doc/ex/images/Button_K.gif +0 -0
  94. data/doc/ex/images/Button_L.gif +0 -0
  95. data/doc/ex/images/Button_M.gif +0 -0
  96. data/doc/ex/images/Button_N.gif +0 -0
  97. data/doc/ex/images/Button_O.gif +0 -0
  98. data/doc/ex/images/Button_P.gif +0 -0
  99. data/doc/ex/images/Button_Q.gif +0 -0
  100. data/doc/ex/images/Button_R.gif +0 -0
  101. data/doc/ex/images/Button_S.gif +0 -0
  102. data/doc/ex/images/Button_T.gif +0 -0
  103. data/doc/ex/images/Button_U.gif +0 -0
  104. data/doc/ex/images/Button_V.gif +0 -0
  105. data/doc/ex/images/Button_W.gif +0 -0
  106. data/doc/ex/images/Button_X.gif +0 -0
  107. data/doc/ex/images/Button_Y.gif +0 -0
  108. data/doc/ex/images/Button_Z.gif +0 -0
  109. data/doc/ex/images/Cheetah.jpg +0 -0
  110. data/doc/ex/images/Coffee.wmf +0 -0
  111. data/doc/ex/images/Flower_Hat.jpg +0 -0
  112. data/doc/ex/images/Gold_Statue.jpg +0 -0
  113. data/doc/ex/images/Hot_Air_Balloons.jpg +0 -0
  114. data/doc/ex/images/Hot_Air_Balloons_H.jpg +0 -0
  115. data/doc/ex/images/No.wmf +0 -0
  116. data/doc/ex/images/Polynesia.jpg +0 -0
  117. data/doc/ex/images/Red_Rocks.jpg +0 -0
  118. data/doc/ex/images/Shorts.jpg +0 -0
  119. data/doc/ex/images/Snake.wmf +0 -0
  120. data/doc/ex/images/Violin.jpg +0 -0
  121. data/doc/ex/images/graydient230x6.gif +0 -0
  122. data/doc/ex/images/logo400x83.gif +0 -0
  123. data/doc/ex/images/model.miff +0 -0
  124. data/doc/ex/images/notimplemented.gif +0 -0
  125. data/doc/ex/images/smile.miff +0 -0
  126. data/doc/ex/images/spin.gif +0 -0
  127. data/doc/ex/implode.rb +32 -0
  128. data/doc/ex/level.rb +12 -0
  129. data/doc/ex/level_channel.rb +33 -0
  130. data/doc/ex/line.rb +40 -0
  131. data/doc/ex/map.rb +28 -0
  132. data/doc/ex/map_f.rb +15 -0
  133. data/doc/ex/matte_fill_to_border.rb +42 -0
  134. data/doc/ex/matte_floodfill.rb +35 -0
  135. data/doc/ex/matte_replace.rb +42 -0
  136. data/doc/ex/median_filter.rb +28 -0
  137. data/doc/ex/modulate.rb +11 -0
  138. data/doc/ex/mono.rb +23 -0
  139. data/doc/ex/morph.rb +26 -0
  140. data/doc/ex/mosaic.rb +35 -0
  141. data/doc/ex/motion_blur.rb +11 -0
  142. data/doc/ex/negate.rb +11 -0
  143. data/doc/ex/negate_channel.rb +19 -0
  144. data/doc/ex/normalize.rb +11 -0
  145. data/doc/ex/oil_paint.rb +11 -0
  146. data/doc/ex/opacity.rb +38 -0
  147. data/doc/ex/opaque.rb +14 -0
  148. data/doc/ex/ordered_dither.rb +11 -0
  149. data/doc/ex/path.rb +62 -0
  150. data/doc/ex/pattern1.rb +25 -0
  151. data/doc/ex/pattern2.rb +26 -0
  152. data/doc/ex/polygon.rb +24 -0
  153. data/doc/ex/polyline.rb +23 -0
  154. data/doc/ex/posterize.rb +19 -0
  155. data/doc/ex/preview.rb +16 -0
  156. data/doc/ex/qbezierpath.rb +49 -0
  157. data/doc/ex/quantize-m.rb +25 -0
  158. data/doc/ex/radial_blur.rb +19 -0
  159. data/doc/ex/raise.rb +11 -0
  160. data/doc/ex/random_channel_threshold.rb +17 -0
  161. data/doc/ex/random_threshold_channel.rb +18 -0
  162. data/doc/ex/rectangle.rb +33 -0
  163. data/doc/ex/reduce_noise.rb +28 -0
  164. data/doc/ex/roll.rb +9 -0
  165. data/doc/ex/rotate.rb +43 -0
  166. data/doc/ex/rotate_f.rb +14 -0
  167. data/doc/ex/roundrect.rb +32 -0
  168. data/doc/ex/rubyname.rb +31 -0
  169. data/doc/ex/segment.rb +11 -0
  170. data/doc/ex/shade.rb +11 -0
  171. data/doc/ex/shave.rb +15 -0
  172. data/doc/ex/shear.rb +10 -0
  173. data/doc/ex/skewx.rb +50 -0
  174. data/doc/ex/skewy.rb +45 -0
  175. data/doc/ex/smile.rb +124 -0
  176. data/doc/ex/solarize.rb +11 -0
  177. data/doc/ex/splice.rb +16 -0
  178. data/doc/ex/spread.rb +11 -0
  179. data/doc/ex/stegano.rb +50 -0
  180. data/doc/ex/stroke_dasharray.rb +41 -0
  181. data/doc/ex/stroke_linecap.rb +44 -0
  182. data/doc/ex/stroke_linejoin.rb +48 -0
  183. data/doc/ex/stroke_width.rb +47 -0
  184. data/doc/ex/swirl.rb +17 -0
  185. data/doc/ex/text.rb +32 -0
  186. data/doc/ex/text_align.rb +36 -0
  187. data/doc/ex/text_antialias.rb +33 -0
  188. data/doc/ex/text_undercolor.rb +26 -0
  189. data/doc/ex/texture_fill_to_border.rb +34 -0
  190. data/doc/ex/texture_floodfill.rb +31 -0
  191. data/doc/ex/texturefill.rb +25 -0
  192. data/doc/ex/threshold.rb +13 -0
  193. data/doc/ex/to_blob.rb +14 -0
  194. data/doc/ex/translate.rb +37 -0
  195. data/doc/ex/transparent.rb +38 -0
  196. data/doc/ex/trim.rb +25 -0
  197. data/doc/ex/unsharp_mask.rb +28 -0
  198. data/doc/ex/viewex.rb +36 -0
  199. data/doc/ex/wave.rb +9 -0
  200. data/doc/ilist.html +1592 -0
  201. data/doc/image1.html +3009 -0
  202. data/doc/image2.html +2169 -0
  203. data/doc/image3.html +2815 -0
  204. data/doc/imageattrs.html +1319 -0
  205. data/doc/imusage.html +403 -0
  206. data/doc/index.html +418 -0
  207. data/doc/info.html +949 -0
  208. data/doc/magick.html +439 -0
  209. data/doc/scripts/doc.js +9 -0
  210. data/doc/struct.html +1334 -0
  211. data/doc/usage.html +1318 -0
  212. data/examples/describe.rb +44 -0
  213. data/examples/histogram.rb +289 -0
  214. data/examples/image_opacity.rb +29 -0
  215. data/examples/import_export.rb +31 -0
  216. data/examples/pattern_fill.rb +38 -0
  217. data/examples/rotating_text.rb +47 -0
  218. data/examples/thumbnail.rb +65 -0
  219. data/examples/vignette.rb +79 -0
  220. data/ext/RMagick/MANIFEST +239 -0
  221. data/ext/RMagick/extconf.rb.in +21 -0
  222. data/ext/RMagick/rmagick.h +938 -0
  223. data/ext/RMagick/rmagick_config.h.in +170 -0
  224. data/ext/RMagick/rmdraw.c +1308 -0
  225. data/ext/RMagick/rmfill.c +609 -0
  226. data/ext/RMagick/rmilist.c +685 -0
  227. data/ext/RMagick/rmimage.c +7980 -0
  228. data/ext/RMagick/rminfo.c +982 -0
  229. data/ext/RMagick/rmmain.c +1497 -0
  230. data/ext/RMagick/rmutil.c +2685 -0
  231. data/install.rb +1015 -0
  232. data/lib/RMagick.rb +1486 -0
  233. data/metaconfig.in +6 -0
  234. data/post-clean.rb +12 -0
  235. data/post-install.rb +36 -0
  236. data/post-setup.rb +245 -0
  237. data/rmagick.gemspec +22 -0
  238. data/uninstall.rb +71 -0
  239. metadata +286 -0
data/metaconfig.in ADDED
@@ -0,0 +1,6 @@
1
+ # metaconfig.in -> metaconfig
2
+ # define additional install.rb config options
3
+ # add --allow-example-errors - default is false (only allow 5 examples to fail)
4
+ add_bool_config('allow-example-errors', false, 'Allow installation to proceed even if a lot of examples fail')
5
+ # add --doc-dir - default is $prefix/share/RMagick
6
+ add_path_config('doc-dir', "$prefix/share/RMagick", 'where to install RMagick documentation')
data/post-clean.rb ADDED
@@ -0,0 +1,12 @@
1
+ # delete RMagick documentation created by post-setup.rb
2
+ # doc/*.rb.html
3
+ # doc/ex/* (!rb)
4
+ # Bug #246: Don't use chdir!
5
+ require 'ftools'
6
+
7
+ targets = Dir['doc/*.rb.html']
8
+ File.safe_unlink(*targets) unless targets.empty?
9
+
10
+ targets = Dir['doc/ex/*']
11
+ targets.delete_if { |entry| File.directory?(entry) || %r{\.rb\z}.match(entry) }
12
+ File.safe_unlink(*targets) unless targets.empty?
data/post-install.rb ADDED
@@ -0,0 +1,36 @@
1
+ # install RMagick documentation
2
+
3
+ require 'ftools'
4
+ require 'find'
5
+
6
+ if defined?(ToplevelInstaller) && self.class == ToplevelInstaller
7
+ $docdir = nil
8
+
9
+ # Where to install the documentation
10
+ def docdir
11
+ return $docdir if $docdir
12
+ dir = get_config('doc-dir')+'/'
13
+ dir.sub!(/\A$prefix/, get_config('prefix'))
14
+ $docdir = dir
15
+ end
16
+ else
17
+ def docdir
18
+ return ARGV[0]
19
+ end
20
+ end
21
+
22
+ puts "\npost-install.rb: installing documentation..."
23
+
24
+ Find.find('doc') do |file|
25
+ next if FileTest.directory? file
26
+ target = file.sub(/^doc\//,docdir())
27
+ unless FileTest.exists? File.dirname(target)
28
+ File.makedirs(File.dirname(target), true)
29
+ # Mark this directory as one we created so
30
+ # that uninstall.rb knows it's okay to delete
31
+ f = File.new("#{File.dirname(target)}/.rmagick", "w")
32
+ f.close
33
+ end
34
+ File.install(file, target, 0644)
35
+ end
36
+ exit
data/post-setup.rb ADDED
@@ -0,0 +1,245 @@
1
+ #===============================================================================
2
+ # post-setup.rb - setup documentation
3
+ #===============================================================================
4
+
5
+ EXAMPLES = '.examples'
6
+ STD_URI = 'http:\/\/www.imagemagick.org'
7
+ STD_URI_RE = /"#{STD_URI}/
8
+ DONT_RUN = ['fonts.rb'] # never run these examples
9
+ ENTITY = Hash['&' => '&amp;', '>' => '&gt;', '<' => '&lt;']
10
+
11
+ if defined?(ToplevelInstaller) && self.class == ToplevelInstaller
12
+
13
+ RUBYPROG = get_config('ruby-prog')
14
+ SRCDIR = srcdir()
15
+ ALLOW_EXAMPLE_ERRORS = get_config('allow-example-errors') == 'yes'
16
+
17
+ else
18
+
19
+ RUBYPROG = 'ruby'
20
+ SRCDIR = '.'
21
+ ALLOW_EXAMPLE_ERRORS = true
22
+
23
+ end
24
+
25
+
26
+ #
27
+ # A set of example programs in a directory and the output image each example produces.
28
+ #
29
+
30
+ class ExampleSet
31
+ def initialize(of)
32
+ @status_quo = get_status_quo()
33
+ @errs = 0
34
+ begin
35
+ File.open(EXAMPLES) do |f|
36
+ @targets = Marshal.load(f)
37
+ end
38
+ rescue
39
+ @targets = Hash.new
40
+ @n = 0
41
+ @of = of
42
+ @first_time = true
43
+ else
44
+ @first_time = false
45
+ end
46
+ end
47
+
48
+ def persist
49
+ File.open(EXAMPLES, 'w') do |f|
50
+ Marshal.dump(@targets, f)
51
+ end
52
+ end
53
+
54
+ def targets(example)
55
+ @targets[example] || Array.new
56
+ end
57
+
58
+ def get_status_quo
59
+ sq = Dir["*"]
60
+ sq.delete_if { |entry| File.directory?(entry) }
61
+ end
62
+
63
+ def update_targets(example, new)
64
+ t = targets(example) + new
65
+ @targets[example] = t.uniq
66
+ end
67
+
68
+ def update_status_quo(example)
69
+ new_status_quo = get_status_quo()
70
+ new = new_status_quo - @status_quo
71
+ update_targets(example, new)
72
+ @status_quo = new_status_quo
73
+ end
74
+
75
+ def build(example)
76
+ cmd = "#{RUBYPROG} -I #{SRCDIR}/lib -I #{SRCDIR}/ext/RMagick #{example}"
77
+ print cmd
78
+ print " (example #{@n += 1} of #{@of})" if @first_time
79
+ puts
80
+ system cmd
81
+
82
+ if $? != 0 then
83
+ puts("post-setup.rb: #{example} example returned error code #{$?}")
84
+ @errs += 1 unless ALLOW_EXAMPLE_ERRORS
85
+ if @errs > 4
86
+ err(<<-END_EXFAIL
87
+ Too many examples failed. The RMagick documentation cannot be installed
88
+ successfully. Consult the README.txt file and try again, or send email
89
+ to rmagick@rubyforge.org.
90
+ END_EXFAIL
91
+ )
92
+ end
93
+ end
94
+
95
+ update_status_quo(example)
96
+ end
97
+
98
+ def update(example)
99
+ targets = targets(example)
100
+ up_to_date = ! targets.empty?
101
+ targets.each do |target|
102
+ up_to_date &&= File.exists?(target) && (File.stat(target) >= File.stat(example))
103
+ end
104
+ build(example) unless up_to_date
105
+ end
106
+
107
+ #
108
+ # print message and exit
109
+ #
110
+ def err(msg)
111
+ $stderr.puts "#{$0}: #{msg}"
112
+ exit
113
+ end
114
+
115
+ end
116
+
117
+
118
+ #
119
+ # Modify file lines via proc. If no lines changed, discard new version.
120
+ #
121
+ def filter(filename, backup=nil, &filter)
122
+ if ! File.writable? filename then
123
+ raise ArgumentError, "`#{filename}' is write-protected"
124
+ end
125
+
126
+ backup_name = filename + '.' + (backup || 'old')
127
+ File.rename(filename, backup_name)
128
+ changed = false
129
+ begin
130
+ File.open(filename, 'w') do |output|
131
+ File.foreach(backup_name) do |line|
132
+ old = line
133
+ line = filter.call(line)
134
+ output.puts(line)
135
+ changed ||= line != old
136
+ end
137
+ end
138
+ rescue
139
+ File.rename(backup_name, filename)
140
+ raise
141
+ end
142
+
143
+ if !changed
144
+ newname = filename + '.xxx'
145
+ File.rename(filename, newname)
146
+ File.rename(backup_name, filename)
147
+ File.unlink(newname)
148
+ elsif !backup
149
+ # Don't remove old copy if a backup extension was specified
150
+ File.unlink(backup_name) rescue nil
151
+ end
152
+ end
153
+
154
+
155
+ #
156
+ # Copy an example to the doc directory, wrap in HTML tags
157
+ #
158
+ def filetoHTML(file, html)
159
+ return if File.exists?(html) && File.stat(html) >= File.stat(file)
160
+
161
+ File.open(file) do |src|
162
+ File.open(html, 'w') do |dest|
163
+ dest.puts <<-END_EXHTMLHEAD
164
+ <!DOCTYPE public PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
165
+ <html xmlns="http://www.w3.org/1999/xhtml">
166
+ <head>
167
+ <meta name="generator" content="ex2html.rb" />
168
+ <meta http-equiv="Content-Type" content=
169
+ "text/html; charset=us-ascii" />
170
+ <link rel="stylesheet" type="text/css" href="css/popup.css" />
171
+
172
+ <title>RMagick example: #{file}</title>
173
+ </head>
174
+
175
+ <body>
176
+ <h1>#{file}</h1>
177
+ <div class="bodybox">
178
+ <div class="bodyfloat">
179
+ <pre>
180
+ END_EXHTMLHEAD
181
+
182
+ src.each do |line|
183
+ line.gsub!(/[&><]/) { |s| ENTITY[s] }
184
+ dest.puts(line)
185
+ end
186
+
187
+ dest.puts <<-END_EXHTMLTAIL
188
+ </pre>
189
+ </div>
190
+ </div>
191
+ <div id="close"><a href="javascript:window.close();">Close window</a></div>
192
+ </body>
193
+ </html>
194
+ END_EXHTMLTAIL
195
+ end
196
+ File.chmod(0644, html)
197
+ end
198
+
199
+ end
200
+
201
+ puts "install.rb: entering post-setup phase..."
202
+
203
+ #
204
+ # Don't bother if we're in the sandbox
205
+ #
206
+ if File.exists? 'CVS/Entries'
207
+ puts "post-setup.rb: in CVS sandbox - stopping..."
208
+ exit
209
+ end
210
+
211
+ puts "post-setup.rb: setting up documentation..."
212
+
213
+
214
+ # We're in the source directory. Process the doc in-place. The post-install.rb
215
+ # script moves the generated documentation to the ultimate installation directories.
216
+
217
+
218
+ cwd = Dir.getwd()
219
+ Dir.chdir('doc')
220
+ begin
221
+
222
+ # Step 1A: edit the shebang line in the examples
223
+ Dir.chdir('ex')
224
+ files = Dir['*.rb']
225
+ files.each do |file|
226
+ filter(file) { |line| line.sub(/\A\#!\s*\S*ruby\s/, '#!'+RUBYPROG+' ') }
227
+
228
+ # Step 1B: Make a copy of the example as HTML in the doc directory
229
+ filetoHTML(file, "../#{file}.html")
230
+ end
231
+
232
+ # Step 2: run the examples
233
+ examples = Dir['*.rb'].sort
234
+ examples -= DONT_RUN
235
+ es = ExampleSet.new(examples.length)
236
+ begin
237
+ examples.each { |example| es.update(example) }
238
+ ensure
239
+ es.persist
240
+ end
241
+
242
+ ensure
243
+ Dir.chdir(cwd)
244
+ end
245
+
data/rmagick.gemspec ADDED
@@ -0,0 +1,22 @@
1
+ require 'date'
2
+ Gem::Specification.new do |s|
3
+ s.name = %q{rmagick}
4
+ s.version = "1.7.1"
5
+ s.date = Date.today.to_s
6
+ s.summary = %q{RMagick is an interface between the Ruby programming language and the ImageMagick and GraphicsMagick image processing libraries.}
7
+ s.description =<<DESCRIPTION
8
+ RMagick is an interface between the Ruby programming language and the
9
+ ImageMagick and GraphicsMagick image processing libraries.
10
+ DESCRIPTION
11
+ s.author = %q{Tim Hunter}
12
+ s.email = %q{rmagick@rubyforge.org}
13
+ s.homepage = %q{http://rubyforge.org/projects/rmagick}
14
+ s.files = Dir.glob('**/*')
15
+ s.require_paths = %w{lib .}
16
+ s.autorequire = %q{RMagick}
17
+ s.rubyforge_project = %q{rmagick}
18
+ s.extensions = %w{configure}
19
+ s.has_rdoc = false
20
+ s.required_ruby_version = '>= 1.6.7'
21
+ s.requirements << 'ImageMagick 6.0.0 or later, or GraphicsMagick 1.0.0 or later'
22
+ end
data/uninstall.rb ADDED
@@ -0,0 +1,71 @@
1
+ # uninstall RMagick - called from Makefile uninstall target
2
+
3
+ require 'ftools'
4
+
5
+ class Dir
6
+ def Dir.safe_unlink(dir)
7
+ begin
8
+ File.chmod 0777, dir
9
+ unlink dir
10
+ $stderr.puts dir
11
+ rescue
12
+ end
13
+ end
14
+ end
15
+
16
+ # remove directory & contents if the directory was created by post-install.rb
17
+ def rmdir(dir)
18
+ # This can 't happen, but you can never be too safe...
19
+ if dir == '/' then
20
+ raise RuntimeError, "rm -rf /? I don't think so!"
21
+ end
22
+ if File.file? dir+'/.rmagick' then
23
+ targets = Dir[dir+'/*']
24
+ targets += Dir[dir+'/.*'].delete_if { |f| FileTest.directory?(f) }
25
+ if not targets.empty?
26
+ File.safe_unlink(*targets)
27
+ end
28
+ Dir.safe_unlink(dir)
29
+ end
30
+ end
31
+
32
+ # Load up default values
33
+ rbconfig = 'rbconfig'
34
+
35
+ while arg = ARGV.shift
36
+ case arg
37
+ when /\A--rbconfig=(.*)\z/ # Get overriding rbconfig file name
38
+ rbconfig = $1
39
+ when /\A--prefix=(.*)\z/
40
+ path = $1
41
+ path = File.expand_path(path) unless path[0,1] == '/'
42
+ prefix = path
43
+ when /\A--site-ruby=(.*)\z/ # where RMagick.rb is
44
+ site_ruby = $1
45
+ when /\A--so-dir=(.*)\z/ # where RMagick.so is
46
+ so_dir = $1
47
+ when /\A--doc-dir=(.*)\z/ # where doc is
48
+ doc_dir = $1
49
+ end
50
+ end
51
+
52
+ require rbconfig # get specified/default rbconfig.rb
53
+
54
+ version = ::Config::CONFIG['MAJOR'] + '.' + ::Config::CONFIG['MINOR']
55
+ arch = ::Config::CONFIG['arch']
56
+
57
+ prefix ||= ::Config::CONFIG['prefix']
58
+ site_ruby ||= prefix+'/lib/ruby/site_ruby/'+version
59
+ so_dir ||= prefix+'/lib/ruby/site_ruby/'+version+'/'+arch
60
+ doc_dir ||= prefix+'/share/RMagick'
61
+
62
+ File.safe_unlink("#{site_ruby}/RMagick.rb", true)
63
+ File.safe_unlink("#{so_dir}/RMagick.so", true)
64
+
65
+ rmdir(doc_dir+'/ex/images')
66
+ rmdir(doc_dir+'/ex')
67
+ rmdir(doc_dir+'/css')
68
+ rmdir(doc_dir+'/scripts')
69
+ rmdir(doc_dir)
70
+
71
+ exit
metadata ADDED
@@ -0,0 +1,286 @@
1
+ --- !ruby/object:Gem::Specification
2
+ rubygems_version: 0.8.3
3
+ specification_version: 1
4
+ name: rmagick
5
+ version: !ruby/object:Gem::Version
6
+ version: 1.7.1
7
+ date: 2004-12-29
8
+ summary: RMagick is an interface between the Ruby programming language and the ImageMagick and GraphicsMagick image processing libraries.
9
+ require_paths:
10
+ - lib
11
+ - "."
12
+ email: rmagick@rubyforge.org
13
+ homepage: http://rubyforge.org/projects/rmagick
14
+ rubyforge_project: rmagick
15
+ description: RMagick is an interface between the Ruby programming language and the ImageMagick and GraphicsMagick image processing libraries.
16
+ autorequire: RMagick
17
+ default_executable:
18
+ bindir: bin
19
+ has_rdoc: false
20
+ required_ruby_version: !ruby/object:Gem::Version::Requirement
21
+ requirements:
22
+ -
23
+ - ">="
24
+ - !ruby/object:Gem::Version
25
+ version: 1.6.7
26
+ version:
27
+ platform: ruby
28
+ authors:
29
+ - Tim Hunter
30
+ files:
31
+ - doc
32
+ - ext
33
+ - ChangeLog
34
+ - Makefile.in
35
+ - README.html
36
+ - README.txt
37
+ - configure.ac
38
+ - install.rb
39
+ - metaconfig.in
40
+ - post-clean.rb
41
+ - post-install.rb
42
+ - post-setup.rb
43
+ - uninstall.rb
44
+ - examples
45
+ - lib
46
+ - configure
47
+ - rmagick.gemspec
48
+ - doc/css
49
+ - doc/ex
50
+ - doc/comtasks.html
51
+ - doc/constants.html
52
+ - doc/draw.html
53
+ - doc/ilist.html
54
+ - doc/image1.html
55
+ - doc/image2.html
56
+ - doc/image3.html
57
+ - doc/imageattrs.html
58
+ - doc/imusage.html
59
+ - doc/index.html
60
+ - doc/info.html
61
+ - doc/magick.html
62
+ - doc/struct.html
63
+ - doc/usage.html
64
+ - doc/scripts
65
+ - doc/css/popup.css
66
+ - doc/css/doc.css
67
+ - doc/ex/images
68
+ - doc/ex/Adispatch.rb
69
+ - doc/ex/Zconstitute.rb
70
+ - doc/ex/adaptive_threshold.rb
71
+ - doc/ex/add_noise.rb
72
+ - doc/ex/affine.rb
73
+ - doc/ex/affine_transform.rb
74
+ - doc/ex/arc.rb
75
+ - doc/ex/arcpath.rb
76
+ - doc/ex/average.rb
77
+ - doc/ex/axes.rb
78
+ - doc/ex/bilevel_channel.rb
79
+ - doc/ex/blur_image.rb
80
+ - doc/ex/border.rb
81
+ - doc/ex/bounding_box.rb
82
+ - doc/ex/cbezier1.rb
83
+ - doc/ex/cbezier2.rb
84
+ - doc/ex/cbezier3.rb
85
+ - doc/ex/cbezier4.rb
86
+ - doc/ex/cbezier5.rb
87
+ - doc/ex/cbezier6.rb
88
+ - doc/ex/channel.rb
89
+ - doc/ex/channel_threshold.rb
90
+ - doc/ex/charcoal.rb
91
+ - doc/ex/chop.rb
92
+ - doc/ex/circle.rb
93
+ - doc/ex/clip_path.rb
94
+ - doc/ex/coalesce.rb
95
+ - doc/ex/color_fill_to_border.rb
96
+ - doc/ex/color_floodfill.rb
97
+ - doc/ex/color_histogram.rb
98
+ - doc/ex/color_reset.rb
99
+ - doc/ex/colorize.rb
100
+ - doc/ex/colors.rb
101
+ - doc/ex/composite.rb
102
+ - doc/ex/contrast.rb
103
+ - doc/ex/crop.rb
104
+ - doc/ex/crop_with_gravity.rb
105
+ - doc/ex/cycle_colormap.rb
106
+ - doc/ex/demo.rb
107
+ - doc/ex/drawcomp.rb
108
+ - doc/ex/drop_shadow.rb
109
+ - doc/ex/edge.rb
110
+ - doc/ex/ellipse.rb
111
+ - doc/ex/emboss.rb
112
+ - doc/ex/enhance.rb
113
+ - doc/ex/equalize.rb
114
+ - doc/ex/flatten_images.rb
115
+ - doc/ex/flip.rb
116
+ - doc/ex/flop.rb
117
+ - doc/ex/fonts.rb
118
+ - doc/ex/frame.rb
119
+ - doc/ex/gaussian_blur.rb
120
+ - doc/ex/get_multiline_type_metrics.rb
121
+ - doc/ex/get_pixels.rb
122
+ - doc/ex/get_type_metrics.rb
123
+ - doc/ex/gradientfill.rb
124
+ - doc/ex/grav.rb
125
+ - doc/ex/gravity.rb
126
+ - doc/ex/hatchfill.rb
127
+ - doc/ex/implode.rb
128
+ - doc/ex/level.rb
129
+ - doc/ex/level_channel.rb
130
+ - doc/ex/line.rb
131
+ - doc/ex/map.rb
132
+ - doc/ex/map_f.rb
133
+ - doc/ex/matte_fill_to_border.rb
134
+ - doc/ex/matte_floodfill.rb
135
+ - doc/ex/matte_replace.rb
136
+ - doc/ex/median_filter.rb
137
+ - doc/ex/modulate.rb
138
+ - doc/ex/mono.rb
139
+ - doc/ex/morph.rb
140
+ - doc/ex/mosaic.rb
141
+ - doc/ex/motion_blur.rb
142
+ - doc/ex/negate.rb
143
+ - doc/ex/negate_channel.rb
144
+ - doc/ex/normalize.rb
145
+ - doc/ex/oil_paint.rb
146
+ - doc/ex/opacity.rb
147
+ - doc/ex/opaque.rb
148
+ - doc/ex/ordered_dither.rb
149
+ - doc/ex/path.rb
150
+ - doc/ex/pattern1.rb
151
+ - doc/ex/pattern2.rb
152
+ - doc/ex/polygon.rb
153
+ - doc/ex/polyline.rb
154
+ - doc/ex/posterize.rb
155
+ - doc/ex/preview.rb
156
+ - doc/ex/qbezierpath.rb
157
+ - doc/ex/quantize-m.rb
158
+ - doc/ex/radial_blur.rb
159
+ - doc/ex/raise.rb
160
+ - doc/ex/random_channel_threshold.rb
161
+ - doc/ex/random_threshold_channel.rb
162
+ - doc/ex/rectangle.rb
163
+ - doc/ex/reduce_noise.rb
164
+ - doc/ex/roll.rb
165
+ - doc/ex/rotate.rb
166
+ - doc/ex/rotate_f.rb
167
+ - doc/ex/roundrect.rb
168
+ - doc/ex/rubyname.rb
169
+ - doc/ex/segment.rb
170
+ - doc/ex/shade.rb
171
+ - doc/ex/shave.rb
172
+ - doc/ex/shear.rb
173
+ - doc/ex/skewx.rb
174
+ - doc/ex/skewy.rb
175
+ - doc/ex/smile.rb
176
+ - doc/ex/solarize.rb
177
+ - doc/ex/splice.rb
178
+ - doc/ex/spread.rb
179
+ - doc/ex/stegano.rb
180
+ - doc/ex/stroke_dasharray.rb
181
+ - doc/ex/stroke_linecap.rb
182
+ - doc/ex/stroke_linejoin.rb
183
+ - doc/ex/stroke_width.rb
184
+ - doc/ex/swirl.rb
185
+ - doc/ex/text.rb
186
+ - doc/ex/text_align.rb
187
+ - doc/ex/text_antialias.rb
188
+ - doc/ex/text_undercolor.rb
189
+ - doc/ex/texture_fill_to_border.rb
190
+ - doc/ex/texture_floodfill.rb
191
+ - doc/ex/texturefill.rb
192
+ - doc/ex/threshold.rb
193
+ - doc/ex/to_blob.rb
194
+ - doc/ex/translate.rb
195
+ - doc/ex/transparent.rb
196
+ - doc/ex/trim.rb
197
+ - doc/ex/unsharp_mask.rb
198
+ - doc/ex/viewex.rb
199
+ - doc/ex/wave.rb
200
+ - doc/ex/images/Ballerina.jpg
201
+ - doc/ex/images/Ballerina3.jpg
202
+ - doc/ex/images/Button_0.gif
203
+ - doc/ex/images/Button_1.gif
204
+ - doc/ex/images/Button_2.gif
205
+ - doc/ex/images/Button_3.gif
206
+ - doc/ex/images/Button_4.gif
207
+ - doc/ex/images/Button_5.gif
208
+ - doc/ex/images/Button_6.gif
209
+ - doc/ex/images/Button_7.gif
210
+ - doc/ex/images/Button_8.gif
211
+ - doc/ex/images/Button_9.gif
212
+ - doc/ex/images/Button_A.gif
213
+ - doc/ex/images/Button_B.gif
214
+ - doc/ex/images/Button_C.gif
215
+ - doc/ex/images/Button_D.gif
216
+ - doc/ex/images/Button_E.gif
217
+ - doc/ex/images/Button_F.gif
218
+ - doc/ex/images/Button_G.gif
219
+ - doc/ex/images/Button_H.gif
220
+ - doc/ex/images/Button_I.gif
221
+ - doc/ex/images/Button_J.gif
222
+ - doc/ex/images/Button_K.gif
223
+ - doc/ex/images/Button_L.gif
224
+ - doc/ex/images/Button_M.gif
225
+ - doc/ex/images/Button_N.gif
226
+ - doc/ex/images/Button_O.gif
227
+ - doc/ex/images/Button_P.gif
228
+ - doc/ex/images/Button_Q.gif
229
+ - doc/ex/images/Button_R.gif
230
+ - doc/ex/images/Button_S.gif
231
+ - doc/ex/images/Button_T.gif
232
+ - doc/ex/images/Button_U.gif
233
+ - doc/ex/images/Button_V.gif
234
+ - doc/ex/images/Button_W.gif
235
+ - doc/ex/images/Button_X.gif
236
+ - doc/ex/images/Button_Y.gif
237
+ - doc/ex/images/Button_Z.gif
238
+ - doc/ex/images/Cheetah.jpg
239
+ - doc/ex/images/Coffee.wmf
240
+ - doc/ex/images/Flower_Hat.jpg
241
+ - doc/ex/images/Gold_Statue.jpg
242
+ - doc/ex/images/Hot_Air_Balloons.jpg
243
+ - doc/ex/images/Hot_Air_Balloons_H.jpg
244
+ - doc/ex/images/No.wmf
245
+ - doc/ex/images/Polynesia.jpg
246
+ - doc/ex/images/Red_Rocks.jpg
247
+ - doc/ex/images/Shorts.jpg
248
+ - doc/ex/images/Snake.wmf
249
+ - doc/ex/images/Violin.jpg
250
+ - doc/ex/images/graydient230x6.gif
251
+ - doc/ex/images/logo400x83.gif
252
+ - doc/ex/images/model.miff
253
+ - doc/ex/images/notimplemented.gif
254
+ - doc/ex/images/smile.miff
255
+ - doc/ex/images/spin.gif
256
+ - doc/scripts/doc.js
257
+ - ext/RMagick
258
+ - ext/RMagick/MANIFEST
259
+ - ext/RMagick/extconf.rb.in
260
+ - ext/RMagick/rmagick.h
261
+ - ext/RMagick/rmagick_config.h.in
262
+ - ext/RMagick/rmdraw.c
263
+ - ext/RMagick/rmfill.c
264
+ - ext/RMagick/rmilist.c
265
+ - ext/RMagick/rmimage.c
266
+ - ext/RMagick/rminfo.c
267
+ - ext/RMagick/rmmain.c
268
+ - ext/RMagick/rmutil.c
269
+ - examples/describe.rb
270
+ - examples/histogram.rb
271
+ - examples/image_opacity.rb
272
+ - examples/import_export.rb
273
+ - examples/pattern_fill.rb
274
+ - examples/rotating_text.rb
275
+ - examples/thumbnail.rb
276
+ - examples/vignette.rb
277
+ - lib/RMagick.rb
278
+ test_files: []
279
+ rdoc_options: []
280
+ extra_rdoc_files: []
281
+ executables: []
282
+ extensions:
283
+ - configure
284
+ requirements:
285
+ - "ImageMagick 6.0.0 or later, or GraphicsMagick 1.0.0 or later"
286
+ dependencies: []