rmagick 1.12.0 → 1.13.0
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.
- data/ChangeLog +17 -0
- data/README.html +8 -8
- data/README.txt +6 -6
- data/configure +431 -19
- data/configure.ac +12 -8
- data/doc/draw.html +15 -18
- data/doc/ex/transpose.rb +16 -0
- data/doc/ex/transverse.rb +16 -0
- data/doc/image1.html +182 -8
- data/doc/image2.html +13 -10
- data/doc/image3.html +185 -14
- data/doc/imageattrs.html +3 -40
- data/doc/imusage.html +2 -3
- data/doc/info.html +6 -100
- data/doc/usage.html +28 -11
- data/ext/RMagick/MANIFEST +4 -2
- data/ext/RMagick/rmagick.h +32 -3
- data/ext/RMagick/rmagick_config.h.in +16 -0
- data/ext/RMagick/rmfill.c +20 -20
- data/ext/RMagick/rmilist.c +3 -3
- data/ext/RMagick/rmimage.c +441 -37
- data/ext/RMagick/rmmain.c +16 -3
- data/ext/RMagick/rmutil.c +37 -3
- data/{gem_config.rb → gem_extconf.rb} +0 -0
- data/lib/RMagick.rb +6 -1
- data/rmagick.gemspec +2 -2
- metadata +8 -5
data/configure.ac
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
|
2
2
|
# RMagick configure.ac
|
3
3
|
|
4
|
-
AC_INIT(RMagick, 1.
|
4
|
+
AC_INIT(RMagick, 1.13.0, rmagick@rubyforge.org, RMagick-1.13.0.tar.gz)
|
5
5
|
echo "Configuring ${PACKAGE_STRING}"
|
6
6
|
|
7
7
|
AC_CONFIG_HEADER([ext/RMagick/rmagick_config.h])
|
@@ -98,10 +98,12 @@ if test "$rm_have_acquirestringinfo" = yes; then
|
|
98
98
|
AC_DEFINE(HAVE_ACQUIRESTRINGINFO)
|
99
99
|
fi
|
100
100
|
|
101
|
-
AC_CHECK_FUNCS([AdaptiveThresholdImage AddDefinitions
|
102
|
-
AC_CHECK_FUNCS([
|
103
|
-
AC_CHECK_FUNCS([
|
104
|
-
AC_CHECK_FUNCS([
|
101
|
+
AC_CHECK_FUNCS([AdaptiveSharpenImage AdaptiveThresholdImage AddDefinitions])
|
102
|
+
AC_CHECK_FUNCS([AddNoiseImageChannel BilevelImageChannel BlackThresholdImage])
|
103
|
+
AC_CHECK_FUNCS([BlurImageChannel ClearMagickException CompareImageChannels])
|
104
|
+
AC_CHECK_FUNCS([CompareImageLayers CompositeImageChannel ContrastStretchImageChannel])
|
105
|
+
AC_CHECK_FUNCS([ConvolveImageChannel EvaluateImageChannel ExportImagePixels])
|
106
|
+
AC_CHECK_FUNCS([FuzzyColorCompare GammaImageChannel GaussianBlurImageChannel])
|
105
107
|
AC_CHECK_FUNCS([GetColorHistogram GetColorInfoArray])
|
106
108
|
|
107
109
|
# We need to be able to query these symbols later in the configure script, so set a shell
|
@@ -147,12 +149,14 @@ fi
|
|
147
149
|
AC_CHECK_FUNCS([GetMagickResourceLimit GrayscalePseudoClassImage ImagesToBlob ImportImagePixels])
|
148
150
|
AC_CHECK_FUNCS([InheritException InterpretImageAttributes IsColorSimilar NegateImageChannel])
|
149
151
|
AC_CHECK_FUNCS([NormalizeImageChannel ParseSizeGeometry PosterizeImage PreviewImage])
|
150
|
-
AC_CHECK_FUNCS([QuantumOperatorRegionImage RadialBlurImage
|
152
|
+
AC_CHECK_FUNCS([QuantumOperatorRegionImage RadialBlurImage RadialBlurImageChannel])
|
153
|
+
AC_CHECK_FUNCS([RandomChannelThresholdImage])
|
151
154
|
AC_CHECK_FUNCS([RandomThresholdImageChannel SeparateImageChannel SepiaToneImage])
|
152
|
-
AC_CHECK_FUNCS([SetImageBackgroundColor SetImageChannelDepth SetImageColorspace
|
155
|
+
AC_CHECK_FUNCS([SetImageBackgroundColor SetImageChannelDepth SetImageColorspace SetImageExtent])
|
156
|
+
AC_CHECK_FUNCS([SetImageInfoFile SetImageOption SetImageStorageClass])
|
153
157
|
AC_CHECK_FUNCS([SetImageProgressMonitor ShadowImage SharpenImageChannel])
|
154
158
|
AC_CHECK_FUNCS([SigmoidalContrastImageChannel SpliceImage StripImage])
|
155
|
-
AC_CHECK_FUNCS([ThresholdImageChannel TintImage])
|
159
|
+
AC_CHECK_FUNCS([ThresholdImageChannel TintImage TransposeImage TransverseImage])
|
156
160
|
AC_CHECK_FUNCS([UnsharpMaskImageChannel VignetteImage WhiteThresholdImage XImportImage])
|
157
161
|
|
158
162
|
# What typedefs?
|
data/doc/draw.html
CHANGED
@@ -270,7 +270,7 @@ gc = Draw.new
|
|
270
270
|
<h3 id="annotate">annotate</h3>
|
271
271
|
|
272
272
|
<p><span class="arg">draw.</span>annotate(<span class=
|
273
|
-
"arg">img,
|
273
|
+
"arg">img, x_rotate, y_rotate, x, y, text</span>) <span class=
|
274
274
|
"arg">[ { additional parameters } ]</span> ->
|
275
275
|
<em>draw</em></p>
|
276
276
|
</div>
|
@@ -279,15 +279,16 @@ gc = Draw.new
|
|
279
279
|
<h4>Description</h4>
|
280
280
|
|
281
281
|
<p>Annotates a image with text. The text is positioned
|
282
|
-
according to the <code>gravity</code> attribute
|
283
|
-
|
284
|
-
|
285
|
-
|
286
|
-
|
287
|
-
<a href=
|
288
|
-
|
289
|
-
|
290
|
-
|
282
|
+
according to the <code>gravity</code> attribute, starting
|
283
|
+
<span class="arg">x</span> pixels from the left and with its
|
284
|
+
baseline at <span class="arg">y</span>. The <span class=
|
285
|
+
"arg">x_rotate</span> and <span class="arg">y_rotate</span>
|
286
|
+
arguments specify a rotation in degrees on the x-axis and
|
287
|
+
y-axis, respectively. The attributes described in <a href=
|
288
|
+
"#attributes">annotate attributes</a>, below, influence the
|
289
|
+
appearance and position of the text. These attributes may be
|
290
|
+
set in the Draw object before calling <code>annotate</code>, or
|
291
|
+
within <code>annotate</code>'s optional <span class=
|
291
292
|
"arg">additional parameters</span> block.</p>
|
292
293
|
|
293
294
|
<p><em>Note</em>: all of the <code>annotate</code> attributes
|
@@ -300,15 +301,13 @@ gc = Draw.new
|
|
300
301
|
|
301
302
|
<dd>the image or imagelist to be annotated</dd>
|
302
303
|
|
303
|
-
<dt>
|
304
|
+
<dt>x-rotate</dt>
|
304
305
|
|
305
|
-
<dd>
|
306
|
-
positioned</dd>
|
306
|
+
<dd>rotation on the x-axis, in degrees</dd>
|
307
307
|
|
308
|
-
<dt>
|
308
|
+
<dt>y-rotate</dt>
|
309
309
|
|
310
|
-
<dd>
|
311
|
-
positioned</dd>
|
310
|
+
<dd>rotation on the y-axis, in degrees</dd>
|
312
311
|
|
313
312
|
<dt>x</dt>
|
314
313
|
|
@@ -360,8 +359,6 @@ title.annotate(montage, 0,0,0,40, 'Named Colors') {
|
|
360
359
|
</caption>
|
361
360
|
|
362
361
|
<tr>
|
363
|
-
<th>Format</th>
|
364
|
-
|
365
362
|
<th>Replaced by</th>
|
366
363
|
</tr>
|
367
364
|
|
data/doc/ex/transpose.rb
ADDED
@@ -0,0 +1,16 @@
|
|
1
|
+
#! /usr/local/bin/ruby -w
|
2
|
+
require 'RMagick'
|
3
|
+
|
4
|
+
# Demonstrate the Image#transpose method
|
5
|
+
|
6
|
+
img = Magick::Image.read('images/Flower_Hat.jpg').first
|
7
|
+
|
8
|
+
begin
|
9
|
+
img = img.transpose
|
10
|
+
rescue NotImplementedError
|
11
|
+
not_implemented = Magick::Image.read("images/notimplemented.gif").first
|
12
|
+
not_implemented.resize!(img.columns, img.rows)
|
13
|
+
img = not_implemented
|
14
|
+
end
|
15
|
+
img.write('transpose.jpg')
|
16
|
+
exit
|
@@ -0,0 +1,16 @@
|
|
1
|
+
#! /usr/local/bin/ruby -w
|
2
|
+
require 'RMagick'
|
3
|
+
|
4
|
+
# Demonstrate the Image#transverse method
|
5
|
+
|
6
|
+
img = Magick::Image.read('images/Flower_Hat.jpg').first
|
7
|
+
|
8
|
+
begin
|
9
|
+
img = img.transverse
|
10
|
+
rescue NotImplementedError
|
11
|
+
not_implemented = Magick::Image.read("images/notimplemented.gif").first
|
12
|
+
not_implemented.resize!(img.columns, img.rows)
|
13
|
+
img = not_implemented
|
14
|
+
end
|
15
|
+
img.write('transverse.jpg')
|
16
|
+
exit
|
data/doc/image1.html
CHANGED
@@ -92,6 +92,11 @@ float: left;
|
|
92
92
|
|
93
93
|
<li><a href="#spaceship"><=></a></li>
|
94
94
|
|
95
|
+
<li><a href="#adaptive_sharpen">adaptive_sharpen</a></li>
|
96
|
+
|
97
|
+
<li><a href=
|
98
|
+
"#adaptive_sharpen_channel">adaptive_sharpen_channel</a></li>
|
99
|
+
|
95
100
|
<li><a href=
|
96
101
|
"#adaptive_threshold">adaptive_threshold</a></li>
|
97
102
|
|
@@ -104,6 +109,10 @@ float: left;
|
|
104
109
|
|
105
110
|
<li><a href="#annotate">annotate</a></li>
|
106
111
|
|
112
|
+
<li><a href="#auto_orient">auto_orient</a></li>
|
113
|
+
|
114
|
+
<li><a href="#auto_orient_bang">auto_orient!</a></li>
|
115
|
+
|
107
116
|
<li><a href="#bilevel_channel">bilevel_channel</a></li>
|
108
117
|
|
109
118
|
<li><a href="#black_threshold">black_threshold</a></li>
|
@@ -119,15 +128,15 @@ float: left;
|
|
119
128
|
<li><a href="#change_geometry">change_geometry</a></li>
|
120
129
|
|
121
130
|
<li><a href="#changed_q">changed?</a></li>
|
122
|
-
|
123
|
-
<li><a href="#channel">channel</a></li>
|
124
|
-
|
125
|
-
<li><a href="#channel_depth">channel_depth</a></li>
|
126
131
|
</ul>
|
127
132
|
</div>
|
128
133
|
|
129
134
|
<div class="toccol">
|
130
135
|
<ul>
|
136
|
+
<li><a href="#channel">channel</a></li>
|
137
|
+
|
138
|
+
<li><a href="#channel_depth">channel_depth</a></li>
|
139
|
+
|
131
140
|
<li><a href="#channel_extrema">channel_extrema</a></li>
|
132
141
|
|
133
142
|
<li><a href="#channel_mean">channel_mean</a></li>
|
@@ -163,13 +172,13 @@ float: left;
|
|
163
172
|
|
164
173
|
<li><a href=
|
165
174
|
"#compress_colormap_bang">compress_colormap!</a></li>
|
166
|
-
|
167
|
-
<li><a href="#contrast">contrast</a></li>
|
168
175
|
</ul>
|
169
176
|
</div>
|
170
177
|
|
171
178
|
<div class="toccol">
|
172
179
|
<ul>
|
180
|
+
<li><a href="#contrast">contrast</a></li>
|
181
|
+
|
173
182
|
<li><a href=
|
174
183
|
"#contrast_stretch_channel">contrast_stretch_channel</a></li>
|
175
184
|
|
@@ -715,6 +724,112 @@ img = Magick::Image.read_inline(content)
|
|
715
724
|
<p>SignatureImage</p>
|
716
725
|
</div>
|
717
726
|
|
727
|
+
<div class="sig">
|
728
|
+
<h3 id="adaptive_sharpen">adaptive_sharpen</h3>
|
729
|
+
|
730
|
+
<p><span class="arg">image</span>.adaptive_sharpen(<span class=
|
731
|
+
"arg">radius</span>=0.0, <span class="arg">sigma</span>=1.0)
|
732
|
+
-> <em>anImage</em></p>
|
733
|
+
</div>
|
734
|
+
|
735
|
+
<div class="desc">
|
736
|
+
<h4>Description</h4>
|
737
|
+
|
738
|
+
<p><span class="imquote">Adaptively sharpens the image by
|
739
|
+
sharpening more intensely near image edges and less intensely
|
740
|
+
far from edges.</span> The adaptive_sharpen method sharpens
|
741
|
+
<span class="imquote">the image with a Gaussian operator of the
|
742
|
+
given</span> <span class="arg">radius</span> <span class=
|
743
|
+
"imquote">and standard deviation</span> (<span class=
|
744
|
+
"arg">sigma</span>). <span class="imquote">For reasonable
|
745
|
+
results,</span> <span class="arg">radius</span> <span class=
|
746
|
+
"imquote">should be larger than</span> <span class=
|
747
|
+
"arg">sigma</span>. <span class="imquote">Use a</span>
|
748
|
+
<span class="arg">radius</span> <span class="imquote">of 0 and
|
749
|
+
adaptive_sharpen selects a suitable</span> <span class=
|
750
|
+
"arg">radius</span> <span class="imquote">for you.</span></p>
|
751
|
+
|
752
|
+
<h4>Arguments</h4>
|
753
|
+
|
754
|
+
<dl>
|
755
|
+
<dt>radius</dt>
|
756
|
+
|
757
|
+
<dd><span class="imquote">The radius of the Gaussian in
|
758
|
+
pixels, not counting the center pixel.</span> The default is
|
759
|
+
0.0.</dd>
|
760
|
+
|
761
|
+
<dt>sigma</dt>
|
762
|
+
|
763
|
+
<dd><span class="imquote">The standard deviation of the
|
764
|
+
Laplacian, in pixels.</span> The default is 1.0.</dd>
|
765
|
+
</dl>
|
766
|
+
|
767
|
+
<h4>Returns</h4>
|
768
|
+
|
769
|
+
<p>A new image</p>
|
770
|
+
|
771
|
+
<h4>See also</h4>
|
772
|
+
|
773
|
+
<p><a href=
|
774
|
+
"#adaptive_sharpen_channel">adaptive_sharpen_channel</a></p>
|
775
|
+
|
776
|
+
<h4>Magick API</h4>
|
777
|
+
|
778
|
+
<p>AdaptiveSharpenImage (available in ImageMagick 6.2.7)</p>
|
779
|
+
</div>
|
780
|
+
|
781
|
+
<div class="sig">
|
782
|
+
<h3 id="adaptive_sharpen_channel">adaptive_sharpen_channel</h3>
|
783
|
+
|
784
|
+
<p><span class="arg">image</span>.adaptive_sharpen(<span class=
|
785
|
+
"arg">radius</span>=0.0, <span class="arg">sigma</span>=1.0
|
786
|
+
[,<span class="arg">channel</span>...]) ->
|
787
|
+
<em>anImage</em></p>
|
788
|
+
</div>
|
789
|
+
|
790
|
+
<div class="desc">
|
791
|
+
<h4>Description</h4>
|
792
|
+
|
793
|
+
<p>The same as <code>adaptive_sharpen</code> except only the
|
794
|
+
specified channels are sharpened.</p>
|
795
|
+
|
796
|
+
<h4>Arguments</h4>
|
797
|
+
|
798
|
+
<dl>
|
799
|
+
<dt>radius</dt>
|
800
|
+
|
801
|
+
<dd><span class="imquote">The radius of the Gaussian in
|
802
|
+
pixels, not counting the center pixel.</span> The default is
|
803
|
+
0.0.</dd>
|
804
|
+
|
805
|
+
<dt>sigma</dt>
|
806
|
+
|
807
|
+
<dd><span class="imquote">The standard deviation of the
|
808
|
+
Laplacian, in pixels.</span> The default is 1.0.</dd>
|
809
|
+
|
810
|
+
<dt>channel...</dt>
|
811
|
+
|
812
|
+
<dd>0 or more <a href=
|
813
|
+
"constants.html#ChannelType">ChannelType</a> arguments. If no
|
814
|
+
channels are specified, sharpens all the channels. Specifying
|
815
|
+
no channel arguments has the same effect as the
|
816
|
+
<code>adaptive_sharpen</code> method, above.</dd>
|
817
|
+
</dl>
|
818
|
+
|
819
|
+
<h4>Returns</h4>
|
820
|
+
|
821
|
+
<p>A new image</p>
|
822
|
+
|
823
|
+
<h4>See also</h4>
|
824
|
+
|
825
|
+
<p><a href="#adaptive_sharpen">adaptive_sharpen</a></p>
|
826
|
+
|
827
|
+
<h4>Magick API</h4>
|
828
|
+
|
829
|
+
<p>AdaptiveSharpenImageChannel (available in ImageMagick
|
830
|
+
6.2.7)</p>
|
831
|
+
</div>
|
832
|
+
|
718
833
|
<div class="sig">
|
719
834
|
<h3 id="adaptive_threshold">adaptive_threshold</h3>
|
720
835
|
|
@@ -960,6 +1075,65 @@ img = Magick::Image.read_inline(content)
|
|
960
1075
|
<p>self</p>
|
961
1076
|
</div>
|
962
1077
|
|
1078
|
+
<div class="sig">
|
1079
|
+
<h3 id="auto_orient">auto_orient</h3>
|
1080
|
+
|
1081
|
+
<p><span class="arg">image</span>.auto_orient ->
|
1082
|
+
<em>anImage</em></p>
|
1083
|
+
</div>
|
1084
|
+
|
1085
|
+
<div class="desc">
|
1086
|
+
<h4>Description</h4>
|
1087
|
+
|
1088
|
+
<p>Rotates or flips the image based on the image's EXIF
|
1089
|
+
orientation tag. Note that only some models of modern digital
|
1090
|
+
cameras can tag an image with the orientation. If the image
|
1091
|
+
does not have an orientation tag, or the image is already
|
1092
|
+
properly oriented, then <code>auto_orient</code> returns an
|
1093
|
+
exact copy of the image.</p>
|
1094
|
+
|
1095
|
+
<h4>Returns</h4>
|
1096
|
+
|
1097
|
+
<p>A new image</p>
|
1098
|
+
|
1099
|
+
<h4>See also</h4>
|
1100
|
+
|
1101
|
+
<p><a href="#auto_orient_bang">auto_orient!</a></p>
|
1102
|
+
|
1103
|
+
<h4>Magick API</h4>
|
1104
|
+
|
1105
|
+
<p>FlipImage, FlopImage, RotateImage, TransposeImage (available
|
1106
|
+
in ImageMagick 6.2.8), TransverseImage (available in
|
1107
|
+
ImageMagick 6.2.8)</p>
|
1108
|
+
</div>
|
1109
|
+
|
1110
|
+
<div class="sig">
|
1111
|
+
<h3 id="auto_orient_bang">auto_orient!</h3>
|
1112
|
+
|
1113
|
+
<p><span class="arg">image</span>.auto_orient! ->
|
1114
|
+
<em>self</em></p>
|
1115
|
+
</div>
|
1116
|
+
|
1117
|
+
<div class="desc">
|
1118
|
+
<h4>Description</h4>
|
1119
|
+
|
1120
|
+
<p>Rotates or flips the image based on the image's EXIF
|
1121
|
+
orientation tag. Note that only some models of modern digital
|
1122
|
+
cameras can tag an image with the orientation. If the image
|
1123
|
+
does not have an orientation tag, or the image is already
|
1124
|
+
properly oriented, then <code>auto_orient!</code> returns
|
1125
|
+
<code>nil</code>.</p>
|
1126
|
+
|
1127
|
+
<h4>Returns</h4>
|
1128
|
+
|
1129
|
+
<p>self. or <code>nil</code> if the image is already properly
|
1130
|
+
oriented</p>
|
1131
|
+
|
1132
|
+
<h4>See also</h4>
|
1133
|
+
|
1134
|
+
<p><a href="#auto_orient">auto_orient</a></p>
|
1135
|
+
</div>
|
1136
|
+
|
963
1137
|
<div class="sig">
|
964
1138
|
<h3 id="bilevel_channel">bilevel_channel</h3>
|
965
1139
|
|
@@ -3033,11 +3207,11 @@ exit
|
|
3033
3207
|
|
3034
3208
|
<h4>Magick API</h4>
|
3035
3209
|
|
3036
|
-
<p>DispatchImage, or ExportImagePixels
|
3210
|
+
<p>DispatchImage (GraphicsMagick), or ExportImagePixels (ImageMagick)</p>
|
3037
3211
|
|
3038
3212
|
<h4>Note</h4>
|
3039
3213
|
|
3040
|
-
<p>This method is deprecated in ImageMagick
|
3214
|
+
<p>This method is deprecated in ImageMagick.
|
3041
3215
|
Use the <code>export_pixels</code> method instead.</p>
|
3042
3216
|
</div>
|
3043
3217
|
|
data/doc/image2.html
CHANGED
@@ -432,8 +432,11 @@ scanline = img.export_pixels(0, r, img.columns, 1, "RGB");
|
|
432
432
|
|
433
433
|
<h4>See also</h4>
|
434
434
|
|
435
|
-
<p><a href="#
|
436
|
-
<a href="
|
435
|
+
<p><a href="image1.html#affine_transform">affine_transform</a>,
|
436
|
+
<a href="#flip_bang">flip!</a>, <a href="#flop">flop</a>,
|
437
|
+
<a href="image3.html#rotate">rotate</a>, <a href=
|
438
|
+
"image3.html#transpose">transpose</a>, <a href=
|
439
|
+
"image3.html#transverse">transverse</a></p>
|
437
440
|
|
438
441
|
<h4>Magick API</h4>
|
439
442
|
|
@@ -485,8 +488,11 @@ scanline = img.export_pixels(0, r, img.columns, 1, "RGB");
|
|
485
488
|
|
486
489
|
<h4>See also</h4>
|
487
490
|
|
488
|
-
<p><a href="#
|
489
|
-
<a href="
|
491
|
+
<p><a href="image1.html#affine_transform">affine_transform</a>,
|
492
|
+
<a href="#flip">flip</a>, <a href="#flop_bang">flop!</a>,
|
493
|
+
<a href="image3.html#rotate">rotate</a>, <a href=
|
494
|
+
"image3.html#transpose">transpose</a>, <a href=
|
495
|
+
"image3.html#transverse">transverse</a></p>
|
490
496
|
|
491
497
|
<h4>Magick API</h4>
|
492
498
|
|
@@ -572,12 +578,9 @@ scanline = img.export_pixels(0, r, img.columns, 1, "RGB");
|
|
572
578
|
src="ex/images/Flower_Hat.jpg" alt="frame example" title=
|
573
579
|
"Click to see the example script" /><!--
|
574
580
|
This img tag displays the framed image when the mouse is not over
|
575
|
-
--><img
|
576
|
-
|
577
|
-
"
|
578
|
-
"ex/frame.jpg" alt="frame example" name="framed" /></a>
|
579
|
-
<img src="ex/images/spin.gif" alt="" style=
|
580
|
-
"margin-bottom: 280px" title=
|
581
|
+
--><img onmouseover="this.style.display='none';frameless.style.display='';"
|
582
|
+
src="ex/frame.jpg" alt="frame example" /></a> <img src=
|
583
|
+
"ex/images/spin.gif" alt="" style="margin-bottom: 280px" title=
|
581
584
|
"Mouse over the example to see the original image" /></p>
|
582
585
|
|
583
586
|
<h4>See also</h4>
|
data/doc/image3.html
CHANGED
@@ -83,6 +83,9 @@
|
|
83
83
|
|
84
84
|
<li><a href="#radial_blur">radial_blur</a></li>
|
85
85
|
|
86
|
+
<li><a href=
|
87
|
+
"#radial_blur_channel">radial_blur_channel</a></li>
|
88
|
+
|
86
89
|
<li><a href="#raise">raise</a></li>
|
87
90
|
|
88
91
|
<li><a href=
|
@@ -155,15 +158,15 @@
|
|
155
158
|
<li><a href="#stereo">stereo</a></li>
|
156
159
|
|
157
160
|
<li><a href="#store_pixels">store_pixels</a></li>
|
158
|
-
</ul>
|
159
|
-
</div>
|
160
161
|
|
161
|
-
<div class="toccol">
|
162
|
-
<ul>
|
163
162
|
<li><a href="#strip_bang">strip!</a></li>
|
164
163
|
|
165
164
|
<li><a href="#swirl">swirl</a></li>
|
165
|
+
</ul>
|
166
|
+
</div>
|
166
167
|
|
168
|
+
<div class="toccol">
|
169
|
+
<ul>
|
167
170
|
<li><a href=
|
168
171
|
"#texture_fill_to_border">texture_fill_to_border</a></li>
|
169
172
|
|
@@ -182,6 +185,14 @@
|
|
182
185
|
|
183
186
|
<li><a href="#transparent">transparent</a></li>
|
184
187
|
|
188
|
+
<li><a href="#transpose">transpose</a></li>
|
189
|
+
|
190
|
+
<li><a href="#transpose_bang">transpose!</a></li>
|
191
|
+
|
192
|
+
<li><a href="#transverse">transverse</a></li>
|
193
|
+
|
194
|
+
<li><a href="#transverse_bang">transverse!</a></li>
|
195
|
+
|
185
196
|
<li><a href="#trim">trim</a></li>
|
186
197
|
|
187
198
|
<li><a href="#trim_bang">trim!</a></li>
|
@@ -635,13 +646,55 @@ img.quantum_operator(DivideQuantumOperator, 2, RedChannel)
|
|
635
646
|
|
636
647
|
<p><a href="image1.html#blur_image">blur_image</a>, <a href=
|
637
648
|
"image2.html#gaussian_blur">gaussian_blur</a>, <a href=
|
638
|
-
"image2.html#motion_blur">motion_blur</a
|
649
|
+
"image2.html#motion_blur">motion_blur</a>, <a href=
|
650
|
+
"#radial_blur_channel">radial_blur_channel</a></p>
|
639
651
|
|
640
652
|
<h4>Magick API</h4>
|
641
653
|
|
642
654
|
<p>RadialBlurImage</p>
|
643
655
|
</div>
|
644
656
|
|
657
|
+
<div class="sig">
|
658
|
+
<h3 id="radial_blur_channel">radial_blur_channel</h3>
|
659
|
+
|
660
|
+
<p><span class=
|
661
|
+
"arg">image</span>.radial_blur_channel(<span class=
|
662
|
+
"arg">aFloat</span> [, <span class="arg">channel</span>...])
|
663
|
+
-> <em>anImage</em></p>
|
664
|
+
</div>
|
665
|
+
|
666
|
+
<div class="desc">
|
667
|
+
<h4>Description</h4>
|
668
|
+
|
669
|
+
<p>Applies a radial blur to the selected image channels.</p>
|
670
|
+
|
671
|
+
<h4>Arguments</h4>
|
672
|
+
|
673
|
+
<dl>
|
674
|
+
<dt>angle</dt>
|
675
|
+
|
676
|
+
<dd>Amount of blur, in degrees</dd>
|
677
|
+
|
678
|
+
<dt>channel...</dt>
|
679
|
+
|
680
|
+
<dd>0 or more <a href=
|
681
|
+
"constants.html#ChannelType">ChannelType</a> arguments. If no
|
682
|
+
channels are specified, all the channels are blurred.</dd>
|
683
|
+
</dl>
|
684
|
+
|
685
|
+
<h4>Returns</h4>
|
686
|
+
|
687
|
+
<p>A new image</p>
|
688
|
+
|
689
|
+
<h4>See also</h4>
|
690
|
+
|
691
|
+
<p><a href="#radial_blur">radial_blur</a></p>
|
692
|
+
|
693
|
+
<h4>Magick API</h4>
|
694
|
+
|
695
|
+
<p>RadialBlurImageChannel (available in ImageMagick 6.2.4)</p>
|
696
|
+
</div>
|
697
|
+
|
645
698
|
<div class="sig">
|
646
699
|
<h3 id="raise">raise</h3>
|
647
700
|
|
@@ -1022,13 +1075,13 @@ random_threshold_channel(geom, RedChannel)
|
|
1022
1075
|
<div class="desc">
|
1023
1076
|
<h4>Description</h4>
|
1024
1077
|
|
1025
|
-
<p>Rotate the receiver by the specified angle.
|
1026
|
-
|
1027
|
-
|
1028
|
-
|
1029
|
-
|
1030
|
-
|
1031
|
-
|
1078
|
+
<p>Rotate the receiver by the specified angle. Positive angles
|
1079
|
+
rotate clockwise while negative angles rotate
|
1080
|
+
counter-clockwise. <span class="imquote">Rotated images are
|
1081
|
+
usually larger than the originals and have "empty" triangular
|
1082
|
+
corners. Empty triangles left over from shearing the image are
|
1083
|
+
filled with the color defined by the pixel at location
|
1084
|
+
(0,0).</span></p>
|
1032
1085
|
|
1033
1086
|
<h4>Arguments</h4>
|
1034
1087
|
|
@@ -1501,7 +1554,7 @@ random_threshold_channel(geom, RedChannel)
|
|
1501
1554
|
id="shadowed" onmouseover=
|
1502
1555
|
"this.style.display='none';shadowless.style.display='';" src=
|
1503
1556
|
"ex/shadow_after.gif" alt="shadow example"
|
1504
|
-
|
1557
|
+
/></a> <img src="ex/images/spin.gif" alt="" style=
|
1505
1558
|
"margin-bottom: 120px" title=
|
1506
1559
|
"Mouse over the example to see the original image" /></p>
|
1507
1560
|
|
@@ -1719,7 +1772,7 @@ random_threshold_channel(geom, RedChannel)
|
|
1719
1772
|
<img id="sheared" onmouseover=
|
1720
1773
|
"this.style.display='none'; noshear.style.display='';" src=
|
1721
1774
|
"ex/shear.jpg" alt="shear example"
|
1722
|
-
|
1775
|
+
/></a><img src="ex/images/spin.gif" alt="" class=
|
1723
1776
|
"spin" style="left: 253px; top: 34px" title=
|
1724
1777
|
"Mouse over the example to see the original image" /></p>
|
1725
1778
|
|
@@ -2679,6 +2732,124 @@ img.to_color(pixel)
|
|
2679
2732
|
<p>TransparentImage</p>
|
2680
2733
|
</div>
|
2681
2734
|
|
2735
|
+
<div class="sig">
|
2736
|
+
<h3 id="transpose">transpose</h3>
|
2737
|
+
|
2738
|
+
<p><span class="arg">image</span>.transpose ->
|
2739
|
+
<em>anImage</em></p>
|
2740
|
+
</div>
|
2741
|
+
|
2742
|
+
<div class="desc">
|
2743
|
+
<h4>Description</h4>
|
2744
|
+
|
2745
|
+
<p class="imquote">Creates a horizontal mirror image by
|
2746
|
+
reflecting the pixels around the central y-axis while rotating
|
2747
|
+
them by 90 degrees.</p>
|
2748
|
+
|
2749
|
+
<h4>Returns</h4>
|
2750
|
+
|
2751
|
+
<p>A new image</p>
|
2752
|
+
|
2753
|
+
<h4>Example</h4>
|
2754
|
+
|
2755
|
+
<p class="rollover"><a href=
|
2756
|
+
"javascript:popup('transpose.rb.html')"><img src=
|
2757
|
+
"ex/transpose.jpg" alt="transpose example" title=
|
2758
|
+
"Click to see the example script" onmouseover=
|
2759
|
+
"this.src='ex/images/Flower_Hat.jpg'" onmouseout=
|
2760
|
+
"this.src='ex/transpose.jpg'" /></a> <img src=
|
2761
|
+
"ex/images/spin.gif" alt="" class="spin" style="left:252px;"
|
2762
|
+
title="Mouse over the example to see the original image" /></p>
|
2763
|
+
|
2764
|
+
<h4>See also</h4>
|
2765
|
+
|
2766
|
+
<p><a href="image2.html#flip">flip</a>, <a href=
|
2767
|
+
"image2.html#flop">flop</a>, <a href=
|
2768
|
+
"image3.html#rotate">rotate</a>, <a href=
|
2769
|
+
"#transpose_bang">transpose!</a>, <a href=
|
2770
|
+
"image3.html#transverse">transverse</a></p>
|
2771
|
+
|
2772
|
+
<h4>Magick API</h4>
|
2773
|
+
|
2774
|
+
<p>TransposeImage (available in ImageMagick 6.2.8)</p>
|
2775
|
+
</div>
|
2776
|
+
|
2777
|
+
<div class="sig">
|
2778
|
+
<h3 id="transpose_bang">transpose!</h3>
|
2779
|
+
|
2780
|
+
<p><span class="arg">image</span>.transpose! ->
|
2781
|
+
<em>self</em></p>
|
2782
|
+
</div>
|
2783
|
+
|
2784
|
+
<div class="desc">
|
2785
|
+
<h4>Description</h4>
|
2786
|
+
|
2787
|
+
<p>In-place form of <a href="#transpose">transpose</a>.</p>
|
2788
|
+
|
2789
|
+
<h4>Returns</h4>
|
2790
|
+
|
2791
|
+
<p>self</p>
|
2792
|
+
</div>
|
2793
|
+
|
2794
|
+
<div class="sig">
|
2795
|
+
<h3 id="transverse">transverse</h3>
|
2796
|
+
|
2797
|
+
<p><span class="arg">image</span>.transverse ->
|
2798
|
+
<em>anImage</em></p>
|
2799
|
+
</div>
|
2800
|
+
|
2801
|
+
<div class="desc">
|
2802
|
+
<h4>Description</h4>
|
2803
|
+
|
2804
|
+
<p class="imquote">Creates a vertical mirror image by
|
2805
|
+
reflecting the pixels around the central x-axis while rotating
|
2806
|
+
them by 270 degrees</p>
|
2807
|
+
|
2808
|
+
<h4>Returns</h4>
|
2809
|
+
|
2810
|
+
<p>A new image</p>
|
2811
|
+
|
2812
|
+
<h4>Example</h4>
|
2813
|
+
|
2814
|
+
<p class="rollover"><a href=
|
2815
|
+
"javascript:popup('transverse.rb.html')"><img src=
|
2816
|
+
"ex/transverse.jpg" alt="transverse example" title=
|
2817
|
+
"Click to see the example script" onmouseover=
|
2818
|
+
"this.src='ex/images/Flower_Hat.jpg'" onmouseout=
|
2819
|
+
"this.src='ex/transverse.jpg'" /></a> <img src=
|
2820
|
+
"ex/images/spin.gif" alt="" class="spin" style="left:252px;"
|
2821
|
+
title="Mouse over the example to see the original image" /></p>
|
2822
|
+
|
2823
|
+
<h4>See also</h4>
|
2824
|
+
|
2825
|
+
<p><a href="image2.html#flip">flip</a>, <a href=
|
2826
|
+
"image2.html#flop">flop</a>, <a href=
|
2827
|
+
"image3.html#rotate">rotate</a>, <a href=
|
2828
|
+
"image3.html#transpose">transpose</a>, <a href=
|
2829
|
+
"#transverse_bang">transverse!</a></p>
|
2830
|
+
|
2831
|
+
<h4>Magick API</h4>
|
2832
|
+
|
2833
|
+
<p>TransposeImage (available in ImageMagick 6.2.8)</p>
|
2834
|
+
</div>
|
2835
|
+
|
2836
|
+
<div class="sig">
|
2837
|
+
<h3 id="transverse_bang">transverse!</h3>
|
2838
|
+
|
2839
|
+
<p><span class="arg">image</span>.transverse! ->
|
2840
|
+
<em>self</em></p>
|
2841
|
+
</div>
|
2842
|
+
|
2843
|
+
<div class="desc">
|
2844
|
+
<h4>Description</h4>
|
2845
|
+
|
2846
|
+
<p>In-place form of <a href="#transverse">transverse</a>.</p>
|
2847
|
+
|
2848
|
+
<h4>Returns</h4>
|
2849
|
+
|
2850
|
+
<p>self</p>
|
2851
|
+
</div>
|
2852
|
+
|
2682
2853
|
<div class="sig">
|
2683
2854
|
<h3 id="trim">trim</h3>
|
2684
2855
|
|