vips 8.7.0.1 → 8.8.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (47) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +25 -22
  3. data/CHANGELOG.md +266 -0
  4. data/example/annotate.rb +2 -2
  5. data/example/daltonize8.rb +14 -14
  6. data/example/example2.rb +6 -6
  7. data/example/example3.rb +5 -5
  8. data/example/example4.rb +4 -4
  9. data/example/example5.rb +2 -2
  10. data/example/inheritance_with_refcount.rb +207 -207
  11. data/example/thumb.rb +10 -10
  12. data/example/trim8.rb +2 -2
  13. data/example/watermark.rb +14 -35
  14. data/example/wobble.rb +24 -24
  15. data/lib/vips.rb +335 -306
  16. data/lib/vips/access.rb +9 -9
  17. data/lib/vips/align.rb +7 -7
  18. data/lib/vips/angle.rb +8 -8
  19. data/lib/vips/angle45.rb +12 -12
  20. data/lib/vips/bandformat.rb +16 -16
  21. data/lib/vips/blend_mode.rb +34 -0
  22. data/lib/vips/coding.rb +11 -11
  23. data/lib/vips/compass_direction.rb +13 -13
  24. data/lib/vips/direction.rb +7 -7
  25. data/lib/vips/extend.rb +13 -13
  26. data/lib/vips/gobject.rb +94 -94
  27. data/lib/vips/gvalue.rb +232 -232
  28. data/lib/vips/image.rb +1329 -1327
  29. data/lib/vips/interesting.rb +10 -10
  30. data/lib/vips/interpolate.rb +51 -51
  31. data/lib/vips/interpretation.rb +25 -25
  32. data/lib/vips/kernel.rb +18 -18
  33. data/lib/vips/methods.rb +2226 -2139
  34. data/lib/vips/object.rb +208 -208
  35. data/lib/vips/operation.rb +323 -321
  36. data/lib/vips/operationboolean.rb +10 -10
  37. data/lib/vips/operationcomplex.rb +8 -8
  38. data/lib/vips/operationcomplex2.rb +6 -6
  39. data/lib/vips/operationcomplexget.rb +7 -7
  40. data/lib/vips/operationmath.rb +14 -14
  41. data/lib/vips/operationmath2.rb +6 -6
  42. data/lib/vips/operationrelational.rb +11 -11
  43. data/lib/vips/operationround.rb +7 -7
  44. data/lib/vips/size.rb +9 -9
  45. data/lib/vips/version.rb +1 -1
  46. data/vips.gemspec +1 -1
  47. metadata +9 -8
@@ -1,14 +1,14 @@
1
1
  module Vips
2
2
 
3
- # Pick the algorithm vips uses to decide image "interestingness". This is
4
- # used by {Image#smartcrop}, for example, to decide what parts of the image
5
- # to keep.
6
- #
7
- # * `:none` do nothing
8
- # * `:centre` just take the centre
9
- # * `:entropy` use an entropy measure
10
- # * `:attention` look for features likely to draw human attention
3
+ # Pick the algorithm vips uses to decide image "interestingness". This is
4
+ # used by {Image#smartcrop}, for example, to decide what parts of the image
5
+ # to keep.
6
+ #
7
+ # * `:none` do nothing
8
+ # * `:centre` just take the centre
9
+ # * `:entropy` use an entropy measure
10
+ # * `:attention` look for features likely to draw human attention
11
11
 
12
- class Interesting < Symbol
13
- end
12
+ class Interesting < Symbol
13
+ end
14
14
  end
@@ -1,62 +1,62 @@
1
1
  module Vips
2
2
 
3
- attach_function :vips_interpolate_new, [:string], :pointer
4
-
5
- # An interpolator. One of these can be given to operations like
6
- # {Image#affine} or {Image#mapim} to select the type of pixel interpolation
7
- # to use.
8
- #
9
- # To see all interpolators supported by your
10
- # libvips, try
11
- #
12
- # ```
13
- # $ vips -l interpolate
14
- # ```
15
- #
16
- # But at least these should be available:
17
- #
18
- # * `:nearest` Nearest-neighbour interpolation.
19
- # * `:bilinear` Bilinear interpolation.
20
- # * `:bicubic` Bicubic interpolation.
21
- # * `:lbb` Reduced halo bicubic interpolation.
22
- # * `:nohalo` Edge sharpening resampler with halo reduction.
23
- # * `:vsqbs` B-Splines with antialiasing smoothing.
24
- #
25
- # For example:
26
- #
27
- # ```ruby
28
- # im = im.affine [2, 0, 0, 2],
29
- # :interpolate => Vips::Interpolate.new(:bicubic)
30
- # ```
31
-
32
- class Interpolate < Vips::Object
33
-
34
- # the layout of the VipsInterpolate struct
35
- module InterpolateLayout
36
- def self.included base
37
- base.class_eval do
38
- layout :parent, Vips::Object::Struct
39
- # rest opaque
40
- end
41
- end
3
+ attach_function :vips_interpolate_new, [:string], :pointer
4
+
5
+ # An interpolator. One of these can be given to operations like
6
+ # {Image#affine} or {Image#mapim} to select the type of pixel interpolation
7
+ # to use.
8
+ #
9
+ # To see all interpolators supported by your
10
+ # libvips, try
11
+ #
12
+ # ```
13
+ # $ vips -l interpolate
14
+ # ```
15
+ #
16
+ # But at least these should be available:
17
+ #
18
+ # * `:nearest` Nearest-neighbour interpolation.
19
+ # * `:bilinear` Bilinear interpolation.
20
+ # * `:bicubic` Bicubic interpolation.
21
+ # * `:lbb` Reduced halo bicubic interpolation.
22
+ # * `:nohalo` Edge sharpening resampler with halo reduction.
23
+ # * `:vsqbs` B-Splines with antialiasing smoothing.
24
+ #
25
+ # For example:
26
+ #
27
+ # ```ruby
28
+ # im = im.affine [2, 0, 0, 2],
29
+ # :interpolate => Vips::Interpolate.new(:bicubic)
30
+ # ```
31
+
32
+ class Interpolate < Vips::Object
33
+
34
+ # the layout of the VipsInterpolate struct
35
+ module InterpolateLayout
36
+ def self.included base
37
+ base.class_eval do
38
+ layout :parent, Vips::Object::Struct
39
+ # rest opaque
42
40
  end
41
+ end
42
+ end
43
43
 
44
- class Struct < Vips::Object::Struct
45
- include InterpolateLayout
46
-
47
- end
44
+ class Struct < Vips::Object::Struct
45
+ include InterpolateLayout
48
46
 
49
- class ManagedStruct < Vips::Object::ManagedStruct
50
- include InterpolateLayout
47
+ end
51
48
 
52
- end
49
+ class ManagedStruct < Vips::Object::ManagedStruct
50
+ include InterpolateLayout
53
51
 
54
- def initialize name
55
- ptr = Vips::vips_interpolate_new name
56
- raise Vips::Error if ptr == nil
52
+ end
57
53
 
58
- super ptr
59
- end
54
+ def initialize name
55
+ ptr = Vips::vips_interpolate_new name
56
+ raise Vips::Error if ptr == nil
60
57
 
58
+ super ptr
61
59
  end
60
+
61
+ end
62
62
  end
@@ -1,28 +1,28 @@
1
1
  module Vips
2
2
 
3
- # How the values in an image should be interpreted. For example, a
4
- # three-band float image of type :lab should have its
5
- # pixels interpreted as coordinates in CIE Lab space.
6
- #
7
- # * `:multiband` generic many-band image
8
- # * `:b_w` some kind of single-band image
9
- # * `:histogram` a 1D image, eg. histogram or lookup table
10
- # * `:fourier` image is in fourier space
11
- # * `:xyz` the first three bands are CIE XYZ
12
- # * `:lab` pixels are in CIE Lab space
13
- # * `:cmyk` the first four bands are in CMYK space
14
- # * `:labq` implies #VIPS_CODING_LABQ
15
- # * `:rgb` generic RGB space
16
- # * `:cmc` a uniform colourspace based on CMC(1:1)
17
- # * `:lch` pixels are in CIE LCh space
18
- # * `:labs` CIE LAB coded as three signed 16-bit values
19
- # * `:srgb` pixels are sRGB
20
- # * `:hsv` pixels are HSV
21
- # * `:scrgb` pixels are scRGB
22
- # * `:yxy` pixels are CIE Yxy
23
- # * `:rgb16` generic 16-bit RGB
24
- # * `:grey16` generic 16-bit mono
25
- # * `:matrix` a matrix
26
- class Interpretation < Symbol
27
- end
3
+ # How the values in an image should be interpreted. For example, a
4
+ # three-band float image of type :lab should have its
5
+ # pixels interpreted as coordinates in CIE Lab space.
6
+ #
7
+ # * `:multiband` generic many-band image
8
+ # * `:b_w` some kind of single-band image
9
+ # * `:histogram` a 1D image, eg. histogram or lookup table
10
+ # * `:fourier` image is in fourier space
11
+ # * `:xyz` the first three bands are CIE XYZ
12
+ # * `:lab` pixels are in CIE Lab space
13
+ # * `:cmyk` the first four bands are in CMYK space
14
+ # * `:labq` implies #VIPS_CODING_LABQ
15
+ # * `:rgb` generic RGB space
16
+ # * `:cmc` a uniform colourspace based on CMC(1:1)
17
+ # * `:lch` pixels are in CIE LCh space
18
+ # * `:labs` CIE LAB coded as three signed 16-bit values
19
+ # * `:srgb` pixels are sRGB
20
+ # * `:hsv` pixels are HSV
21
+ # * `:scrgb` pixels are scRGB
22
+ # * `:yxy` pixels are CIE Yxy
23
+ # * `:rgb16` generic 16-bit RGB
24
+ # * `:grey16` generic 16-bit mono
25
+ # * `:matrix` a matrix
26
+ class Interpretation < Symbol
27
+ end
28
28
  end
data/lib/vips/kernel.rb CHANGED
@@ -1,22 +1,22 @@
1
1
  module Vips
2
2
 
3
- # A resizing kernel. One of these can be given to operations like
4
- # {Image#reduceh} or {Image#resize} to select the resizing kernel to use.
5
- #
6
- # At least these should be available:
7
- #
8
- # * `:nearest` Nearest-neighbour interpolation.
9
- # * `:linear` Linear interpolation.
10
- # * `:cubic` Cubic interpolation.
11
- # * `:lanczos2` Two-lobe Lanczos
12
- # * `:lanczos3` Three-lobe Lanczos
13
- #
14
- # For example:
15
- #
16
- # ```ruby
17
- # im = im.resize 3, :kernel => :lanczos2
18
- # ```
3
+ # A resizing kernel. One of these can be given to operations like
4
+ # {Image#reduceh} or {Image#resize} to select the resizing kernel to use.
5
+ #
6
+ # At least these should be available:
7
+ #
8
+ # * `:nearest` Nearest-neighbour interpolation.
9
+ # * `:linear` Linear interpolation.
10
+ # * `:cubic` Cubic interpolation.
11
+ # * `:lanczos2` Two-lobe Lanczos
12
+ # * `:lanczos3` Three-lobe Lanczos
13
+ #
14
+ # For example:
15
+ #
16
+ # ```ruby
17
+ # im = im.resize 3, :kernel => :lanczos2
18
+ # ```
19
19
 
20
- class Kernel < Symbol
21
- end
20
+ class Kernel < Symbol
21
+ end
22
22
  end
data/lib/vips/methods.rb CHANGED
@@ -1,2145 +1,2232 @@
1
1
  module Vips
2
2
  class Image
3
3
 
4
- # @!method self.system(cmd_format, opts = {})
5
- # Run an external command.
6
- # @param cmd_format [String] Command to run
7
- # @param opts [Hash] Set of options
8
- # @option opts [Array<Image>] :im Array of input images
9
- # @option opts [String] :out_format Format for output filename
10
- # @option opts [String] :in_format Format for input filename
11
- # @option opts [Vips::Image] :out Output Output image
12
- # @option opts [String] :log Output Command log
13
- # @return [nil, Hash<Symbol => Object>] Hash of optional output items
14
-
15
- # @!method add(right, opts = {})
16
- # Add two images.
17
- # @param right [Vips::Image] Right-hand image argument
18
- # @param opts [Hash] Set of options
19
- # @return [Vips::Image] Output image
20
-
21
- # @!method subtract(right, opts = {})
22
- # Subtract two images.
23
- # @param right [Vips::Image] Right-hand image argument
24
- # @param opts [Hash] Set of options
25
- # @return [Vips::Image] Output image
26
-
27
- # @!method multiply(right, opts = {})
28
- # Multiply two images.
29
- # @param right [Vips::Image] Right-hand image argument
30
- # @param opts [Hash] Set of options
31
- # @return [Vips::Image] Output image
32
-
33
- # @!method divide(right, opts = {})
34
- # Divide two images.
35
- # @param right [Vips::Image] Right-hand image argument
36
- # @param opts [Hash] Set of options
37
- # @return [Vips::Image] Output image
38
-
39
- # @!method relational(right, relational, opts = {})
40
- # Relational operation on two images.
41
- # @param right [Vips::Image] Right-hand image argument
42
- # @param relational [Vips::OperationRelational] relational to perform
43
- # @param opts [Hash] Set of options
44
- # @return [Vips::Image] Output image
45
-
46
- # @!method remainder(right, opts = {})
47
- # Remainder after integer division of two images.
48
- # @param right [Vips::Image] Right-hand image argument
49
- # @param opts [Hash] Set of options
50
- # @return [Vips::Image] Output image
51
-
52
- # @!method boolean(right, boolean, opts = {})
53
- # Boolean operation on two images.
54
- # @param right [Vips::Image] Right-hand image argument
55
- # @param boolean [Vips::OperationBoolean] boolean to perform
56
- # @param opts [Hash] Set of options
57
- # @return [Vips::Image] Output image
58
-
59
- # @!method math2(right, math2, opts = {})
60
- # Binary math operations.
61
- # @param right [Vips::Image] Right-hand image argument
62
- # @param math2 [Vips::OperationMath2] math to perform
63
- # @param opts [Hash] Set of options
64
- # @return [Vips::Image] Output image
65
-
66
- # @!method complex2(right, cmplx, opts = {})
67
- # Complex binary operations on two images.
68
- # @param right [Vips::Image] Right-hand image argument
69
- # @param cmplx [Vips::OperationComplex2] binary complex operation to perform
70
- # @param opts [Hash] Set of options
71
- # @return [Vips::Image] Output image
72
-
73
- # @!method complexform(right, opts = {})
74
- # Form a complex image from two real images.
75
- # @param right [Vips::Image] Right-hand image argument
76
- # @param opts [Hash] Set of options
77
- # @return [Vips::Image] Output image
78
-
79
- # @!method self.sum(im, opts = {})
80
- # Sum an array of images.
81
- # @param im [Array<Image>] Array of input images
82
- # @param opts [Hash] Set of options
83
- # @return [Vips::Image] Output image
84
-
85
- # @!method invert(opts = {})
86
- # Invert an image.
87
- # @param opts [Hash] Set of options
88
- # @return [Vips::Image] Output image
89
-
90
- # @!method linear(a, b, opts = {})
91
- # Calculate (a * in + b).
92
- # @param a [Array<Double>] Multiply by this
93
- # @param b [Array<Double>] Add this
94
- # @param opts [Hash] Set of options
95
- # @option opts [Boolean] :uchar Output should be uchar
96
- # @return [Vips::Image] Output image
97
-
98
- # @!method math(math, opts = {})
99
- # Apply a math operation to an image.
100
- # @param math [Vips::OperationMath] math to perform
101
- # @param opts [Hash] Set of options
102
- # @return [Vips::Image] Output image
103
-
104
- # @!method abs(opts = {})
105
- # Absolute value of an image.
106
- # @param opts [Hash] Set of options
107
- # @return [Vips::Image] Output image
108
-
109
- # @!method sign(opts = {})
110
- # Unit vector of pixel.
111
- # @param opts [Hash] Set of options
112
- # @return [Vips::Image] Output image
113
-
114
- # @!method round(round, opts = {})
115
- # Perform a round function on an image.
116
- # @param round [Vips::OperationRound] rounding operation to perform
117
- # @param opts [Hash] Set of options
118
- # @return [Vips::Image] Output image
119
-
120
- # @!method relational_const(relational, c, opts = {})
121
- # Relational operations against a constant.
122
- # @param relational [Vips::OperationRelational] relational to perform
123
- # @param c [Array<Double>] Array of constants
124
- # @param opts [Hash] Set of options
125
- # @return [Vips::Image] Output image
126
-
127
- # @!method remainder_const(c, opts = {})
128
- # Remainder after integer division of an image and a constant.
129
- # @param c [Array<Double>] Array of constants
130
- # @param opts [Hash] Set of options
131
- # @return [Vips::Image] Output image
132
-
133
- # @!method boolean_const(boolean, c, opts = {})
134
- # Boolean operations against a constant.
135
- # @param boolean [Vips::OperationBoolean] boolean to perform
136
- # @param c [Array<Double>] Array of constants
137
- # @param opts [Hash] Set of options
138
- # @return [Vips::Image] Output image
139
-
140
- # @!method math2_const(math2, c, opts = {})
141
- # Binary math operations with a constant.
142
- # @param math2 [Vips::OperationMath2] math to perform
143
- # @param c [Array<Double>] Array of constants
144
- # @param opts [Hash] Set of options
145
- # @return [Vips::Image] Output image
146
-
147
- # @!method complex(cmplx, opts = {})
148
- # Perform a complex operation on an image.
149
- # @param cmplx [Vips::OperationComplex] complex to perform
150
- # @param opts [Hash] Set of options
151
- # @return [Vips::Image] Output image
152
-
153
- # @!method complexget(get, opts = {})
154
- # Get a component from a complex image.
155
- # @param get [Vips::OperationComplexget] complex to perform
156
- # @param opts [Hash] Set of options
157
- # @return [Vips::Image] Output image
158
-
159
- # @!method avg(opts = {})
160
- # Find image average.
161
- # @param opts [Hash] Set of options
162
- # @return [Float] Output value
163
-
164
- # @!method min(opts = {})
165
- # Find image minimum.
166
- # @param opts [Hash] Set of options
167
- # @option opts [Integer] :size Number of minimum values to find
168
- # @option opts [Integer] :x Output Horizontal position of minimum
169
- # @option opts [Integer] :y Output Vertical position of minimum
170
- # @option opts [Array<Double>] :out_array Output Array of output values
171
- # @option opts [Array<Integer>] :x_array Output Array of horizontal positions
172
- # @option opts [Array<Integer>] :y_array Output Array of vertical positions
173
- # @return [Float, Hash<Symbol => Object>] Output value, Hash of optional output items
174
-
175
- # @!method max(opts = {})
176
- # Find image maximum.
177
- # @param opts [Hash] Set of options
178
- # @option opts [Integer] :size Number of maximum values to find
179
- # @option opts [Integer] :x Output Horizontal position of maximum
180
- # @option opts [Integer] :y Output Vertical position of maximum
181
- # @option opts [Array<Double>] :out_array Output Array of output values
182
- # @option opts [Array<Integer>] :x_array Output Array of horizontal positions
183
- # @option opts [Array<Integer>] :y_array Output Array of vertical positions
184
- # @return [Float, Hash<Symbol => Object>] Output value, Hash of optional output items
185
-
186
- # @!method deviate(opts = {})
187
- # Find image standard deviation.
188
- # @param opts [Hash] Set of options
189
- # @return [Float] Output value
190
-
191
- # @!method stats(opts = {})
192
- # Find image average.
193
- # @param opts [Hash] Set of options
194
- # @return [Vips::Image] Output array of statistics
195
-
196
- # @!method hist_find(opts = {})
197
- # Find image histogram.
198
- # @param opts [Hash] Set of options
199
- # @option opts [Integer] :band Find histogram of band
200
- # @return [Vips::Image] Output histogram
201
-
202
- # @!method hist_find_ndim(opts = {})
203
- # Find n-dimensional image histogram.
204
- # @param opts [Hash] Set of options
205
- # @option opts [Integer] :bins Number of bins in each dimension
206
- # @return [Vips::Image] Output histogram
207
-
208
- # @!method hist_find_indexed(index, opts = {})
209
- # Find indexed image histogram.
210
- # @param index [Vips::Image] Index image
211
- # @param opts [Hash] Set of options
212
- # @option opts [Vips::Combine] :combine Combine bins like this
213
- # @return [Vips::Image] Output histogram
214
-
215
- # @!method hough_line(opts = {})
216
- # Find hough line transform.
217
- # @param opts [Hash] Set of options
218
- # @option opts [Integer] :width horizontal size of parameter space
219
- # @option opts [Integer] :height Vertical size of parameter space
220
- # @return [Vips::Image] Output image
221
-
222
- # @!method hough_circle(opts = {})
223
- # Find hough circle transform.
224
- # @param opts [Hash] Set of options
225
- # @option opts [Integer] :scale Scale down dimensions by this factor
226
- # @option opts [Integer] :min_radius Smallest radius to search for
227
- # @option opts [Integer] :max_radius Largest radius to search for
228
- # @return [Vips::Image] Output image
229
-
230
- # @!method project(opts = {})
231
- # Find image projections.
232
- # @param opts [Hash] Set of options
233
- # @return [Array<] Sums of columns, Sums of rows
234
-
235
- # @!method profile(opts = {})
236
- # Find image profiles.
237
- # @param opts [Hash] Set of options
238
- # @return [Array<] First non-zero pixel in column, First non-zero pixel in row
239
-
240
- # @!method measure(h, v, opts = {})
241
- # Measure a set of patches on a color chart.
242
- # @param h [Integer] Number of patches across chart
243
- # @param v [Integer] Number of patches down chart
244
- # @param opts [Hash] Set of options
245
- # @option opts [Integer] :left Left edge of extract area
246
- # @option opts [Integer] :top Top edge of extract area
247
- # @option opts [Integer] :width Width of extract area
248
- # @option opts [Integer] :height Height of extract area
249
- # @return [Vips::Image] Output array of statistics
250
-
251
- # @!method getpoint(x, y, opts = {})
252
- # Read a point from an image.
253
- # @param x [Integer] Point to read
254
- # @param y [Integer] Point to read
255
- # @param opts [Hash] Set of options
256
- # @return [Array<Double>] Array of output values
257
-
258
- # @!method find_trim(opts = {})
259
- # Search an image for non-edge areas.
260
- # @param opts [Hash] Set of options
261
- # @option opts [Float] :threshold Object threshold
262
- # @option opts [Array<Double>] :background Color for background pixels
263
- # @return [Array<] Left edge of image, Top edge of extract area, Width of extract area, Height of extract area
264
-
265
- # @!method copy(opts = {})
266
- # Copy an image.
267
- # @param opts [Hash] Set of options
268
- # @option opts [Integer] :width Image width in pixels
269
- # @option opts [Integer] :height Image height in pixels
270
- # @option opts [Integer] :bands Number of bands in image
271
- # @option opts [Vips::BandFormat] :format Pixel format in image
272
- # @option opts [Vips::Coding] :coding Pixel coding
273
- # @option opts [Vips::Interpretation] :interpretation Pixel interpretation
274
- # @option opts [Float] :xres Horizontal resolution in pixels/mm
275
- # @option opts [Float] :yres Vertical resolution in pixels/mm
276
- # @option opts [Integer] :xoffset Horizontal offset of origin
277
- # @option opts [Integer] :yoffset Vertical offset of origin
278
- # @return [Vips::Image] Output image
279
-
280
- # @!method tilecache(opts = {})
281
- # Cache an image as a set of tiles.
282
- # @param opts [Hash] Set of options
283
- # @option opts [Integer] :tile_width Tile width in pixels
284
- # @option opts [Integer] :tile_height Tile height in pixels
285
- # @option opts [Integer] :max_tiles Maximum number of tiles to cache
286
- # @option opts [Vips::Access] :access Expected access pattern
287
- # @option opts [Boolean] :threaded Allow threaded access
288
- # @option opts [Boolean] :persistent Keep cache between evaluations
289
- # @return [Vips::Image] Output image
290
-
291
- # @!method linecache(opts = {})
292
- # Cache an image as a set of lines.
293
- # @param opts [Hash] Set of options
294
- # @option opts [Integer] :tile_height Tile height in pixels
295
- # @option opts [Vips::Access] :access Expected access pattern
296
- # @option opts [Boolean] :threaded Allow threaded access
297
- # @option opts [Boolean] :persistent Keep cache between evaluations
298
- # @return [Vips::Image] Output image
299
-
300
- # @!method sequential(opts = {})
301
- # Check sequential access.
302
- # @param opts [Hash] Set of options
303
- # @option opts [Integer] :tile_height Tile height in pixels
304
- # @return [Vips::Image] Output image
305
-
306
- # @!method cache(opts = {})
307
- # Cache an image.
308
- # @param opts [Hash] Set of options
309
- # @option opts [Integer] :max_tiles Maximum number of tiles to cache
310
- # @option opts [Integer] :tile_height Tile height in pixels
311
- # @option opts [Integer] :tile_width Tile width in pixels
312
- # @return [Vips::Image] Output image
313
-
314
- # @!method embed(x, y, width, height, opts = {})
315
- # Embed an image in a larger image.
316
- # @param x [Integer] Left edge of input in output
317
- # @param y [Integer] Top edge of input in output
318
- # @param width [Integer] Image width in pixels
319
- # @param height [Integer] Image height in pixels
320
- # @param opts [Hash] Set of options
321
- # @option opts [Vips::Extend] :extend How to generate the extra pixels
322
- # @option opts [Array<Double>] :background Color for background pixels
323
- # @return [Vips::Image] Output image
324
-
325
- # @!method gravity(direction, width, height, opts = {})
326
- # Place an image within a larger image with a certain gravity.
327
- # @param direction [Vips::CompassDirection] direction to place image within width/height
328
- # @param width [Integer] Image width in pixels
329
- # @param height [Integer] Image height in pixels
330
- # @param opts [Hash] Set of options
331
- # @option opts [Vips::Extend] :extend How to generate the extra pixels
332
- # @option opts [Array<Double>] :background Color for background pixels
333
- # @return [Vips::Image] Output image
334
-
335
- # @!method flip(direction, opts = {})
336
- # Flip an image.
337
- # @param direction [Vips::Direction] Direction to flip image
338
- # @param opts [Hash] Set of options
339
- # @return [Vips::Image] Output image
340
-
341
- # @!method insert(sub, x, y, opts = {})
342
- # Insert image @sub into @main at @x, @y.
343
- # @param sub [Vips::Image] Sub-image to insert into main image
344
- # @param x [Integer] Left edge of sub in main
345
- # @param y [Integer] Top edge of sub in main
346
- # @param opts [Hash] Set of options
347
- # @option opts [Boolean] :expand Expand output to hold all of both inputs
348
- # @option opts [Array<Double>] :background Color for new pixels
349
- # @return [Vips::Image] Output image
350
-
351
- # @!method join(in2, direction, opts = {})
352
- # Join a pair of images.
353
- # @param in2 [Vips::Image] Second input image
354
- # @param direction [Vips::Direction] Join left-right or up-down
355
- # @param opts [Hash] Set of options
356
- # @option opts [Boolean] :expand Expand output to hold all of both inputs
357
- # @option opts [Integer] :shim Pixels between images
358
- # @option opts [Array<Double>] :background Colour for new pixels
359
- # @option opts [Vips::Align] :align Align on the low, centre or high coordinate edge
360
- # @return [Vips::Image] Output image
361
-
362
- # @!method self.arrayjoin(im, opts = {})
363
- # Join an array of images.
364
- # @param im [Array<Image>] Array of input images
365
- # @param opts [Hash] Set of options
366
- # @option opts [Integer] :across Number of images across grid
367
- # @option opts [Integer] :shim Pixels between images
368
- # @option opts [Array<Double>] :background Colour for new pixels
369
- # @option opts [Vips::Align] :halign Align on the left, centre or right
370
- # @option opts [Vips::Align] :valign Align on the top, centre or bottom
371
- # @option opts [Integer] :hspacing Horizontal spacing between images
372
- # @option opts [Integer] :vspacing Vertical spacing between images
373
- # @return [Vips::Image] Output image
374
-
375
- # @!method extract_area(left, top, width, height, opts = {})
376
- # Extract an area from an image.
377
- # @param left [Integer] Left edge of extract area
378
- # @param top [Integer] Top edge of extract area
379
- # @param width [Integer] Width of extract area
380
- # @param height [Integer] Height of extract area
381
- # @param opts [Hash] Set of options
382
- # @return [Vips::Image] Output image
383
-
384
- # @!method extract_area(left, top, width, height, opts = {})
385
- # Extract an area from an image.
386
- # @param left [Integer] Left edge of extract area
387
- # @param top [Integer] Top edge of extract area
388
- # @param width [Integer] Width of extract area
389
- # @param height [Integer] Height of extract area
390
- # @param opts [Hash] Set of options
391
- # @return [Vips::Image] Output image
392
-
393
- # @!method smartcrop(width, height, opts = {})
394
- # Extract an area from an image.
395
- # @param width [Integer] Width of extract area
396
- # @param height [Integer] Height of extract area
397
- # @param opts [Hash] Set of options
398
- # @option opts [Vips::Interesting] :interesting How to measure interestingness
399
- # @return [Vips::Image] Output image
400
-
401
- # @!method extract_band(band, opts = {})
402
- # Extract band from an image.
403
- # @param band [Integer] Band to extract
404
- # @param opts [Hash] Set of options
405
- # @option opts [Integer] :n Number of bands to extract
406
- # @return [Vips::Image] Output image
407
-
408
- # @!method bandjoin_const(c, opts = {})
409
- # Append a constant band to an image.
410
- # @param c [Array<Double>] Array of constants to add
411
- # @param opts [Hash] Set of options
412
- # @return [Vips::Image] Output image
413
-
414
- # @!method self.bandrank(im, opts = {})
415
- # Band-wise rank of a set of images.
416
- # @param im [Array<Image>] Array of input images
417
- # @param opts [Hash] Set of options
418
- # @option opts [Integer] :index Select this band element from sorted list
419
- # @return [Vips::Image] Output image
420
-
421
- # @!method bandmean(opts = {})
422
- # Band-wise average.
423
- # @param opts [Hash] Set of options
424
- # @return [Vips::Image] Output image
425
-
426
- # @!method bandbool(boolean, opts = {})
427
- # Boolean operation across image bands.
428
- # @param boolean [Vips::OperationBoolean] boolean to perform
429
- # @param opts [Hash] Set of options
430
- # @return [Vips::Image] Output image
431
-
432
- # @!method replicate(across, down, opts = {})
433
- # Replicate an image.
434
- # @param across [Integer] Repeat this many times horizontally
435
- # @param down [Integer] Repeat this many times vertically
436
- # @param opts [Hash] Set of options
437
- # @return [Vips::Image] Output image
438
-
439
- # @!method cast(format, opts = {})
440
- # Cast an image.
441
- # @param format [Vips::BandFormat] Format to cast to
442
- # @param opts [Hash] Set of options
443
- # @option opts [Boolean] :shift Shift integer values up and down
444
- # @return [Vips::Image] Output image
445
-
446
- # @!method rot(angle, opts = {})
447
- # Rotate an image.
448
- # @param angle [Vips::Angle] Angle to rotate image
449
- # @param opts [Hash] Set of options
450
- # @return [Vips::Image] Output image
451
-
452
- # @!method rot45(opts = {})
453
- # Rotate an image.
454
- # @param opts [Hash] Set of options
455
- # @option opts [Vips::Angle45] :angle Angle to rotate image
456
- # @return [Vips::Image] Output image
457
-
458
- # @!method autorot(opts = {})
459
- # Autorotate image by exif tag.
460
- # @param opts [Hash] Set of options
461
- # @option opts [Vips::Angle] :angle Output Angle image was rotated by
462
- # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
463
-
464
- # @!method recomb(m, opts = {})
465
- # Linear recombination with matrix.
466
- # @param m [Vips::Image] matrix of coefficients
467
- # @param opts [Hash] Set of options
468
- # @return [Vips::Image] Output image
469
-
470
- # @!method bandfold(opts = {})
471
- # Fold up x axis into bands.
472
- # @param opts [Hash] Set of options
473
- # @option opts [Integer] :factor Fold by this factor
474
- # @return [Vips::Image] Output image
475
-
476
- # @!method bandunfold(opts = {})
477
- # Unfold image bands into x axis.
478
- # @param opts [Hash] Set of options
479
- # @option opts [Integer] :factor Unfold by this factor
480
- # @return [Vips::Image] Output image
481
-
482
- # @!method flatten(opts = {})
483
- # Flatten alpha out of an image.
484
- # @param opts [Hash] Set of options
485
- # @option opts [Array<Double>] :background Background value
486
- # @option opts [Float] :max_alpha Maximum value of alpha channel
487
- # @return [Vips::Image] Output image
488
-
489
- # @!method premultiply(opts = {})
490
- # Premultiply image alpha.
491
- # @param opts [Hash] Set of options
492
- # @option opts [Float] :max_alpha Maximum value of alpha channel
493
- # @return [Vips::Image] Output image
494
-
495
- # @!method unpremultiply(opts = {})
496
- # Unpremultiply image alpha.
497
- # @param opts [Hash] Set of options
498
- # @option opts [Float] :max_alpha Maximum value of alpha channel
499
- # @return [Vips::Image] Output image
500
-
501
- # @!method grid(tile_height, across, down, opts = {})
502
- # Grid an image.
503
- # @param tile_height [Integer] chop into tiles this high
504
- # @param across [Integer] number of tiles across
505
- # @param down [Integer] number of tiles down
506
- # @param opts [Hash] Set of options
507
- # @return [Vips::Image] Output image
508
-
509
- # @!method wrap(opts = {})
510
- # Wrap image origin.
511
- # @param opts [Hash] Set of options
512
- # @option opts [Integer] :x Left edge of input in output
513
- # @option opts [Integer] :y Top edge of input in output
514
- # @return [Vips::Image] Output image
515
-
516
- # @!method zoom(xfac, yfac, opts = {})
517
- # Zoom an image.
518
- # @param xfac [Integer] Horizontal zoom factor
519
- # @param yfac [Integer] Vertical zoom factor
520
- # @param opts [Hash] Set of options
521
- # @return [Vips::Image] Output image
522
-
523
- # @!method subsample(xfac, yfac, opts = {})
524
- # Subsample an image.
525
- # @param xfac [Integer] Horizontal subsample factor
526
- # @param yfac [Integer] Vertical subsample factor
527
- # @param opts [Hash] Set of options
528
- # @option opts [Boolean] :point Point sample
529
- # @return [Vips::Image] Output image
530
-
531
- # @!method msb(opts = {})
532
- # Pick most-significant byte from an image.
533
- # @param opts [Hash] Set of options
534
- # @option opts [Integer] :band Band to msb
535
- # @return [Vips::Image] Output image
536
-
537
- # @!method byteswap(opts = {})
538
- # Byteswap an image.
539
- # @param opts [Hash] Set of options
540
- # @return [Vips::Image] Output image
541
-
542
- # @!method falsecolour(opts = {})
543
- # False-color an image.
544
- # @param opts [Hash] Set of options
545
- # @return [Vips::Image] Output image
546
-
547
- # @!method gamma(opts = {})
548
- # Gamma an image.
549
- # @param opts [Hash] Set of options
550
- # @option opts [Float] :exponent Gamma factor
551
- # @return [Vips::Image] Output image
552
-
553
- # @!method composite2(overlay, mode, opts = {})
554
- # Blend a pair of images with a blend mode.
555
- # @param overlay [Vips::Image] Overlay image
556
- # @param mode [Vips::BlendMode] VipsBlendMode to join with
557
- # @param opts [Hash] Set of options
558
- # @option opts [Vips::Interpretation] :compositing_space Composite images in this colour space
559
- # @option opts [Boolean] :premultiplied Images have premultiplied alpha
560
- # @return [Vips::Image] Output image
561
-
562
- # @!method self.black(width, height, opts = {})
563
- # Make a black image.
564
- # @param width [Integer] Image width in pixels
565
- # @param height [Integer] Image height in pixels
566
- # @param opts [Hash] Set of options
567
- # @option opts [Integer] :bands Number of bands in image
568
- # @return [Vips::Image] Output image
569
-
570
- # @!method self.gaussnoise(width, height, opts = {})
571
- # Make a gaussnoise image.
572
- # @param width [Integer] Image width in pixels
573
- # @param height [Integer] Image height in pixels
574
- # @param opts [Hash] Set of options
575
- # @option opts [Float] :sigma Standard deviation of pixels in generated image
576
- # @option opts [Float] :mean Mean of pixels in generated image
577
- # @return [Vips::Image] Output image
578
-
579
- # @!method self.text(text, opts = {})
580
- # Make a text image.
581
- # @param text [String] Text to render
582
- # @param opts [Hash] Set of options
583
- # @option opts [String] :font Font to render with
584
- # @option opts [Integer] :width Maximum image width in pixels
585
- # @option opts [Integer] :height Maximum image height in pixels
586
- # @option opts [Vips::Align] :align Align on the low, centre or high edge
587
- # @option opts [Integer] :dpi DPI to render at
588
- # @option opts [Integer] :spacing Line spacing
589
- # @option opts [Integer] :autofit_dpi Output DPI selected by autofit
590
- # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
591
-
592
- # @!method self.xyz(width, height, opts = {})
593
- # Make an image where pixel values are coordinates.
594
- # @param width [Integer] Image width in pixels
595
- # @param height [Integer] Image height in pixels
596
- # @param opts [Hash] Set of options
597
- # @option opts [Integer] :csize Size of third dimension
598
- # @option opts [Integer] :dsize Size of fourth dimension
599
- # @option opts [Integer] :esize Size of fifth dimension
600
- # @return [Vips::Image] Output image
601
-
602
- # @!method self.gaussmat(sigma, min_ampl, opts = {})
603
- # Make a gaussian image.
604
- # @param sigma [Float] Sigma of Gaussian
605
- # @param min_ampl [Float] Minimum amplitude of Gaussian
606
- # @param opts [Hash] Set of options
607
- # @option opts [Boolean] :separable Generate separable Gaussian
608
- # @option opts [Vips::Precision] :precision Generate with this precision
609
- # @return [Vips::Image] Output image
610
-
611
- # @!method self.logmat(sigma, min_ampl, opts = {})
612
- # Make a laplacian of gaussian image.
613
- # @param sigma [Float] Radius of Logmatian
614
- # @param min_ampl [Float] Minimum amplitude of Logmatian
615
- # @param opts [Hash] Set of options
616
- # @option opts [Boolean] :separable Generate separable Logmatian
617
- # @option opts [Vips::Precision] :precision Generate with this precision
618
- # @return [Vips::Image] Output image
619
-
620
- # @!method self.eye(width, height, opts = {})
621
- # Make an image showing the eye's spatial response.
622
- # @param width [Integer] Image width in pixels
623
- # @param height [Integer] Image height in pixels
624
- # @param opts [Hash] Set of options
625
- # @option opts [Boolean] :uchar Output an unsigned char image
626
- # @option opts [Float] :factor Maximum spatial frequency
627
- # @return [Vips::Image] Output image
628
-
629
- # @!method self.grey(width, height, opts = {})
630
- # Make a grey ramp image.
631
- # @param width [Integer] Image width in pixels
632
- # @param height [Integer] Image height in pixels
633
- # @param opts [Hash] Set of options
634
- # @option opts [Boolean] :uchar Output an unsigned char image
635
- # @return [Vips::Image] Output image
636
-
637
- # @!method self.zone(width, height, opts = {})
638
- # Make a zone plate.
639
- # @param width [Integer] Image width in pixels
640
- # @param height [Integer] Image height in pixels
641
- # @param opts [Hash] Set of options
642
- # @option opts [Boolean] :uchar Output an unsigned char image
643
- # @return [Vips::Image] Output image
644
-
645
- # @!method self.sines(width, height, opts = {})
646
- # Make a 2d sine wave.
647
- # @param width [Integer] Image width in pixels
648
- # @param height [Integer] Image height in pixels
649
- # @param opts [Hash] Set of options
650
- # @option opts [Boolean] :uchar Output an unsigned char image
651
- # @option opts [Float] :hfreq Horizontal spatial frequency
652
- # @option opts [Float] :vfreq Vertical spatial frequency
653
- # @return [Vips::Image] Output image
654
-
655
- # @!method self.mask_ideal(width, height, frequency_cutoff, opts = {})
656
- # Make an ideal filter.
657
- # @param width [Integer] Image width in pixels
658
- # @param height [Integer] Image height in pixels
659
- # @param frequency_cutoff [Float] Frequency cutoff
660
- # @param opts [Hash] Set of options
661
- # @option opts [Boolean] :uchar Output an unsigned char image
662
- # @option opts [Boolean] :nodc Remove DC component
663
- # @option opts [Boolean] :reject Invert the sense of the filter
664
- # @option opts [Boolean] :optical Rotate quadrants to optical space
665
- # @return [Vips::Image] Output image
666
-
667
- # @!method self.mask_ideal_ring(width, height, frequency_cutoff, ringwidth, opts = {})
668
- # Make an ideal ring filter.
669
- # @param width [Integer] Image width in pixels
670
- # @param height [Integer] Image height in pixels
671
- # @param frequency_cutoff [Float] Frequency cutoff
672
- # @param ringwidth [Float] Ringwidth
673
- # @param opts [Hash] Set of options
674
- # @option opts [Boolean] :uchar Output an unsigned char image
675
- # @option opts [Boolean] :nodc Remove DC component
676
- # @option opts [Boolean] :reject Invert the sense of the filter
677
- # @option opts [Boolean] :optical Rotate quadrants to optical space
678
- # @return [Vips::Image] Output image
679
-
680
- # @!method self.mask_ideal_band(width, height, frequency_cutoff_x, frequency_cutoff_y, radius, opts = {})
681
- # Make an ideal band filter.
682
- # @param width [Integer] Image width in pixels
683
- # @param height [Integer] Image height in pixels
684
- # @param frequency_cutoff_x [Float] Frequency cutoff x
685
- # @param frequency_cutoff_y [Float] Frequency cutoff y
686
- # @param radius [Float] radius of circle
687
- # @param opts [Hash] Set of options
688
- # @option opts [Boolean] :uchar Output an unsigned char image
689
- # @option opts [Boolean] :nodc Remove DC component
690
- # @option opts [Boolean] :reject Invert the sense of the filter
691
- # @option opts [Boolean] :optical Rotate quadrants to optical space
692
- # @return [Vips::Image] Output image
693
-
694
- # @!method self.mask_butterworth(width, height, order, frequency_cutoff, amplitude_cutoff, opts = {})
695
- # Make a butterworth filter.
696
- # @param width [Integer] Image width in pixels
697
- # @param height [Integer] Image height in pixels
698
- # @param order [Float] Filter order
699
- # @param frequency_cutoff [Float] Frequency cutoff
700
- # @param amplitude_cutoff [Float] Amplitude cutoff
701
- # @param opts [Hash] Set of options
702
- # @option opts [Boolean] :uchar Output an unsigned char image
703
- # @option opts [Boolean] :nodc Remove DC component
704
- # @option opts [Boolean] :reject Invert the sense of the filter
705
- # @option opts [Boolean] :optical Rotate quadrants to optical space
706
- # @return [Vips::Image] Output image
707
-
708
- # @!method self.mask_butterworth_ring(width, height, order, frequency_cutoff, amplitude_cutoff, ringwidth, opts = {})
709
- # Make a butterworth ring filter.
710
- # @param width [Integer] Image width in pixels
711
- # @param height [Integer] Image height in pixels
712
- # @param order [Float] Filter order
713
- # @param frequency_cutoff [Float] Frequency cutoff
714
- # @param amplitude_cutoff [Float] Amplitude cutoff
715
- # @param ringwidth [Float] Ringwidth
716
- # @param opts [Hash] Set of options
717
- # @option opts [Boolean] :uchar Output an unsigned char image
718
- # @option opts [Boolean] :nodc Remove DC component
719
- # @option opts [Boolean] :reject Invert the sense of the filter
720
- # @option opts [Boolean] :optical Rotate quadrants to optical space
721
- # @return [Vips::Image] Output image
722
-
723
- # @!method self.mask_butterworth_band(width, height, order, frequency_cutoff_x, frequency_cutoff_y, radius, amplitude_cutoff, opts = {})
724
- # Make a butterworth_band filter.
725
- # @param width [Integer] Image width in pixels
726
- # @param height [Integer] Image height in pixels
727
- # @param order [Float] Filter order
728
- # @param frequency_cutoff_x [Float] Frequency cutoff x
729
- # @param frequency_cutoff_y [Float] Frequency cutoff y
730
- # @param radius [Float] radius of circle
731
- # @param amplitude_cutoff [Float] Amplitude cutoff
732
- # @param opts [Hash] Set of options
733
- # @option opts [Boolean] :uchar Output an unsigned char image
734
- # @option opts [Boolean] :nodc Remove DC component
735
- # @option opts [Boolean] :reject Invert the sense of the filter
736
- # @option opts [Boolean] :optical Rotate quadrants to optical space
737
- # @return [Vips::Image] Output image
738
-
739
- # @!method self.mask_gaussian(width, height, frequency_cutoff, amplitude_cutoff, opts = {})
740
- # Make a gaussian filter.
741
- # @param width [Integer] Image width in pixels
742
- # @param height [Integer] Image height in pixels
743
- # @param frequency_cutoff [Float] Frequency cutoff
744
- # @param amplitude_cutoff [Float] Amplitude cutoff
745
- # @param opts [Hash] Set of options
746
- # @option opts [Boolean] :uchar Output an unsigned char image
747
- # @option opts [Boolean] :nodc Remove DC component
748
- # @option opts [Boolean] :reject Invert the sense of the filter
749
- # @option opts [Boolean] :optical Rotate quadrants to optical space
750
- # @return [Vips::Image] Output image
751
-
752
- # @!method self.mask_gaussian_ring(width, height, frequency_cutoff, amplitude_cutoff, ringwidth, opts = {})
753
- # Make a gaussian ring filter.
754
- # @param width [Integer] Image width in pixels
755
- # @param height [Integer] Image height in pixels
756
- # @param frequency_cutoff [Float] Frequency cutoff
757
- # @param amplitude_cutoff [Float] Amplitude cutoff
758
- # @param ringwidth [Float] Ringwidth
759
- # @param opts [Hash] Set of options
760
- # @option opts [Boolean] :uchar Output an unsigned char image
761
- # @option opts [Boolean] :nodc Remove DC component
762
- # @option opts [Boolean] :reject Invert the sense of the filter
763
- # @option opts [Boolean] :optical Rotate quadrants to optical space
764
- # @return [Vips::Image] Output image
765
-
766
- # @!method self.mask_gaussian_band(width, height, frequency_cutoff_x, frequency_cutoff_y, radius, amplitude_cutoff, opts = {})
767
- # Make a gaussian filter.
768
- # @param width [Integer] Image width in pixels
769
- # @param height [Integer] Image height in pixels
770
- # @param frequency_cutoff_x [Float] Frequency cutoff x
771
- # @param frequency_cutoff_y [Float] Frequency cutoff y
772
- # @param radius [Float] radius of circle
773
- # @param amplitude_cutoff [Float] Amplitude cutoff
774
- # @param opts [Hash] Set of options
775
- # @option opts [Boolean] :uchar Output an unsigned char image
776
- # @option opts [Boolean] :nodc Remove DC component
777
- # @option opts [Boolean] :reject Invert the sense of the filter
778
- # @option opts [Boolean] :optical Rotate quadrants to optical space
779
- # @return [Vips::Image] Output image
780
-
781
- # @!method self.mask_fractal(width, height, fractal_dimension, opts = {})
782
- # Make fractal filter.
783
- # @param width [Integer] Image width in pixels
784
- # @param height [Integer] Image height in pixels
785
- # @param fractal_dimension [Float] Fractal dimension
786
- # @param opts [Hash] Set of options
787
- # @option opts [Boolean] :uchar Output an unsigned char image
788
- # @option opts [Boolean] :nodc Remove DC component
789
- # @option opts [Boolean] :reject Invert the sense of the filter
790
- # @option opts [Boolean] :optical Rotate quadrants to optical space
791
- # @return [Vips::Image] Output image
792
-
793
- # @!method buildlut(opts = {})
794
- # Build a look-up table.
795
- # @param opts [Hash] Set of options
796
- # @return [Vips::Image] Output image
797
-
798
- # @!method invertlut(opts = {})
799
- # Build an inverted look-up table.
800
- # @param opts [Hash] Set of options
801
- # @option opts [Integer] :size LUT size to generate
802
- # @return [Vips::Image] Output image
803
-
804
- # @!method self.tonelut(opts = {})
805
- # Build a look-up table.
806
- # @param opts [Hash] Set of options
807
- # @option opts [Integer] :in_max Size of LUT to build
808
- # @option opts [Integer] :out_max Maximum value in output LUT
809
- # @option opts [Float] :Lb Lowest value in output
810
- # @option opts [Float] :Lw Highest value in output
811
- # @option opts [Float] :Ps Position of shadow
812
- # @option opts [Float] :Pm Position of mid-tones
813
- # @option opts [Float] :Ph Position of highlights
814
- # @option opts [Float] :S Adjust shadows by this much
815
- # @option opts [Float] :M Adjust mid-tones by this much
816
- # @option opts [Float] :H Adjust highlights by this much
817
- # @return [Vips::Image] Output image
818
-
819
- # @!method self.identity(opts = {})
820
- # Make a 1d image where pixel values are indexes.
821
- # @param opts [Hash] Set of options
822
- # @option opts [Integer] :bands Number of bands in LUT
823
- # @option opts [Boolean] :ushort Create a 16-bit LUT
824
- # @option opts [Integer] :size Size of 16-bit LUT
825
- # @return [Vips::Image] Output image
826
-
827
- # @!method self.fractsurf(width, height, fractal_dimension, opts = {})
828
- # Make a fractal surface.
829
- # @param width [Integer] Image width in pixels
830
- # @param height [Integer] Image height in pixels
831
- # @param fractal_dimension [Float] Fractal dimension
832
- # @param opts [Hash] Set of options
833
- # @return [Vips::Image] Output image
834
-
835
- # @!method self.worley(width, height, opts = {})
836
- # Make a worley noise image.
837
- # @param width [Integer] Image width in pixels
838
- # @param height [Integer] Image height in pixels
839
- # @param opts [Hash] Set of options
840
- # @option opts [Integer] :cell_size Size of Worley cells
841
- # @return [Vips::Image] Output image
842
-
843
- # @!method self.perlin(width, height, opts = {})
844
- # Make a perlin noise image.
845
- # @param width [Integer] Image width in pixels
846
- # @param height [Integer] Image height in pixels
847
- # @param opts [Hash] Set of options
848
- # @option opts [Integer] :cell_size Size of Perlin cells
849
- # @option opts [Boolean] :uchar Output an unsigned char image
850
- # @return [Vips::Image] Output image
851
-
852
- # @!method self.csvload(filename, opts = {})
853
- # Load csv from file.
854
- # @param filename [String] Filename to load from
855
- # @param opts [Hash] Set of options
856
- # @option opts [Boolean] :memory Force open via memory
857
- # @option opts [Vips::Access] :access Required access pattern for this file
858
- # @option opts [Integer] :skip Skip this many lines at the start of the file
859
- # @option opts [Integer] :lines Read this many lines from the file
860
- # @option opts [Boolean] :fail Fail on first error
861
- # @option opts [String] :whitespace Set of whitespace characters
862
- # @option opts [String] :separator Set of separator characters
863
- # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
864
- # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
865
-
866
- # @!method self.matrixload(filename, opts = {})
867
- # Load matrix from file.
868
- # @param filename [String] Filename to load from
869
- # @param opts [Hash] Set of options
870
- # @option opts [Boolean] :memory Force open via memory
871
- # @option opts [Vips::Access] :access Required access pattern for this file
872
- # @option opts [Boolean] :fail Fail on first error
873
- # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
874
- # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
875
-
876
- # @!method self.rawload(filename, width, height, bands, opts = {})
877
- # Load raw data from a file.
878
- # @param filename [String] Filename to load from
879
- # @param width [Integer] Image width in pixels
880
- # @param height [Integer] Image height in pixels
881
- # @param bands [Integer] Number of bands in image
882
- # @param opts [Hash] Set of options
883
- # @option opts [Boolean] :memory Force open via memory
884
- # @option opts [Vips::Access] :access Required access pattern for this file
885
- # @option opts [Boolean] :fail Fail on first error
886
- # @option opts [guint64] :offset Offset in bytes from start of file
887
- # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
888
- # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
889
-
890
- # @!method self.vipsload(filename, opts = {})
891
- # Load vips from file.
892
- # @param filename [String] Filename to load from
893
- # @param opts [Hash] Set of options
894
- # @option opts [Boolean] :memory Force open via memory
895
- # @option opts [Vips::Access] :access Required access pattern for this file
896
- # @option opts [Boolean] :fail Fail on first error
897
- # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
898
- # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
899
-
900
- # @!method self.analyzeload(filename, opts = {})
901
- # Load an analyze6 image.
902
- # @param filename [String] Filename to load from
903
- # @param opts [Hash] Set of options
904
- # @option opts [Boolean] :memory Force open via memory
905
- # @option opts [Vips::Access] :access Required access pattern for this file
906
- # @option opts [Boolean] :fail Fail on first error
907
- # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
908
- # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
909
-
910
- # @!method self.ppmload(filename, opts = {})
911
- # Load ppm from file.
912
- # @param filename [String] Filename to load from
913
- # @param opts [Hash] Set of options
914
- # @option opts [Boolean] :memory Force open via memory
915
- # @option opts [Vips::Access] :access Required access pattern for this file
916
- # @option opts [Boolean] :fail Fail on first error
917
- # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
918
- # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
919
-
920
- # @!method self.radload(filename, opts = {})
921
- # Load a radiance image from a file.
922
- # @param filename [String] Filename to load from
923
- # @param opts [Hash] Set of options
924
- # @option opts [Boolean] :memory Force open via memory
925
- # @option opts [Vips::Access] :access Required access pattern for this file
926
- # @option opts [Boolean] :fail Fail on first error
927
- # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
928
- # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
929
-
930
- # @!method self.pdfload(filename, opts = {})
931
- # Load pdf with libpoppler.
932
- # @param filename [String] Filename to load from
933
- # @param opts [Hash] Set of options
934
- # @option opts [Boolean] :memory Force open via memory
935
- # @option opts [Vips::Access] :access Required access pattern for this file
936
- # @option opts [Integer] :page Load this page from the file
937
- # @option opts [Integer] :n Load this many pages
938
- # @option opts [Boolean] :fail Fail on first error
939
- # @option opts [Float] :dpi Render at this DPI
940
- # @option opts [Float] :scale Scale output by this factor
941
- # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
942
- # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
943
-
944
- # @!method self.pdfload_buffer(buffer, opts = {})
945
- # Load pdf with libpoppler.
946
- # @param buffer [VipsBlob] Buffer to load from
947
- # @param opts [Hash] Set of options
948
- # @option opts [Boolean] :memory Force open via memory
949
- # @option opts [Vips::Access] :access Required access pattern for this file
950
- # @option opts [Integer] :page Load this page from the file
951
- # @option opts [Integer] :n Load this many pages
952
- # @option opts [Boolean] :fail Fail on first error
953
- # @option opts [Float] :dpi Render at this DPI
954
- # @option opts [Float] :scale Scale output by this factor
955
- # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
956
- # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
957
-
958
- # @!method self.svgload(filename, opts = {})
959
- # Load svg with rsvg.
960
- # @param filename [String] Filename to load from
961
- # @param opts [Hash] Set of options
962
- # @option opts [Boolean] :memory Force open via memory
963
- # @option opts [Vips::Access] :access Required access pattern for this file
964
- # @option opts [Float] :dpi Render at this DPI
965
- # @option opts [Boolean] :fail Fail on first error
966
- # @option opts [Float] :scale Scale output by this factor
967
- # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
968
- # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
969
-
970
- # @!method self.svgload(filename, opts = {})
971
- # Load svg with rsvg.
972
- # @param filename [String] Filename to load from
973
- # @param opts [Hash] Set of options
974
- # @option opts [Boolean] :memory Force open via memory
975
- # @option opts [Vips::Access] :access Required access pattern for this file
976
- # @option opts [Float] :dpi Render at this DPI
977
- # @option opts [Boolean] :fail Fail on first error
978
- # @option opts [Float] :scale Scale output by this factor
979
- # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
980
- # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
981
-
982
- # @!method self.svgload_buffer(buffer, opts = {})
983
- # Load svg with rsvg.
984
- # @param buffer [VipsBlob] Buffer to load from
985
- # @param opts [Hash] Set of options
986
- # @option opts [Boolean] :memory Force open via memory
987
- # @option opts [Vips::Access] :access Required access pattern for this file
988
- # @option opts [Float] :dpi Render at this DPI
989
- # @option opts [Boolean] :fail Fail on first error
990
- # @option opts [Float] :scale Scale output by this factor
991
- # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
992
- # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
993
-
994
- # @!method self.gifload(filename, opts = {})
995
- # Load gif with giflib.
996
- # @param filename [String] Filename to load from
997
- # @param opts [Hash] Set of options
998
- # @option opts [Integer] :n Load this many pages
999
- # @option opts [Boolean] :memory Force open via memory
1000
- # @option opts [Vips::Access] :access Required access pattern for this file
1001
- # @option opts [Integer] :page Load this page from the file
1002
- # @option opts [Boolean] :fail Fail on first error
1003
- # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
1004
- # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
1005
-
1006
- # @!method self.gifload_buffer(buffer, opts = {})
1007
- # Load gif with giflib.
1008
- # @param buffer [VipsBlob] Buffer to load from
1009
- # @param opts [Hash] Set of options
1010
- # @option opts [Integer] :n Load this many pages
1011
- # @option opts [Boolean] :memory Force open via memory
1012
- # @option opts [Vips::Access] :access Required access pattern for this file
1013
- # @option opts [Integer] :page Load this page from the file
1014
- # @option opts [Boolean] :fail Fail on first error
1015
- # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
1016
- # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
1017
-
1018
- # @!method self.pngload(filename, opts = {})
1019
- # Load png from file.
1020
- # @param filename [String] Filename to load from
1021
- # @param opts [Hash] Set of options
1022
- # @option opts [Boolean] :memory Force open via memory
1023
- # @option opts [Vips::Access] :access Required access pattern for this file
1024
- # @option opts [Boolean] :fail Fail on first error
1025
- # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
1026
- # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
1027
-
1028
- # @!method self.pngload_buffer(buffer, opts = {})
1029
- # Load png from buffer.
1030
- # @param buffer [VipsBlob] Buffer to load from
1031
- # @param opts [Hash] Set of options
1032
- # @option opts [Boolean] :memory Force open via memory
1033
- # @option opts [Vips::Access] :access Required access pattern for this file
1034
- # @option opts [Boolean] :fail Fail on first error
1035
- # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
1036
- # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
1037
-
1038
- # @!method self.matload(filename, opts = {})
1039
- # Load mat from file.
1040
- # @param filename [String] Filename to load from
1041
- # @param opts [Hash] Set of options
1042
- # @option opts [Boolean] :memory Force open via memory
1043
- # @option opts [Vips::Access] :access Required access pattern for this file
1044
- # @option opts [Boolean] :fail Fail on first error
1045
- # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
1046
- # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
1047
-
1048
- # @!method self.jpegload(filename, opts = {})
1049
- # Load jpeg from file.
1050
- # @param filename [String] Filename to load from
1051
- # @param opts [Hash] Set of options
1052
- # @option opts [Boolean] :memory Force open via memory
1053
- # @option opts [Vips::Access] :access Required access pattern for this file
1054
- # @option opts [Integer] :shrink Shrink factor on load
1055
- # @option opts [Boolean] :fail Fail on first error
1056
- # @option opts [Boolean] :autorotate Rotate image using exif orientation
1057
- # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
1058
- # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
1059
-
1060
- # @!method self.jpegload_buffer(buffer, opts = {})
1061
- # Load jpeg from buffer.
1062
- # @param buffer [VipsBlob] Buffer to load from
1063
- # @param opts [Hash] Set of options
1064
- # @option opts [Boolean] :memory Force open via memory
1065
- # @option opts [Vips::Access] :access Required access pattern for this file
1066
- # @option opts [Integer] :shrink Shrink factor on load
1067
- # @option opts [Boolean] :fail Fail on first error
1068
- # @option opts [Boolean] :autorotate Rotate image using exif orientation
1069
- # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
1070
- # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
1071
-
1072
- # @!method self.webpload(filename, opts = {})
1073
- # Load webp from file.
1074
- # @param filename [String] Filename to load from
1075
- # @param opts [Hash] Set of options
1076
- # @option opts [Boolean] :memory Force open via memory
1077
- # @option opts [Vips::Access] :access Required access pattern for this file
1078
- # @option opts [Integer] :shrink Shrink factor on load
1079
- # @option opts [Boolean] :fail Fail on first error
1080
- # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
1081
- # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
1082
-
1083
- # @!method self.webpload_buffer(buffer, opts = {})
1084
- # Load webp from buffer.
1085
- # @param buffer [VipsBlob] Buffer to load from
1086
- # @param opts [Hash] Set of options
1087
- # @option opts [Boolean] :memory Force open via memory
1088
- # @option opts [Vips::Access] :access Required access pattern for this file
1089
- # @option opts [Integer] :shrink Shrink factor on load
1090
- # @option opts [Boolean] :fail Fail on first error
1091
- # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
1092
- # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
1093
-
1094
- # @!method self.tiffload(filename, opts = {})
1095
- # Load tiff from file.
1096
- # @param filename [String] Filename to load from
1097
- # @param opts [Hash] Set of options
1098
- # @option opts [Boolean] :memory Force open via memory
1099
- # @option opts [Vips::Access] :access Required access pattern for this file
1100
- # @option opts [Integer] :page Load this page from the image
1101
- # @option opts [Integer] :n Load this many pages
1102
- # @option opts [Boolean] :fail Fail on first error
1103
- # @option opts [Boolean] :autorotate Rotate image using orientation tag
1104
- # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
1105
- # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
1106
-
1107
- # @!method self.tiffload_buffer(buffer, opts = {})
1108
- # Load tiff from buffer.
1109
- # @param buffer [VipsBlob] Buffer to load from
1110
- # @param opts [Hash] Set of options
1111
- # @option opts [Boolean] :memory Force open via memory
1112
- # @option opts [Vips::Access] :access Required access pattern for this file
1113
- # @option opts [Integer] :page Load this page from the image
1114
- # @option opts [Integer] :n Load this many pages
1115
- # @option opts [Boolean] :fail Fail on first error
1116
- # @option opts [Boolean] :autorotate Rotate image using orientation tag
1117
- # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
1118
- # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
1119
-
1120
- # @!method self.openslideload(filename, opts = {})
1121
- # Load file with openslide.
1122
- # @param filename [String] Filename to load from
1123
- # @param opts [Hash] Set of options
1124
- # @option opts [Boolean] :memory Force open via memory
1125
- # @option opts [Vips::Access] :access Required access pattern for this file
1126
- # @option opts [Integer] :level Load this level from the file
1127
- # @option opts [Boolean] :autocrop Crop to image bounds
1128
- # @option opts [Boolean] :fail Fail on first error
1129
- # @option opts [String] :associated Load this associated image
1130
- # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
1131
- # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
1132
-
1133
- # @!method self.magickload(filename, opts = {})
1134
- # Load file with imagemagick.
1135
- # @param filename [String] Filename to load from
1136
- # @param opts [Hash] Set of options
1137
- # @option opts [String] :density Canvas resolution for rendering vector formats like SVG
1138
- # @option opts [Integer] :page Load this page from the file
1139
- # @option opts [Integer] :n Load this many pages
1140
- # @option opts [Boolean] :memory Force open via memory
1141
- # @option opts [Vips::Access] :access Required access pattern for this file
1142
- # @option opts [Boolean] :fail Fail on first error
1143
- # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
1144
- # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
1145
-
1146
- # @!method self.magickload_buffer(buffer, opts = {})
1147
- # Load buffer with imagemagick.
1148
- # @param buffer [VipsBlob] Buffer to load from
1149
- # @param opts [Hash] Set of options
1150
- # @option opts [String] :density Canvas resolution for rendering vector formats like SVG
1151
- # @option opts [Integer] :page Load this page from the file
1152
- # @option opts [Integer] :n Load this many pages
1153
- # @option opts [Boolean] :memory Force open via memory
1154
- # @option opts [Vips::Access] :access Required access pattern for this file
1155
- # @option opts [Boolean] :fail Fail on first error
1156
- # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
1157
- # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
1158
-
1159
- # @!method self.fitsload(filename, opts = {})
1160
- # Load a fits image.
1161
- # @param filename [String] Filename to load from
1162
- # @param opts [Hash] Set of options
1163
- # @option opts [Boolean] :memory Force open via memory
1164
- # @option opts [Vips::Access] :access Required access pattern for this file
1165
- # @option opts [Boolean] :fail Fail on first error
1166
- # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
1167
- # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
1168
-
1169
- # @!method self.openexrload(filename, opts = {})
1170
- # Load an openexr image.
1171
- # @param filename [String] Filename to load from
1172
- # @param opts [Hash] Set of options
1173
- # @option opts [Boolean] :memory Force open via memory
1174
- # @option opts [Vips::Access] :access Required access pattern for this file
1175
- # @option opts [Boolean] :fail Fail on first error
1176
- # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
1177
- # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
1178
-
1179
- # @!method csvsave(filename, opts = {})
1180
- # Save image to csv file.
1181
- # @param filename [String] Filename to save to
1182
- # @param opts [Hash] Set of options
1183
- # @option opts [Integer] :page_height Set page height for multipage save
1184
- # @option opts [String] :separator Separator characters
1185
- # @option opts [Boolean] :strip Strip all metadata from image
1186
- # @option opts [Array<Double>] :background Background value
1187
- # @return [nil]
1188
-
1189
- # @!method matrixsave(filename, opts = {})
1190
- # Save image to matrix file.
1191
- # @param filename [String] Filename to save to
1192
- # @param opts [Hash] Set of options
1193
- # @option opts [Integer] :page_height Set page height for multipage save
1194
- # @option opts [Boolean] :strip Strip all metadata from image
1195
- # @option opts [Array<Double>] :background Background value
1196
- # @return [nil]
1197
-
1198
- # @!method matrixprint(opts = {})
1199
- # Print matrix.
1200
- # @param opts [Hash] Set of options
1201
- # @option opts [Integer] :page_height Set page height for multipage save
1202
- # @option opts [Boolean] :strip Strip all metadata from image
1203
- # @option opts [Array<Double>] :background Background value
1204
- # @return [nil]
1205
-
1206
- # @!method rawsave(filename, opts = {})
1207
- # Save image to raw file.
1208
- # @param filename [String] Filename to save to
1209
- # @param opts [Hash] Set of options
1210
- # @option opts [Integer] :page_height Set page height for multipage save
1211
- # @option opts [Boolean] :strip Strip all metadata from image
1212
- # @option opts [Array<Double>] :background Background value
1213
- # @return [nil]
1214
-
1215
- # @!method rawsave_fd(fd, opts = {})
1216
- # Write raw image to file descriptor.
1217
- # @param fd [Integer] File descriptor to write to
1218
- # @param opts [Hash] Set of options
1219
- # @option opts [Integer] :page_height Set page height for multipage save
1220
- # @option opts [Boolean] :strip Strip all metadata from image
1221
- # @option opts [Array<Double>] :background Background value
1222
- # @return [nil]
1223
-
1224
- # @!method vipssave(filename, opts = {})
1225
- # Save image to vips file.
1226
- # @param filename [String] Filename to save to
1227
- # @param opts [Hash] Set of options
1228
- # @option opts [Integer] :page_height Set page height for multipage save
1229
- # @option opts [Boolean] :strip Strip all metadata from image
1230
- # @option opts [Array<Double>] :background Background value
1231
- # @return [nil]
1232
-
1233
- # @!method ppmsave(filename, opts = {})
1234
- # Save image to ppm file.
1235
- # @param filename [String] Filename to save to
1236
- # @param opts [Hash] Set of options
1237
- # @option opts [Integer] :page_height Set page height for multipage save
1238
- # @option opts [Boolean] :ascii save as ascii
1239
- # @option opts [Boolean] :squash save as one bit
1240
- # @option opts [Boolean] :strip Strip all metadata from image
1241
- # @option opts [Array<Double>] :background Background value
1242
- # @return [nil]
1243
-
1244
- # @!method radsave(filename, opts = {})
1245
- # Save image to radiance file.
1246
- # @param filename [String] Filename to save to
1247
- # @param opts [Hash] Set of options
1248
- # @option opts [Integer] :page_height Set page height for multipage save
1249
- # @option opts [Boolean] :strip Strip all metadata from image
1250
- # @option opts [Array<Double>] :background Background value
1251
- # @return [nil]
1252
-
1253
- # @!method radsave_buffer(opts = {})
1254
- # Save image to radiance buffer.
1255
- # @param opts [Hash] Set of options
1256
- # @option opts [Integer] :page_height Set page height for multipage save
1257
- # @option opts [Boolean] :strip Strip all metadata from image
1258
- # @option opts [Array<Double>] :background Background value
1259
- # @return [VipsBlob] Buffer to save to
1260
-
1261
- # @!method dzsave(filename, opts = {})
1262
- # Save image to deepzoom file.
1263
- # @param filename [String] Filename to save to
1264
- # @param opts [Hash] Set of options
1265
- # @option opts [String] :basename Base name to save to
1266
- # @option opts [Vips::ForeignDzLayout] :layout Directory layout
1267
- # @option opts [Integer] :page_height Set page height for multipage save
1268
- # @option opts [String] :suffix Filename suffix for tiles
1269
- # @option opts [Integer] :overlap Tile overlap in pixels
1270
- # @option opts [Integer] :tile_size Tile size in pixels
1271
- # @option opts [Boolean] :centre Center image in tile
1272
- # @option opts [Vips::ForeignDzDepth] :depth Pyramid depth
1273
- # @option opts [Vips::Angle] :angle Rotate image during save
1274
- # @option opts [Vips::ForeignDzContainer] :container Pyramid container type
1275
- # @option opts [Boolean] :properties Write a properties file to the output directory
1276
- # @option opts [Integer] :compression ZIP deflate compression level
1277
- # @option opts [Boolean] :strip Strip all metadata from image
1278
- # @option opts [Array<Double>] :background Background value
1279
- # @return [nil]
1280
-
1281
- # @!method dzsave_buffer(opts = {})
1282
- # Save image to dz buffer.
1283
- # @param opts [Hash] Set of options
1284
- # @option opts [String] :basename Base name to save to
1285
- # @option opts [Vips::ForeignDzLayout] :layout Directory layout
1286
- # @option opts [Integer] :page_height Set page height for multipage save
1287
- # @option opts [String] :suffix Filename suffix for tiles
1288
- # @option opts [Integer] :overlap Tile overlap in pixels
1289
- # @option opts [Integer] :tile_size Tile size in pixels
1290
- # @option opts [Boolean] :centre Center image in tile
1291
- # @option opts [Vips::ForeignDzDepth] :depth Pyramid depth
1292
- # @option opts [Vips::Angle] :angle Rotate image during save
1293
- # @option opts [Vips::ForeignDzContainer] :container Pyramid container type
1294
- # @option opts [Boolean] :properties Write a properties file to the output directory
1295
- # @option opts [Integer] :compression ZIP deflate compression level
1296
- # @option opts [Boolean] :strip Strip all metadata from image
1297
- # @option opts [Array<Double>] :background Background value
1298
- # @return [VipsBlob] Buffer to save to
1299
-
1300
- # @!method pngsave(filename, opts = {})
1301
- # Save image to png file.
1302
- # @param filename [String] Filename to save to
1303
- # @param opts [Hash] Set of options
1304
- # @option opts [Integer] :compression Compression factor
1305
- # @option opts [Boolean] :interlace Interlace image
1306
- # @option opts [Integer] :page_height Set page height for multipage save
1307
- # @option opts [String] :profile ICC profile to embed
1308
- # @option opts [Vips::ForeignPngFilter] :filter libpng row filter flag(s)
1309
- # @option opts [Boolean] :strip Strip all metadata from image
1310
- # @option opts [Array<Double>] :background Background value
1311
- # @return [nil]
1312
-
1313
- # @!method pngsave_buffer(opts = {})
1314
- # Save image to png buffer.
1315
- # @param opts [Hash] Set of options
1316
- # @option opts [Integer] :compression Compression factor
1317
- # @option opts [Boolean] :interlace Interlace image
1318
- # @option opts [Integer] :page_height Set page height for multipage save
1319
- # @option opts [String] :profile ICC profile to embed
1320
- # @option opts [Vips::ForeignPngFilter] :filter libpng row filter flag(s)
1321
- # @option opts [Boolean] :strip Strip all metadata from image
1322
- # @option opts [Array<Double>] :background Background value
1323
- # @return [VipsBlob] Buffer to save to
1324
-
1325
- # @!method jpegsave(filename, opts = {})
1326
- # Save image to jpeg file.
1327
- # @param filename [String] Filename to save to
1328
- # @param opts [Hash] Set of options
1329
- # @option opts [Integer] :page_height Set page height for multipage save
1330
- # @option opts [Integer] :Q Q factor
1331
- # @option opts [String] :profile ICC profile to embed
1332
- # @option opts [Boolean] :optimize_coding Compute optimal Huffman coding tables
1333
- # @option opts [Boolean] :interlace Generate an interlaced (progressive) jpeg
1334
- # @option opts [Boolean] :no_subsample Disable chroma subsample
1335
- # @option opts [Boolean] :trellis_quant Apply trellis quantisation to each 8x8 block
1336
- # @option opts [Boolean] :overshoot_deringing Apply overshooting to samples with extreme values
1337
- # @option opts [Boolean] :optimize_scans Split the spectrum of DCT coefficients into separate scans
1338
- # @option opts [Integer] :quant_table Use predefined quantization table with given index
1339
- # @option opts [Boolean] :strip Strip all metadata from image
1340
- # @option opts [Array<Double>] :background Background value
1341
- # @return [nil]
1342
-
1343
- # @!method jpegsave_buffer(opts = {})
1344
- # Save image to jpeg buffer.
1345
- # @param opts [Hash] Set of options
1346
- # @option opts [Integer] :page_height Set page height for multipage save
1347
- # @option opts [Integer] :Q Q factor
1348
- # @option opts [String] :profile ICC profile to embed
1349
- # @option opts [Boolean] :optimize_coding Compute optimal Huffman coding tables
1350
- # @option opts [Boolean] :interlace Generate an interlaced (progressive) jpeg
1351
- # @option opts [Boolean] :no_subsample Disable chroma subsample
1352
- # @option opts [Boolean] :trellis_quant Apply trellis quantisation to each 8x8 block
1353
- # @option opts [Boolean] :overshoot_deringing Apply overshooting to samples with extreme values
1354
- # @option opts [Boolean] :optimize_scans Split the spectrum of DCT coefficients into separate scans
1355
- # @option opts [Integer] :quant_table Use predefined quantization table with given index
1356
- # @option opts [Boolean] :strip Strip all metadata from image
1357
- # @option opts [Array<Double>] :background Background value
1358
- # @return [VipsBlob] Buffer to save to
1359
-
1360
- # @!method jpegsave_mime(opts = {})
1361
- # Save image to jpeg mime.
1362
- # @param opts [Hash] Set of options
1363
- # @option opts [Integer] :page_height Set page height for multipage save
1364
- # @option opts [Integer] :Q Q factor
1365
- # @option opts [String] :profile ICC profile to embed
1366
- # @option opts [Boolean] :optimize_coding Compute optimal Huffman coding tables
1367
- # @option opts [Boolean] :interlace Generate an interlaced (progressive) jpeg
1368
- # @option opts [Boolean] :no_subsample Disable chroma subsample
1369
- # @option opts [Boolean] :trellis_quant Apply trellis quantisation to each 8x8 block
1370
- # @option opts [Boolean] :overshoot_deringing Apply overshooting to samples with extreme values
1371
- # @option opts [Boolean] :optimize_scans Split the spectrum of DCT coefficients into separate scans
1372
- # @option opts [Integer] :quant_table Use predefined quantization table with given index
1373
- # @option opts [Boolean] :strip Strip all metadata from image
1374
- # @option opts [Array<Double>] :background Background value
1375
- # @return [nil]
1376
-
1377
- # @!method webpsave(filename, opts = {})
1378
- # Save image to webp file.
1379
- # @param filename [String] Filename to save to
1380
- # @param opts [Hash] Set of options
1381
- # @option opts [Integer] :page_height Set page height for multipage save
1382
- # @option opts [Integer] :Q Q factor
1383
- # @option opts [Boolean] :lossless enable lossless compression
1384
- # @option opts [Vips::ForeignWebpPreset] :preset Preset for lossy compression
1385
- # @option opts [Boolean] :smart_subsample Enable high quality chroma subsampling
1386
- # @option opts [Boolean] :near_lossless Enable preprocessing in lossless mode (uses Q)
1387
- # @option opts [Integer] :alpha_q Change alpha plane fidelity for lossy compression
1388
- # @option opts [Boolean] :strip Strip all metadata from image
1389
- # @option opts [Array<Double>] :background Background value
1390
- # @return [nil]
1391
-
1392
- # @!method webpsave_buffer(opts = {})
1393
- # Save image to webp buffer.
1394
- # @param opts [Hash] Set of options
1395
- # @option opts [Integer] :page_height Set page height for multipage save
1396
- # @option opts [Integer] :Q Q factor
1397
- # @option opts [Boolean] :lossless enable lossless compression
1398
- # @option opts [Vips::ForeignWebpPreset] :preset Preset for lossy compression
1399
- # @option opts [Boolean] :smart_subsample Enable high quality chroma subsampling
1400
- # @option opts [Boolean] :near_lossless Enable preprocessing in lossless mode (uses Q)
1401
- # @option opts [Integer] :alpha_q Change alpha plane fidelity for lossy compression
1402
- # @option opts [Boolean] :strip Strip all metadata from image
1403
- # @option opts [Array<Double>] :background Background value
1404
- # @return [VipsBlob] Buffer to save to
1405
-
1406
- # @!method tiffsave(filename, opts = {})
1407
- # Save image to tiff file.
1408
- # @param filename [String] Filename to save to
1409
- # @param opts [Hash] Set of options
1410
- # @option opts [Vips::ForeignTiffCompression] :compression Compression for this file
1411
- # @option opts [Integer] :Q Q factor
1412
- # @option opts [Vips::ForeignTiffPredictor] :predictor Compression prediction
1413
- # @option opts [Integer] :page_height Set page height for multipage save
1414
- # @option opts [String] :profile ICC profile to embed
1415
- # @option opts [Boolean] :tile Write a tiled tiff
1416
- # @option opts [Integer] :tile_width Tile width in pixels
1417
- # @option opts [Integer] :tile_height Tile height in pixels
1418
- # @option opts [Boolean] :pyramid Write a pyramidal tiff
1419
- # @option opts [Boolean] :miniswhite Use 0 for white in 1-bit images
1420
- # @option opts [Boolean] :squash Squash images down to 1 bit
1421
- # @option opts [Vips::ForeignTiffResunit] :resunit Resolution unit
1422
- # @option opts [Float] :xres Horizontal resolution in pixels/mm
1423
- # @option opts [Float] :yres Vertical resolution in pixels/mm
1424
- # @option opts [Boolean] :bigtiff Write a bigtiff image
1425
- # @option opts [Boolean] :properties Write a properties document to IMAGEDESCRIPTION
1426
- # @option opts [Boolean] :strip Strip all metadata from image
1427
- # @option opts [Array<Double>] :background Background value
1428
- # @return [nil]
1429
-
1430
- # @!method tiffsave_buffer(opts = {})
1431
- # Save image to tiff buffer.
1432
- # @param opts [Hash] Set of options
1433
- # @option opts [Vips::ForeignTiffCompression] :compression Compression for this file
1434
- # @option opts [Integer] :Q Q factor
1435
- # @option opts [Vips::ForeignTiffPredictor] :predictor Compression prediction
1436
- # @option opts [Integer] :page_height Set page height for multipage save
1437
- # @option opts [String] :profile ICC profile to embed
1438
- # @option opts [Boolean] :tile Write a tiled tiff
1439
- # @option opts [Integer] :tile_width Tile width in pixels
1440
- # @option opts [Integer] :tile_height Tile height in pixels
1441
- # @option opts [Boolean] :pyramid Write a pyramidal tiff
1442
- # @option opts [Boolean] :miniswhite Use 0 for white in 1-bit images
1443
- # @option opts [Boolean] :squash Squash images down to 1 bit
1444
- # @option opts [Vips::ForeignTiffResunit] :resunit Resolution unit
1445
- # @option opts [Float] :xres Horizontal resolution in pixels/mm
1446
- # @option opts [Float] :yres Vertical resolution in pixels/mm
1447
- # @option opts [Boolean] :bigtiff Write a bigtiff image
1448
- # @option opts [Boolean] :properties Write a properties document to IMAGEDESCRIPTION
1449
- # @option opts [Boolean] :strip Strip all metadata from image
1450
- # @option opts [Array<Double>] :background Background value
1451
- # @return [VipsBlob] Buffer to save to
1452
-
1453
- # @!method fitssave(filename, opts = {})
1454
- # Save image to fits file.
1455
- # @param filename [String] Filename to save to
1456
- # @param opts [Hash] Set of options
1457
- # @option opts [Integer] :page_height Set page height for multipage save
1458
- # @option opts [Boolean] :strip Strip all metadata from image
1459
- # @option opts [Array<Double>] :background Background value
1460
- # @return [nil]
1461
-
1462
- # @!method self.thumbnail(filename, width, opts = {})
1463
- # Generate thumbnail from file.
1464
- # @param filename [String] Filename to read from
1465
- # @param width [Integer] Size to this width
1466
- # @param opts [Hash] Set of options
1467
- # @option opts [Integer] :height Size to this height
1468
- # @option opts [Vips::Size] :size Only upsize, only downsize, or both
1469
- # @option opts [Boolean] :auto_rotate Use orientation tags to rotate image upright
1470
- # @option opts [Vips::Interesting] :crop Reduce to fill target rectangle, then crop
1471
- # @option opts [Boolean] :linear Reduce in linear light
1472
- # @option opts [String] :import_profile Fallback import profile
1473
- # @option opts [String] :export_profile Fallback export profile
1474
- # @option opts [Vips::Intent] :intent Rendering intent
1475
- # @return [Vips::Image] Output image
1476
-
1477
- # @!method self.thumbnail_buffer(buffer, width, opts = {})
1478
- # Generate thumbnail from buffer.
1479
- # @param buffer [VipsBlob] Buffer to load from
1480
- # @param width [Integer] Size to this width
1481
- # @param opts [Hash] Set of options
1482
- # @option opts [Integer] :height Size to this height
1483
- # @option opts [Vips::Size] :size Only upsize, only downsize, or both
1484
- # @option opts [Boolean] :auto_rotate Use orientation tags to rotate image upright
1485
- # @option opts [Vips::Interesting] :crop Reduce to fill target rectangle, then crop
1486
- # @option opts [Boolean] :linear Reduce in linear light
1487
- # @option opts [String] :import_profile Fallback import profile
1488
- # @option opts [String] :export_profile Fallback export profile
1489
- # @option opts [Vips::Intent] :intent Rendering intent
1490
- # @return [Vips::Image] Output image
1491
-
1492
- # @!method thumbnail_image(width, opts = {})
1493
- # Generate thumbnail from image.
1494
- # @param width [Integer] Size to this width
1495
- # @param opts [Hash] Set of options
1496
- # @option opts [Integer] :height Size to this height
1497
- # @option opts [Vips::Size] :size Only upsize, only downsize, or both
1498
- # @option opts [Boolean] :auto_rotate Use orientation tags to rotate image upright
1499
- # @option opts [Vips::Interesting] :crop Reduce to fill target rectangle, then crop
1500
- # @option opts [Boolean] :linear Reduce in linear light
1501
- # @option opts [String] :import_profile Fallback import profile
1502
- # @option opts [String] :export_profile Fallback export profile
1503
- # @option opts [Vips::Intent] :intent Rendering intent
1504
- # @return [Vips::Image] Output image
1505
-
1506
- # @!method mapim(index, opts = {})
1507
- # Resample with an mapim image.
1508
- # @param index [Vips::Image] Index pixels with this
1509
- # @param opts [Hash] Set of options
1510
- # @option opts [Vips::Interpolate] :interpolate Interpolate pixels with this
1511
- # @return [Vips::Image] Output image
1512
-
1513
- # @!method shrink(hshrink, vshrink, opts = {})
1514
- # Shrink an image.
1515
- # @param hshrink [Float] Horizontal shrink factor
1516
- # @param vshrink [Float] Vertical shrink factor
1517
- # @param opts [Hash] Set of options
1518
- # @return [Vips::Image] Output image
1519
-
1520
- # @!method shrinkh(hshrink, opts = {})
1521
- # Shrink an image horizontally.
1522
- # @param hshrink [Integer] Horizontal shrink factor
1523
- # @param opts [Hash] Set of options
1524
- # @return [Vips::Image] Output image
1525
-
1526
- # @!method shrinkv(vshrink, opts = {})
1527
- # Shrink an image vertically.
1528
- # @param vshrink [Integer] Vertical shrink factor
1529
- # @param opts [Hash] Set of options
1530
- # @return [Vips::Image] Output image
1531
-
1532
- # @!method reduceh(hshrink, opts = {})
1533
- # Shrink an image horizontally.
1534
- # @param hshrink [Float] Horizontal shrink factor
1535
- # @param opts [Hash] Set of options
1536
- # @option opts [Vips::Kernel] :kernel Resampling kernel
1537
- # @option opts [Boolean] :centre Use centre sampling convention
1538
- # @return [Vips::Image] Output image
1539
-
1540
- # @!method reducev(vshrink, opts = {})
1541
- # Shrink an image vertically.
1542
- # @param vshrink [Float] Vertical shrink factor
1543
- # @param opts [Hash] Set of options
1544
- # @option opts [Vips::Kernel] :kernel Resampling kernel
1545
- # @option opts [Boolean] :centre Use centre sampling convention
1546
- # @return [Vips::Image] Output image
1547
-
1548
- # @!method reduce(hshrink, vshrink, opts = {})
1549
- # Reduce an image.
1550
- # @param hshrink [Float] Horizontal shrink factor
1551
- # @param vshrink [Float] Vertical shrink factor
1552
- # @param opts [Hash] Set of options
1553
- # @option opts [Vips::Kernel] :kernel Resampling kernel
1554
- # @option opts [Boolean] :centre Use centre sampling convention
1555
- # @return [Vips::Image] Output image
1556
-
1557
- # @!method quadratic(coeff, opts = {})
1558
- # Resample an image with a quadratic transform.
1559
- # @param coeff [Vips::Image] Coefficient matrix
1560
- # @param opts [Hash] Set of options
1561
- # @option opts [Vips::Interpolate] :interpolate Interpolate values with this
1562
- # @return [Vips::Image] Output image
1563
-
1564
- # @!method affine(matrix, opts = {})
1565
- # Affine transform of an image.
1566
- # @param matrix [Array<Double>] Transformation matrix
1567
- # @param opts [Hash] Set of options
1568
- # @option opts [Vips::Interpolate] :interpolate Interpolate pixels with this
1569
- # @option opts [Array<Integer>] :oarea Area of output to generate
1570
- # @option opts [Float] :odx Horizontal output displacement
1571
- # @option opts [Float] :ody Vertical output displacement
1572
- # @option opts [Float] :idx Horizontal input displacement
1573
- # @option opts [Float] :idy Vertical input displacement
1574
- # @option opts [Array<Double>] :background Background value
1575
- # @option opts [Vips::Extend] :extend How to generate the extra pixels
1576
- # @return [Vips::Image] Output image
1577
-
1578
- # @!method similarity(opts = {})
1579
- # Similarity transform of an image.
1580
- # @param opts [Hash] Set of options
1581
- # @option opts [Array<Double>] :background Background value
1582
- # @option opts [Vips::Interpolate] :interpolate Interpolate pixels with this
1583
- # @option opts [Float] :scale Scale by this factor
1584
- # @option opts [Float] :angle Rotate anticlockwise by this many degrees
1585
- # @option opts [Float] :odx Horizontal output displacement
1586
- # @option opts [Float] :ody Vertical output displacement
1587
- # @option opts [Float] :idx Horizontal input displacement
1588
- # @option opts [Float] :idy Vertical input displacement
1589
- # @return [Vips::Image] Output image
1590
-
1591
- # @!method resize(scale, opts = {})
1592
- # Resize an image.
1593
- # @param scale [Float] Scale image by this factor
1594
- # @param opts [Hash] Set of options
1595
- # @option opts [Vips::Kernel] :kernel Resampling kernel
1596
- # @option opts [Float] :vscale Vertical scale image by this factor
1597
- # @return [Vips::Image] Output image
1598
-
1599
- # @!method colourspace(space, opts = {})
1600
- # Convert to a new colorspace.
1601
- # @param space [Vips::Interpretation] Destination color space
1602
- # @param opts [Hash] Set of options
1603
- # @option opts [Vips::Interpretation] :source_space Source color space
1604
- # @return [Vips::Image] Output image
1605
-
1606
- # @!method Lab2XYZ(opts = {})
1607
- # Transform cielab to xyz.
1608
- # @param opts [Hash] Set of options
1609
- # @option opts [Array<Double>] :temp Color temperature
1610
- # @return [Vips::Image] Output image
1611
-
1612
- # @!method XYZ2Lab(opts = {})
1613
- # Transform xyz to lab.
1614
- # @param opts [Hash] Set of options
1615
- # @option opts [Array<Double>] :temp Colour temperature
1616
- # @return [Vips::Image] Output image
1617
-
1618
- # @!method Lab2LCh(opts = {})
1619
- # Transform lab to lch.
1620
- # @param opts [Hash] Set of options
1621
- # @return [Vips::Image] Output image
1622
-
1623
- # @!method LCh2Lab(opts = {})
1624
- # Transform lch to lab.
1625
- # @param opts [Hash] Set of options
1626
- # @return [Vips::Image] Output image
1627
-
1628
- # @!method LCh2CMC(opts = {})
1629
- # Transform lch to cmc.
1630
- # @param opts [Hash] Set of options
1631
- # @return [Vips::Image] Output image
1632
-
1633
- # @!method CMC2LCh(opts = {})
1634
- # Transform lch to cmc.
1635
- # @param opts [Hash] Set of options
1636
- # @return [Vips::Image] Output image
1637
-
1638
- # @!method XYZ2Yxy(opts = {})
1639
- # Transform xyz to yxy.
1640
- # @param opts [Hash] Set of options
1641
- # @return [Vips::Image] Output image
1642
-
1643
- # @!method Yxy2XYZ(opts = {})
1644
- # Transform yxy to xyz.
1645
- # @param opts [Hash] Set of options
1646
- # @return [Vips::Image] Output image
1647
-
1648
- # @!method scRGB2XYZ(opts = {})
1649
- # Transform scrgb to xyz.
1650
- # @param opts [Hash] Set of options
1651
- # @return [Vips::Image] Output image
1652
-
1653
- # @!method XYZ2scRGB(opts = {})
1654
- # Transform xyz to scrgb.
1655
- # @param opts [Hash] Set of options
1656
- # @return [Vips::Image] Output image
1657
-
1658
- # @!method LabQ2Lab(opts = {})
1659
- # Unpack a labq image to float lab.
1660
- # @param opts [Hash] Set of options
1661
- # @return [Vips::Image] Output image
1662
-
1663
- # @!method Lab2LabQ(opts = {})
1664
- # Transform float lab to labq coding.
1665
- # @param opts [Hash] Set of options
1666
- # @return [Vips::Image] Output image
1667
-
1668
- # @!method LabQ2LabS(opts = {})
1669
- # Unpack a labq image to short lab.
1670
- # @param opts [Hash] Set of options
1671
- # @return [Vips::Image] Output image
1672
-
1673
- # @!method LabS2LabQ(opts = {})
1674
- # Transform short lab to labq coding.
1675
- # @param opts [Hash] Set of options
1676
- # @return [Vips::Image] Output image
1677
-
1678
- # @!method LabS2Lab(opts = {})
1679
- # Transform signed short lab to float.
1680
- # @param opts [Hash] Set of options
1681
- # @return [Vips::Image] Output image
1682
-
1683
- # @!method Lab2LabS(opts = {})
1684
- # Transform float lab to signed short.
1685
- # @param opts [Hash] Set of options
1686
- # @return [Vips::Image] Output image
1687
-
1688
- # @!method rad2float(opts = {})
1689
- # Unpack radiance coding to float rgb.
1690
- # @param opts [Hash] Set of options
1691
- # @return [Vips::Image] Output image
1692
-
1693
- # @!method float2rad(opts = {})
1694
- # Transform float rgb to radiance coding.
1695
- # @param opts [Hash] Set of options
1696
- # @return [Vips::Image] Output image
1697
-
1698
- # @!method LabQ2sRGB(opts = {})
1699
- # Convert a labq image to srgb.
1700
- # @param opts [Hash] Set of options
1701
- # @return [Vips::Image] Output image
1702
-
1703
- # @!method sRGB2HSV(opts = {})
1704
- # Transform srgb to hsv.
1705
- # @param opts [Hash] Set of options
1706
- # @return [Vips::Image] Output image
1707
-
1708
- # @!method HSV2sRGB(opts = {})
1709
- # Transform hsv to srgb.
1710
- # @param opts [Hash] Set of options
1711
- # @return [Vips::Image] Output image
1712
-
1713
- # @!method icc_import(opts = {})
1714
- # Import from device with icc profile.
1715
- # @param opts [Hash] Set of options
1716
- # @option opts [Vips::PCS] :pcs Set Profile Connection Space
1717
- # @option opts [Vips::Intent] :intent Rendering intent
1718
- # @option opts [Boolean] :embedded Use embedded input profile, if available
1719
- # @option opts [String] :input_profile Filename to load input profile from
1720
- # @return [Vips::Image] Output image
1721
-
1722
- # @!method icc_export(opts = {})
1723
- # Output to device with icc profile.
1724
- # @param opts [Hash] Set of options
1725
- # @option opts [Vips::PCS] :pcs Set Profile Connection Space
1726
- # @option opts [Vips::Intent] :intent Rendering intent
1727
- # @option opts [String] :output_profile Filename to load output profile from
1728
- # @option opts [Integer] :depth Output device space depth in bits
1729
- # @return [Vips::Image] Output image
1730
-
1731
- # @!method icc_transform(output_profile, opts = {})
1732
- # Transform between devices with icc profiles.
1733
- # @param output_profile [String] Filename to load output profile from
1734
- # @param opts [Hash] Set of options
1735
- # @option opts [Vips::PCS] :pcs Set Profile Connection Space
1736
- # @option opts [Vips::Intent] :intent Rendering intent
1737
- # @option opts [Boolean] :embedded Use embedded input profile, if available
1738
- # @option opts [String] :input_profile Filename to load input profile from
1739
- # @option opts [Integer] :depth Output device space depth in bits
1740
- # @return [Vips::Image] Output image
1741
-
1742
- # @!method dE76(right, opts = {})
1743
- # Calculate de76.
1744
- # @param right [Vips::Image] Right-hand input image
1745
- # @param opts [Hash] Set of options
1746
- # @return [Vips::Image] Output image
1747
-
1748
- # @!method dE00(right, opts = {})
1749
- # Calculate de00.
1750
- # @param right [Vips::Image] Right-hand input image
1751
- # @param opts [Hash] Set of options
1752
- # @return [Vips::Image] Output image
1753
-
1754
- # @!method dECMC(right, opts = {})
1755
- # Calculate decmc.
1756
- # @param right [Vips::Image] Right-hand input image
1757
- # @param opts [Hash] Set of options
1758
- # @return [Vips::Image] Output image
1759
-
1760
- # @!method sRGB2scRGB(opts = {})
1761
- # Convert an srgb image to scrgb.
1762
- # @param opts [Hash] Set of options
1763
- # @return [Vips::Image] Output image
1764
-
1765
- # @!method scRGB2BW(opts = {})
1766
- # Convert scrgb to bw.
1767
- # @param opts [Hash] Set of options
1768
- # @option opts [Integer] :depth Output device space depth in bits
1769
- # @return [Vips::Image] Output image
1770
-
1771
- # @!method scRGB2sRGB(opts = {})
1772
- # Convert an scrgb image to srgb.
1773
- # @param opts [Hash] Set of options
1774
- # @option opts [Integer] :depth Output device space depth in bits
1775
- # @return [Vips::Image] Output image
1776
-
1777
- # @!method maplut(lut, opts = {})
1778
- # Map an image though a lut.
1779
- # @param lut [Vips::Image] Look-up table image
1780
- # @param opts [Hash] Set of options
1781
- # @option opts [Integer] :band apply one-band lut to this band of in
1782
- # @return [Vips::Image] Output image
1783
-
1784
- # @!method percent(percent, opts = {})
1785
- # Find threshold for percent of pixels.
1786
- # @param percent [Float] Percent of pixels
1787
- # @param opts [Hash] Set of options
1788
- # @return [Integer] Threshold above which lie percent of pixels
1789
-
1790
- # @!method stdif(width, height, opts = {})
1791
- # Statistical difference.
1792
- # @param width [Integer] Window width in pixels
1793
- # @param height [Integer] Window height in pixels
1794
- # @param opts [Hash] Set of options
1795
- # @option opts [Float] :s0 New deviation
1796
- # @option opts [Float] :b Weight of new deviation
1797
- # @option opts [Float] :m0 New mean
1798
- # @option opts [Float] :a Weight of new mean
1799
- # @return [Vips::Image] Output image
1800
-
1801
- # @!method hist_cum(opts = {})
1802
- # Form cumulative histogram.
1803
- # @param opts [Hash] Set of options
1804
- # @return [Vips::Image] Output image
1805
-
1806
- # @!method hist_match(ref, opts = {})
1807
- # Match two histograms.
1808
- # @param ref [Vips::Image] Reference histogram
1809
- # @param opts [Hash] Set of options
1810
- # @return [Vips::Image] Output image
1811
-
1812
- # @!method hist_norm(opts = {})
1813
- # Normalise histogram.
1814
- # @param opts [Hash] Set of options
1815
- # @return [Vips::Image] Output image
1816
-
1817
- # @!method hist_equal(opts = {})
1818
- # Histogram equalisation.
1819
- # @param opts [Hash] Set of options
1820
- # @option opts [Integer] :band Equalise with this band
1821
- # @return [Vips::Image] Output image
1822
-
1823
- # @!method hist_plot(opts = {})
1824
- # Plot histogram.
1825
- # @param opts [Hash] Set of options
1826
- # @return [Vips::Image] Output image
1827
-
1828
- # @!method hist_local(width, height, opts = {})
1829
- # Local histogram equalisation.
1830
- # @param width [Integer] Window width in pixels
1831
- # @param height [Integer] Window height in pixels
1832
- # @param opts [Hash] Set of options
1833
- # @option opts [Integer] :max_slope Maximum slope (CLAHE)
1834
- # @return [Vips::Image] Output image
1835
-
1836
- # @!method hist_ismonotonic(opts = {})
1837
- # Test for monotonicity.
1838
- # @param opts [Hash] Set of options
1839
- # @return [Boolean] true if in is monotonic
1840
-
1841
- # @!method hist_entropy(opts = {})
1842
- # Estimate image entropy.
1843
- # @param opts [Hash] Set of options
1844
- # @return [Float] Output value
1845
-
1846
- # @!method conv(mask, opts = {})
1847
- # Convolution operation.
1848
- # @param mask [Vips::Image] Input matrix image
1849
- # @param opts [Hash] Set of options
1850
- # @option opts [Vips::Precision] :precision Convolve with this precision
1851
- # @option opts [Integer] :layers Use this many layers in approximation
1852
- # @option opts [Integer] :cluster Cluster lines closer than this in approximation
1853
- # @return [Vips::Image] Output image
1854
-
1855
- # @!method conva(mask, opts = {})
1856
- # Approximate integer convolution.
1857
- # @param mask [Vips::Image] Input matrix image
1858
- # @param opts [Hash] Set of options
1859
- # @option opts [Integer] :layers Use this many layers in approximation
1860
- # @option opts [Integer] :cluster Cluster lines closer than this in approximation
1861
- # @return [Vips::Image] Output image
1862
-
1863
- # @!method convf(mask, opts = {})
1864
- # Float convolution operation.
1865
- # @param mask [Vips::Image] Input matrix image
1866
- # @param opts [Hash] Set of options
1867
- # @return [Vips::Image] Output image
1868
-
1869
- # @!method convi(mask, opts = {})
1870
- # Int convolution operation.
1871
- # @param mask [Vips::Image] Input matrix image
1872
- # @param opts [Hash] Set of options
1873
- # @return [Vips::Image] Output image
1874
-
1875
- # @!method compass(mask, opts = {})
1876
- # Convolve with rotating mask.
1877
- # @param mask [Vips::Image] Input matrix image
1878
- # @param opts [Hash] Set of options
1879
- # @option opts [Integer] :times Rotate and convolve this many times
1880
- # @option opts [Vips::Angle45] :angle Rotate mask by this much between convolutions
1881
- # @option opts [Vips::Combine] :combine Combine convolution results like this
1882
- # @option opts [Vips::Precision] :precision Convolve with this precision
1883
- # @option opts [Integer] :layers Use this many layers in approximation
1884
- # @option opts [Integer] :cluster Cluster lines closer than this in approximation
1885
- # @return [Vips::Image] Output image
1886
-
1887
- # @!method convsep(mask, opts = {})
1888
- # Seperable convolution operation.
1889
- # @param mask [Vips::Image] Input matrix image
1890
- # @param opts [Hash] Set of options
1891
- # @option opts [Vips::Precision] :precision Convolve with this precision
1892
- # @option opts [Integer] :layers Use this many layers in approximation
1893
- # @option opts [Integer] :cluster Cluster lines closer than this in approximation
1894
- # @return [Vips::Image] Output image
1895
-
1896
- # @!method convasep(mask, opts = {})
1897
- # Approximate separable integer convolution.
1898
- # @param mask [Vips::Image] Input matrix image
1899
- # @param opts [Hash] Set of options
1900
- # @option opts [Integer] :layers Use this many layers in approximation
1901
- # @return [Vips::Image] Output image
1902
-
1903
- # @!method fastcor(ref, opts = {})
1904
- # Fast correlation.
1905
- # @param ref [Vips::Image] Input reference image
1906
- # @param opts [Hash] Set of options
1907
- # @return [Vips::Image] Output image
1908
-
1909
- # @!method spcor(ref, opts = {})
1910
- # Spatial correlation.
1911
- # @param ref [Vips::Image] Input reference image
1912
- # @param opts [Hash] Set of options
1913
- # @return [Vips::Image] Output image
1914
-
1915
- # @!method sharpen(opts = {})
1916
- # Unsharp masking for print.
1917
- # @param opts [Hash] Set of options
1918
- # @option opts [Float] :sigma Sigma of Gaussian
1919
- # @option opts [Float] :x1 Flat/jaggy threshold
1920
- # @option opts [Float] :y2 Maximum brightening
1921
- # @option opts [Float] :y3 Maximum darkening
1922
- # @option opts [Float] :m1 Slope for flat areas
1923
- # @option opts [Float] :m2 Slope for jaggy areas
1924
- # @return [Vips::Image] Output image
1925
-
1926
- # @!method gaussblur(sigma, opts = {})
1927
- # Gaussian blur.
1928
- # @param sigma [Float] Sigma of Gaussian
1929
- # @param opts [Hash] Set of options
1930
- # @option opts [Float] :min_ampl Minimum amplitude of Gaussian
1931
- # @option opts [Vips::Precision] :precision Convolve with this precision
1932
- # @return [Vips::Image] Output image
1933
-
1934
- # @!method fwfft(opts = {})
1935
- # Forward fft.
1936
- # @param opts [Hash] Set of options
1937
- # @return [Vips::Image] Output image
1938
-
1939
- # @!method invfft(opts = {})
1940
- # Inverse fft.
1941
- # @param opts [Hash] Set of options
1942
- # @option opts [Boolean] :real Output only the real part of the transform
1943
- # @return [Vips::Image] Output image
1944
-
1945
- # @!method freqmult(mask, opts = {})
1946
- # Frequency-domain filtering.
1947
- # @param mask [Vips::Image] Input mask image
1948
- # @param opts [Hash] Set of options
1949
- # @return [Vips::Image] Output image
1950
-
1951
- # @!method spectrum(opts = {})
1952
- # Make displayable power spectrum.
1953
- # @param opts [Hash] Set of options
1954
- # @return [Vips::Image] Output image
1955
-
1956
- # @!method phasecor(in2, opts = {})
1957
- # Calculate phase correlation.
1958
- # @param in2 [Vips::Image] Second input image
1959
- # @param opts [Hash] Set of options
1960
- # @return [Vips::Image] Output image
1961
-
1962
- # @!method morph(mask, morph, opts = {})
1963
- # Morphology operation.
1964
- # @param mask [Vips::Image] Input matrix image
1965
- # @param morph [Vips::OperationMorphology] Morphological operation to perform
1966
- # @param opts [Hash] Set of options
1967
- # @return [Vips::Image] Output image
1968
-
1969
- # @!method rank(width, height, index, opts = {})
1970
- # Rank filter.
1971
- # @param width [Integer] Window width in pixels
1972
- # @param height [Integer] Window height in pixels
1973
- # @param index [Integer] Select pixel at index
1974
- # @param opts [Hash] Set of options
1975
- # @return [Vips::Image] Output image
1976
-
1977
- # @!method countlines(direction, opts = {})
1978
- # Count lines in an image.
1979
- # @param direction [Vips::Direction] Countlines left-right or up-down
1980
- # @param opts [Hash] Set of options
1981
- # @return [Float] Number of lines
1982
-
1983
- # @!method labelregions(opts = {})
1984
- # Label regions in an image.
1985
- # @param opts [Hash] Set of options
1986
- # @option opts [Integer] :segments Output Number of discrete contigious regions
1987
- # @return [Vips::Image, Hash<Symbol => Object>] Mask of region labels, Hash of optional output items
1988
-
1989
- # @!method fill_nearest(opts = {})
1990
- # Fill image zeros with nearest non-zero pixel.
1991
- # @param opts [Hash] Set of options
1992
- # @option opts [Vips::Image] :distance Output Distance to nearest non-zero pixel
1993
- # @return [Vips::Image, Hash<Symbol => Object>] Value of nearest non-zero pixel, Hash of optional output items
1994
-
1995
- # @!method draw_rect(ink, left, top, width, height, opts = {})
1996
- # Paint a rectangle on an image.
1997
- # @param ink [Array<Double>] Color for pixels
1998
- # @param left [Integer] Rect to fill
1999
- # @param top [Integer] Rect to fill
2000
- # @param width [Integer] Rect to fill
2001
- # @param height [Integer] Rect to fill
2002
- # @param opts [Hash] Set of options
2003
- # @option opts [Boolean] :fill Draw a solid object
2004
- # @return [Vips::Image] Image to draw on
2005
-
2006
- # @!method draw_mask(ink, mask, x, y, opts = {})
2007
- # Draw a mask on an image.
2008
- # @param ink [Array<Double>] Color for pixels
2009
- # @param mask [Vips::Image] Mask of pixels to draw
2010
- # @param x [Integer] Draw mask here
2011
- # @param y [Integer] Draw mask here
2012
- # @param opts [Hash] Set of options
2013
- # @return [Vips::Image] Image to draw on
2014
-
2015
- # @!method draw_line(ink, x1, y1, x2, y2, opts = {})
2016
- # Draw a line on an image.
2017
- # @param ink [Array<Double>] Color for pixels
2018
- # @param x1 [Integer] Start of draw_line
2019
- # @param y1 [Integer] Start of draw_line
2020
- # @param x2 [Integer] End of draw_line
2021
- # @param y2 [Integer] End of draw_line
2022
- # @param opts [Hash] Set of options
2023
- # @return [Vips::Image] Image to draw on
2024
-
2025
- # @!method draw_circle(ink, cx, cy, radius, opts = {})
2026
- # Draw a circle on an image.
2027
- # @param ink [Array<Double>] Color for pixels
2028
- # @param cx [Integer] Centre of draw_circle
2029
- # @param cy [Integer] Centre of draw_circle
2030
- # @param radius [Integer] Radius in pixels
2031
- # @param opts [Hash] Set of options
2032
- # @option opts [Boolean] :fill Draw a solid object
2033
- # @return [Vips::Image] Image to draw on
2034
-
2035
- # @!method draw_flood(ink, x, y, opts = {})
2036
- # Flood-fill an area.
2037
- # @param ink [Array<Double>] Color for pixels
2038
- # @param x [Integer] DrawFlood start point
2039
- # @param y [Integer] DrawFlood start point
2040
- # @param opts [Hash] Set of options
2041
- # @option opts [Vips::Image] :test Test pixels in this image
2042
- # @option opts [Boolean] :equal DrawFlood while equal to edge
2043
- # @option opts [Integer] :left Output Left edge of modified area
2044
- # @option opts [Integer] :top Output top edge of modified area
2045
- # @option opts [Integer] :width Output width of modified area
2046
- # @option opts [Integer] :height Output height of modified area
2047
- # @return [Vips::Image, Hash<Symbol => Object>] Image to draw on, Hash of optional output items
2048
-
2049
- # @!method draw_image(sub, x, y, opts = {})
2050
- # Paint an image into another image.
2051
- # @param sub [Vips::Image] Sub-image to insert into main image
2052
- # @param x [Integer] Draw image here
2053
- # @param y [Integer] Draw image here
2054
- # @param opts [Hash] Set of options
2055
- # @option opts [Vips::CombineMode] :mode Combining mode
2056
- # @return [Vips::Image] Image to draw on
2057
-
2058
- # @!method draw_smudge(left, top, width, height, opts = {})
2059
- # Blur a rectangle on an image.
2060
- # @param left [Integer] Rect to fill
2061
- # @param top [Integer] Rect to fill
2062
- # @param width [Integer] Rect to fill
2063
- # @param height [Integer] Rect to fill
2064
- # @param opts [Hash] Set of options
2065
- # @return [Vips::Image] Image to draw on
2066
-
2067
- # @!method merge(sec, direction, dx, dy, opts = {})
2068
- # Merge two images.
2069
- # @param sec [Vips::Image] Secondary image
2070
- # @param direction [Vips::Direction] Horizontal or vertcial merge
2071
- # @param dx [Integer] Horizontal displacement from sec to ref
2072
- # @param dy [Integer] Vertical displacement from sec to ref
2073
- # @param opts [Hash] Set of options
2074
- # @option opts [Integer] :mblend Maximum blend size
2075
- # @return [Vips::Image] Output image
2076
-
2077
- # @!method mosaic(sec, direction, xref, yref, xsec, ysec, opts = {})
2078
- # Mosaic two images.
2079
- # @param sec [Vips::Image] Secondary image
2080
- # @param direction [Vips::Direction] Horizontal or vertcial mosaic
2081
- # @param xref [Integer] Position of reference tie-point
2082
- # @param yref [Integer] Position of reference tie-point
2083
- # @param xsec [Integer] Position of secondary tie-point
2084
- # @param ysec [Integer] Position of secondary tie-point
2085
- # @param opts [Hash] Set of options
2086
- # @option opts [Integer] :hwindow Half window size
2087
- # @option opts [Integer] :harea Half area size
2088
- # @option opts [Integer] :mblend Maximum blend size
2089
- # @option opts [Integer] :bandno Band to search for features on
2090
- # @option opts [Integer] :dx0 Output Detected integer offset
2091
- # @option opts [Integer] :dy0 Output Detected integer offset
2092
- # @option opts [Float] :scale1 Output Detected scale
2093
- # @option opts [Float] :angle1 Output Detected rotation
2094
- # @option opts [Float] :dy1 Output Detected first-order displacement
2095
- # @option opts [Float] :dx1 Output Detected first-order displacement
2096
- # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
2097
-
2098
- # @!method mosaic1(sec, direction, xr1, yr1, xs1, ys1, xr2, yr2, xs2, ys2, opts = {})
2099
- # First-order mosaic of two images.
2100
- # @param sec [Vips::Image] Secondary image
2101
- # @param direction [Vips::Direction] Horizontal or vertcial mosaic
2102
- # @param xr1 [Integer] Position of first reference tie-point
2103
- # @param yr1 [Integer] Position of first reference tie-point
2104
- # @param xs1 [Integer] Position of first secondary tie-point
2105
- # @param ys1 [Integer] Position of first secondary tie-point
2106
- # @param xr2 [Integer] Position of second reference tie-point
2107
- # @param yr2 [Integer] Position of second reference tie-point
2108
- # @param xs2 [Integer] Position of second secondary tie-point
2109
- # @param ys2 [Integer] Position of second secondary tie-point
2110
- # @param opts [Hash] Set of options
2111
- # @option opts [Integer] :hwindow Half window size
2112
- # @option opts [Integer] :harea Half area size
2113
- # @option opts [Boolean] :search Search to improve tie-points
2114
- # @option opts [Vips::Interpolate] :interpolate Interpolate pixels with this
2115
- # @option opts [Integer] :mblend Maximum blend size
2116
- # @option opts [Integer] :bandno Band to search for features on
2117
- # @return [Vips::Image] Output image
2118
-
2119
- # @!method match(sec, xr1, yr1, xs1, ys1, xr2, yr2, xs2, ys2, opts = {})
2120
- # First-order match of two images.
2121
- # @param sec [Vips::Image] Secondary image
2122
- # @param xr1 [Integer] Position of first reference tie-point
2123
- # @param yr1 [Integer] Position of first reference tie-point
2124
- # @param xs1 [Integer] Position of first secondary tie-point
2125
- # @param ys1 [Integer] Position of first secondary tie-point
2126
- # @param xr2 [Integer] Position of second reference tie-point
2127
- # @param yr2 [Integer] Position of second reference tie-point
2128
- # @param xs2 [Integer] Position of second secondary tie-point
2129
- # @param ys2 [Integer] Position of second secondary tie-point
2130
- # @param opts [Hash] Set of options
2131
- # @option opts [Integer] :hwindow Half window size
2132
- # @option opts [Integer] :harea Half area size
2133
- # @option opts [Boolean] :search Search to improve tie-points
2134
- # @option opts [Vips::Interpolate] :interpolate Interpolate pixels with this
2135
- # @return [Vips::Image] Output image
2136
-
2137
- # @!method globalbalance(opts = {})
2138
- # Global balance an image mosaic.
2139
- # @param opts [Hash] Set of options
2140
- # @option opts [Float] :gamma Image gamma
2141
- # @option opts [Boolean] :int_output Integer output
2142
- # @return [Vips::Image] Output image
4
+ # @!method self.system(cmd_format, opts = {})
5
+ # Run an external command.
6
+ # @param cmd_format [String] Command to run
7
+ # @param opts [Hash] Set of options
8
+ # @option opts [Array<Image>] :im Array of input images
9
+ # @option opts [String] :out_format Format for output filename
10
+ # @option opts [String] :in_format Format for input filename
11
+ # @option opts [Vips::Image] :out Output Output image
12
+ # @option opts [String] :log Output Command log
13
+ # @return [nil, Hash<Symbol => Object>] Hash of optional output items
14
+
15
+ # @!method add(right, opts = {})
16
+ # Add two images.
17
+ # @param right [Vips::Image] Right-hand image argument
18
+ # @param opts [Hash] Set of options
19
+ # @return [Vips::Image] Output image
20
+
21
+ # @!method subtract(right, opts = {})
22
+ # Subtract two images.
23
+ # @param right [Vips::Image] Right-hand image argument
24
+ # @param opts [Hash] Set of options
25
+ # @return [Vips::Image] Output image
26
+
27
+ # @!method multiply(right, opts = {})
28
+ # Multiply two images.
29
+ # @param right [Vips::Image] Right-hand image argument
30
+ # @param opts [Hash] Set of options
31
+ # @return [Vips::Image] Output image
32
+
33
+ # @!method divide(right, opts = {})
34
+ # Divide two images.
35
+ # @param right [Vips::Image] Right-hand image argument
36
+ # @param opts [Hash] Set of options
37
+ # @return [Vips::Image] Output image
38
+
39
+ # @!method relational(right, relational, opts = {})
40
+ # Relational operation on two images.
41
+ # @param right [Vips::Image] Right-hand image argument
42
+ # @param relational [Vips::OperationRelational] relational to perform
43
+ # @param opts [Hash] Set of options
44
+ # @return [Vips::Image] Output image
45
+
46
+ # @!method remainder(right, opts = {})
47
+ # Remainder after integer division of two images.
48
+ # @param right [Vips::Image] Right-hand image argument
49
+ # @param opts [Hash] Set of options
50
+ # @return [Vips::Image] Output image
51
+
52
+ # @!method boolean(right, boolean, opts = {})
53
+ # Boolean operation on two images.
54
+ # @param right [Vips::Image] Right-hand image argument
55
+ # @param boolean [Vips::OperationBoolean] boolean to perform
56
+ # @param opts [Hash] Set of options
57
+ # @return [Vips::Image] Output image
58
+
59
+ # @!method math2(right, math2, opts = {})
60
+ # Binary math operations.
61
+ # @param right [Vips::Image] Right-hand image argument
62
+ # @param math2 [Vips::OperationMath2] math to perform
63
+ # @param opts [Hash] Set of options
64
+ # @return [Vips::Image] Output image
65
+
66
+ # @!method complex2(right, cmplx, opts = {})
67
+ # Complex binary operations on two images.
68
+ # @param right [Vips::Image] Right-hand image argument
69
+ # @param cmplx [Vips::OperationComplex2] binary complex operation to perform
70
+ # @param opts [Hash] Set of options
71
+ # @return [Vips::Image] Output image
72
+
73
+ # @!method complexform(right, opts = {})
74
+ # Form a complex image from two real images.
75
+ # @param right [Vips::Image] Right-hand image argument
76
+ # @param opts [Hash] Set of options
77
+ # @return [Vips::Image] Output image
78
+
79
+ # @!method self.sum(im, opts = {})
80
+ # Sum an array of images.
81
+ # @param im [Array<Image>] Array of input images
82
+ # @param opts [Hash] Set of options
83
+ # @return [Vips::Image] Output image
84
+
85
+ # @!method invert(opts = {})
86
+ # Invert an image.
87
+ # @param opts [Hash] Set of options
88
+ # @return [Vips::Image] Output image
89
+
90
+ # @!method linear(a, b, opts = {})
91
+ # Calculate (a * in + b).
92
+ # @param a [Array<Double>] Multiply by this
93
+ # @param b [Array<Double>] Add this
94
+ # @param opts [Hash] Set of options
95
+ # @option opts [Boolean] :uchar Output should be uchar
96
+ # @return [Vips::Image] Output image
97
+
98
+ # @!method math(math, opts = {})
99
+ # Apply a math operation to an image.
100
+ # @param math [Vips::OperationMath] math to perform
101
+ # @param opts [Hash] Set of options
102
+ # @return [Vips::Image] Output image
103
+
104
+ # @!method abs(opts = {})
105
+ # Absolute value of an image.
106
+ # @param opts [Hash] Set of options
107
+ # @return [Vips::Image] Output image
108
+
109
+ # @!method sign(opts = {})
110
+ # Unit vector of pixel.
111
+ # @param opts [Hash] Set of options
112
+ # @return [Vips::Image] Output image
113
+
114
+ # @!method round(round, opts = {})
115
+ # Perform a round function on an image.
116
+ # @param round [Vips::OperationRound] rounding operation to perform
117
+ # @param opts [Hash] Set of options
118
+ # @return [Vips::Image] Output image
119
+
120
+ # @!method relational_const(relational, c, opts = {})
121
+ # Relational operations against a constant.
122
+ # @param relational [Vips::OperationRelational] relational to perform
123
+ # @param c [Array<Double>] Array of constants
124
+ # @param opts [Hash] Set of options
125
+ # @return [Vips::Image] Output image
126
+
127
+ # @!method remainder_const(c, opts = {})
128
+ # Remainder after integer division of an image and a constant.
129
+ # @param c [Array<Double>] Array of constants
130
+ # @param opts [Hash] Set of options
131
+ # @return [Vips::Image] Output image
132
+
133
+ # @!method boolean_const(boolean, c, opts = {})
134
+ # Boolean operations against a constant.
135
+ # @param boolean [Vips::OperationBoolean] boolean to perform
136
+ # @param c [Array<Double>] Array of constants
137
+ # @param opts [Hash] Set of options
138
+ # @return [Vips::Image] Output image
139
+
140
+ # @!method math2_const(math2, c, opts = {})
141
+ # Binary math operations with a constant.
142
+ # @param math2 [Vips::OperationMath2] math to perform
143
+ # @param c [Array<Double>] Array of constants
144
+ # @param opts [Hash] Set of options
145
+ # @return [Vips::Image] Output image
146
+
147
+ # @!method complex(cmplx, opts = {})
148
+ # Perform a complex operation on an image.
149
+ # @param cmplx [Vips::OperationComplex] complex to perform
150
+ # @param opts [Hash] Set of options
151
+ # @return [Vips::Image] Output image
152
+
153
+ # @!method complexget(get, opts = {})
154
+ # Get a component from a complex image.
155
+ # @param get [Vips::OperationComplexget] complex to perform
156
+ # @param opts [Hash] Set of options
157
+ # @return [Vips::Image] Output image
158
+
159
+ # @!method avg(opts = {})
160
+ # Find image average.
161
+ # @param opts [Hash] Set of options
162
+ # @return [Float] Output value
163
+
164
+ # @!method min(opts = {})
165
+ # Find image minimum.
166
+ # @param opts [Hash] Set of options
167
+ # @option opts [Integer] :size Number of minimum values to find
168
+ # @option opts [Integer] :x Output Horizontal position of minimum
169
+ # @option opts [Integer] :y Output Vertical position of minimum
170
+ # @option opts [Array<Double>] :out_array Output Array of output values
171
+ # @option opts [Array<Integer>] :x_array Output Array of horizontal positions
172
+ # @option opts [Array<Integer>] :y_array Output Array of vertical positions
173
+ # @return [Float, Hash<Symbol => Object>] Output value, Hash of optional output items
174
+
175
+ # @!method max(opts = {})
176
+ # Find image maximum.
177
+ # @param opts [Hash] Set of options
178
+ # @option opts [Integer] :size Number of maximum values to find
179
+ # @option opts [Integer] :x Output Horizontal position of maximum
180
+ # @option opts [Integer] :y Output Vertical position of maximum
181
+ # @option opts [Array<Double>] :out_array Output Array of output values
182
+ # @option opts [Array<Integer>] :x_array Output Array of horizontal positions
183
+ # @option opts [Array<Integer>] :y_array Output Array of vertical positions
184
+ # @return [Float, Hash<Symbol => Object>] Output value, Hash of optional output items
185
+
186
+ # @!method deviate(opts = {})
187
+ # Find image standard deviation.
188
+ # @param opts [Hash] Set of options
189
+ # @return [Float] Output value
190
+
191
+ # @!method stats(opts = {})
192
+ # Find many image stats.
193
+ # @param opts [Hash] Set of options
194
+ # @return [Vips::Image] Output array of statistics
195
+
196
+ # @!method hist_find(opts = {})
197
+ # Find image histogram.
198
+ # @param opts [Hash] Set of options
199
+ # @option opts [Integer] :band Find histogram of band
200
+ # @return [Vips::Image] Output histogram
201
+
202
+ # @!method hist_find_ndim(opts = {})
203
+ # Find n-dimensional image histogram.
204
+ # @param opts [Hash] Set of options
205
+ # @option opts [Integer] :bins Number of bins in each dimension
206
+ # @return [Vips::Image] Output histogram
207
+
208
+ # @!method hist_find_indexed(index, opts = {})
209
+ # Find indexed image histogram.
210
+ # @param index [Vips::Image] Index image
211
+ # @param opts [Hash] Set of options
212
+ # @option opts [Vips::Combine] :combine Combine bins like this
213
+ # @return [Vips::Image] Output histogram
214
+
215
+ # @!method hough_line(opts = {})
216
+ # Find hough line transform.
217
+ # @param opts [Hash] Set of options
218
+ # @option opts [Integer] :width horizontal size of parameter space
219
+ # @option opts [Integer] :height Vertical size of parameter space
220
+ # @return [Vips::Image] Output image
221
+
222
+ # @!method hough_circle(opts = {})
223
+ # Find hough circle transform.
224
+ # @param opts [Hash] Set of options
225
+ # @option opts [Integer] :scale Scale down dimensions by this factor
226
+ # @option opts [Integer] :min_radius Smallest radius to search for
227
+ # @option opts [Integer] :max_radius Largest radius to search for
228
+ # @return [Vips::Image] Output image
229
+
230
+ # @!method project(opts = {})
231
+ # Find image projections.
232
+ # @param opts [Hash] Set of options
233
+ # @return [Array<] Sums of columns, Sums of rows
234
+
235
+ # @!method profile(opts = {})
236
+ # Find image profiles.
237
+ # @param opts [Hash] Set of options
238
+ # @return [Array<] First non-zero pixel in column, First non-zero pixel in row
239
+
240
+ # @!method measure(h, v, opts = {})
241
+ # Measure a set of patches on a color chart.
242
+ # @param h [Integer] Number of patches across chart
243
+ # @param v [Integer] Number of patches down chart
244
+ # @param opts [Hash] Set of options
245
+ # @option opts [Integer] :left Left edge of extract area
246
+ # @option opts [Integer] :top Top edge of extract area
247
+ # @option opts [Integer] :width Width of extract area
248
+ # @option opts [Integer] :height Height of extract area
249
+ # @return [Vips::Image] Output array of statistics
250
+
251
+ # @!method getpoint(x, y, opts = {})
252
+ # Read a point from an image.
253
+ # @param x [Integer] Point to read
254
+ # @param y [Integer] Point to read
255
+ # @param opts [Hash] Set of options
256
+ # @return [Array<Double>] Array of output values
257
+
258
+ # @!method find_trim(opts = {})
259
+ # Search an image for non-edge areas.
260
+ # @param opts [Hash] Set of options
261
+ # @option opts [Float] :threshold Object threshold
262
+ # @option opts [Array<Double>] :background Color for background pixels
263
+ # @return [Array<] Left edge of image, Top edge of extract area, Width of extract area, Height of extract area
264
+
265
+ # @!method copy(opts = {})
266
+ # Copy an image.
267
+ # @param opts [Hash] Set of options
268
+ # @option opts [Integer] :width Image width in pixels
269
+ # @option opts [Integer] :height Image height in pixels
270
+ # @option opts [Integer] :bands Number of bands in image
271
+ # @option opts [Vips::BandFormat] :format Pixel format in image
272
+ # @option opts [Vips::Coding] :coding Pixel coding
273
+ # @option opts [Vips::Interpretation] :interpretation Pixel interpretation
274
+ # @option opts [Float] :xres Horizontal resolution in pixels/mm
275
+ # @option opts [Float] :yres Vertical resolution in pixels/mm
276
+ # @option opts [Integer] :xoffset Horizontal offset of origin
277
+ # @option opts [Integer] :yoffset Vertical offset of origin
278
+ # @return [Vips::Image] Output image
279
+
280
+ # @!method tilecache(opts = {})
281
+ # Cache an image as a set of tiles.
282
+ # @param opts [Hash] Set of options
283
+ # @option opts [Integer] :tile_width Tile width in pixels
284
+ # @option opts [Integer] :tile_height Tile height in pixels
285
+ # @option opts [Integer] :max_tiles Maximum number of tiles to cache
286
+ # @option opts [Vips::Access] :access Expected access pattern
287
+ # @option opts [Boolean] :threaded Allow threaded access
288
+ # @option opts [Boolean] :persistent Keep cache between evaluations
289
+ # @return [Vips::Image] Output image
290
+
291
+ # @!method linecache(opts = {})
292
+ # Cache an image as a set of lines.
293
+ # @param opts [Hash] Set of options
294
+ # @option opts [Integer] :tile_height Tile height in pixels
295
+ # @option opts [Vips::Access] :access Expected access pattern
296
+ # @option opts [Boolean] :threaded Allow threaded access
297
+ # @option opts [Boolean] :persistent Keep cache between evaluations
298
+ # @return [Vips::Image] Output image
299
+
300
+ # @!method sequential(opts = {})
301
+ # Check sequential access.
302
+ # @param opts [Hash] Set of options
303
+ # @option opts [Integer] :tile_height Tile height in pixels
304
+ # @return [Vips::Image] Output image
305
+
306
+ # @!method cache(opts = {})
307
+ # Cache an image.
308
+ # @param opts [Hash] Set of options
309
+ # @option opts [Integer] :max_tiles Maximum number of tiles to cache
310
+ # @option opts [Integer] :tile_height Tile height in pixels
311
+ # @option opts [Integer] :tile_width Tile width in pixels
312
+ # @return [Vips::Image] Output image
313
+
314
+ # @!method embed(x, y, width, height, opts = {})
315
+ # Embed an image in a larger image.
316
+ # @param x [Integer] Left edge of input in output
317
+ # @param y [Integer] Top edge of input in output
318
+ # @param width [Integer] Image width in pixels
319
+ # @param height [Integer] Image height in pixels
320
+ # @param opts [Hash] Set of options
321
+ # @option opts [Vips::Extend] :extend How to generate the extra pixels
322
+ # @option opts [Array<Double>] :background Color for background pixels
323
+ # @return [Vips::Image] Output image
324
+
325
+ # @!method gravity(direction, width, height, opts = {})
326
+ # Place an image within a larger image with a certain gravity.
327
+ # @param direction [Vips::CompassDirection] direction to place image within width/height
328
+ # @param width [Integer] Image width in pixels
329
+ # @param height [Integer] Image height in pixels
330
+ # @param opts [Hash] Set of options
331
+ # @option opts [Vips::Extend] :extend How to generate the extra pixels
332
+ # @option opts [Array<Double>] :background Color for background pixels
333
+ # @return [Vips::Image] Output image
334
+
335
+ # @!method flip(direction, opts = {})
336
+ # Flip an image.
337
+ # @param direction [Vips::Direction] Direction to flip image
338
+ # @param opts [Hash] Set of options
339
+ # @return [Vips::Image] Output image
340
+
341
+ # @!method insert(sub, x, y, opts = {})
342
+ # Insert image @sub into @main at @x, @y.
343
+ # @param sub [Vips::Image] Sub-image to insert into main image
344
+ # @param x [Integer] Left edge of sub in main
345
+ # @param y [Integer] Top edge of sub in main
346
+ # @param opts [Hash] Set of options
347
+ # @option opts [Boolean] :expand Expand output to hold all of both inputs
348
+ # @option opts [Array<Double>] :background Color for new pixels
349
+ # @return [Vips::Image] Output image
350
+
351
+ # @!method join(in2, direction, opts = {})
352
+ # Join a pair of images.
353
+ # @param in2 [Vips::Image] Second input image
354
+ # @param direction [Vips::Direction] Join left-right or up-down
355
+ # @param opts [Hash] Set of options
356
+ # @option opts [Boolean] :expand Expand output to hold all of both inputs
357
+ # @option opts [Integer] :shim Pixels between images
358
+ # @option opts [Array<Double>] :background Colour for new pixels
359
+ # @option opts [Vips::Align] :align Align on the low, centre or high coordinate edge
360
+ # @return [Vips::Image] Output image
361
+
362
+ # @!method self.arrayjoin(im, opts = {})
363
+ # Join an array of images.
364
+ # @param im [Array<Image>] Array of input images
365
+ # @param opts [Hash] Set of options
366
+ # @option opts [Integer] :across Number of images across grid
367
+ # @option opts [Integer] :shim Pixels between images
368
+ # @option opts [Array<Double>] :background Colour for new pixels
369
+ # @option opts [Vips::Align] :halign Align on the left, centre or right
370
+ # @option opts [Vips::Align] :valign Align on the top, centre or bottom
371
+ # @option opts [Integer] :hspacing Horizontal spacing between images
372
+ # @option opts [Integer] :vspacing Vertical spacing between images
373
+ # @return [Vips::Image] Output image
374
+
375
+ # @!method extract_area(left, top, width, height, opts = {})
376
+ # Extract an area from an image.
377
+ # @param left [Integer] Left edge of extract area
378
+ # @param top [Integer] Top edge of extract area
379
+ # @param width [Integer] Width of extract area
380
+ # @param height [Integer] Height of extract area
381
+ # @param opts [Hash] Set of options
382
+ # @return [Vips::Image] Output image
383
+
384
+ # @!method extract_area(left, top, width, height, opts = {})
385
+ # Extract an area from an image.
386
+ # @param left [Integer] Left edge of extract area
387
+ # @param top [Integer] Top edge of extract area
388
+ # @param width [Integer] Width of extract area
389
+ # @param height [Integer] Height of extract area
390
+ # @param opts [Hash] Set of options
391
+ # @return [Vips::Image] Output image
392
+
393
+ # @!method smartcrop(width, height, opts = {})
394
+ # Extract an area from an image.
395
+ # @param width [Integer] Width of extract area
396
+ # @param height [Integer] Height of extract area
397
+ # @param opts [Hash] Set of options
398
+ # @option opts [Vips::Interesting] :interesting How to measure interestingness
399
+ # @return [Vips::Image] Output image
400
+
401
+ # @!method extract_band(band, opts = {})
402
+ # Extract band from an image.
403
+ # @param band [Integer] Band to extract
404
+ # @param opts [Hash] Set of options
405
+ # @option opts [Integer] :n Number of bands to extract
406
+ # @return [Vips::Image] Output image
407
+
408
+ # @!method bandjoin_const(c, opts = {})
409
+ # Append a constant band to an image.
410
+ # @param c [Array<Double>] Array of constants to add
411
+ # @param opts [Hash] Set of options
412
+ # @return [Vips::Image] Output image
413
+
414
+ # @!method self.bandrank(im, opts = {})
415
+ # Band-wise rank of a set of images.
416
+ # @param im [Array<Image>] Array of input images
417
+ # @param opts [Hash] Set of options
418
+ # @option opts [Integer] :index Select this band element from sorted list
419
+ # @return [Vips::Image] Output image
420
+
421
+ # @!method bandmean(opts = {})
422
+ # Band-wise average.
423
+ # @param opts [Hash] Set of options
424
+ # @return [Vips::Image] Output image
425
+
426
+ # @!method bandbool(boolean, opts = {})
427
+ # Boolean operation across image bands.
428
+ # @param boolean [Vips::OperationBoolean] boolean to perform
429
+ # @param opts [Hash] Set of options
430
+ # @return [Vips::Image] Output image
431
+
432
+ # @!method replicate(across, down, opts = {})
433
+ # Replicate an image.
434
+ # @param across [Integer] Repeat this many times horizontally
435
+ # @param down [Integer] Repeat this many times vertically
436
+ # @param opts [Hash] Set of options
437
+ # @return [Vips::Image] Output image
438
+
439
+ # @!method cast(format, opts = {})
440
+ # Cast an image.
441
+ # @param format [Vips::BandFormat] Format to cast to
442
+ # @param opts [Hash] Set of options
443
+ # @option opts [Boolean] :shift Shift integer values up and down
444
+ # @return [Vips::Image] Output image
445
+
446
+ # @!method rot(angle, opts = {})
447
+ # Rotate an image.
448
+ # @param angle [Vips::Angle] Angle to rotate image
449
+ # @param opts [Hash] Set of options
450
+ # @return [Vips::Image] Output image
451
+
452
+ # @!method rot45(opts = {})
453
+ # Rotate an image.
454
+ # @param opts [Hash] Set of options
455
+ # @option opts [Vips::Angle45] :angle Angle to rotate image
456
+ # @return [Vips::Image] Output image
457
+
458
+ # @!method autorot(opts = {})
459
+ # Autorotate image by exif tag.
460
+ # @param opts [Hash] Set of options
461
+ # @option opts [Vips::Angle] :angle Output Angle image was rotated by
462
+ # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
463
+
464
+ # @!method recomb(m, opts = {})
465
+ # Linear recombination with matrix.
466
+ # @param m [Vips::Image] matrix of coefficients
467
+ # @param opts [Hash] Set of options
468
+ # @return [Vips::Image] Output image
469
+
470
+ # @!method bandfold(opts = {})
471
+ # Fold up x axis into bands.
472
+ # @param opts [Hash] Set of options
473
+ # @option opts [Integer] :factor Fold by this factor
474
+ # @return [Vips::Image] Output image
475
+
476
+ # @!method bandunfold(opts = {})
477
+ # Unfold image bands into x axis.
478
+ # @param opts [Hash] Set of options
479
+ # @option opts [Integer] :factor Unfold by this factor
480
+ # @return [Vips::Image] Output image
481
+
482
+ # @!method flatten(opts = {})
483
+ # Flatten alpha out of an image.
484
+ # @param opts [Hash] Set of options
485
+ # @option opts [Array<Double>] :background Background value
486
+ # @option opts [Float] :max_alpha Maximum value of alpha channel
487
+ # @return [Vips::Image] Output image
488
+
489
+ # @!method premultiply(opts = {})
490
+ # Premultiply image alpha.
491
+ # @param opts [Hash] Set of options
492
+ # @option opts [Float] :max_alpha Maximum value of alpha channel
493
+ # @return [Vips::Image] Output image
494
+
495
+ # @!method unpremultiply(opts = {})
496
+ # Unpremultiply image alpha.
497
+ # @param opts [Hash] Set of options
498
+ # @option opts [Float] :max_alpha Maximum value of alpha channel
499
+ # @return [Vips::Image] Output image
500
+
501
+ # @!method grid(tile_height, across, down, opts = {})
502
+ # Grid an image.
503
+ # @param tile_height [Integer] chop into tiles this high
504
+ # @param across [Integer] number of tiles across
505
+ # @param down [Integer] number of tiles down
506
+ # @param opts [Hash] Set of options
507
+ # @return [Vips::Image] Output image
508
+
509
+ # @!method transpose3d(opts = {})
510
+ # Transpose3d an image.
511
+ # @param opts [Hash] Set of options
512
+ # @option opts [Integer] :page_height Height of each input page
513
+ # @return [Vips::Image] Output image
514
+
515
+ # @!method wrap(opts = {})
516
+ # Wrap image origin.
517
+ # @param opts [Hash] Set of options
518
+ # @option opts [Integer] :x Left edge of input in output
519
+ # @option opts [Integer] :y Top edge of input in output
520
+ # @return [Vips::Image] Output image
521
+
522
+ # @!method zoom(xfac, yfac, opts = {})
523
+ # Zoom an image.
524
+ # @param xfac [Integer] Horizontal zoom factor
525
+ # @param yfac [Integer] Vertical zoom factor
526
+ # @param opts [Hash] Set of options
527
+ # @return [Vips::Image] Output image
528
+
529
+ # @!method subsample(xfac, yfac, opts = {})
530
+ # Subsample an image.
531
+ # @param xfac [Integer] Horizontal subsample factor
532
+ # @param yfac [Integer] Vertical subsample factor
533
+ # @param opts [Hash] Set of options
534
+ # @option opts [Boolean] :point Point sample
535
+ # @return [Vips::Image] Output image
536
+
537
+ # @!method msb(opts = {})
538
+ # Pick most-significant byte from an image.
539
+ # @param opts [Hash] Set of options
540
+ # @option opts [Integer] :band Band to msb
541
+ # @return [Vips::Image] Output image
542
+
543
+ # @!method byteswap(opts = {})
544
+ # Byteswap an image.
545
+ # @param opts [Hash] Set of options
546
+ # @return [Vips::Image] Output image
547
+
548
+ # @!method falsecolour(opts = {})
549
+ # False-color an image.
550
+ # @param opts [Hash] Set of options
551
+ # @return [Vips::Image] Output image
552
+
553
+ # @!method gamma(opts = {})
554
+ # Gamma an image.
555
+ # @param opts [Hash] Set of options
556
+ # @option opts [Float] :exponent Gamma factor
557
+ # @return [Vips::Image] Output image
558
+
559
+ # @!method composite2(overlay, mode, opts = {})
560
+ # Blend a pair of images with a blend mode.
561
+ # @param overlay [Vips::Image] Overlay image
562
+ # @param mode [Vips::BlendMode] VipsBlendMode to join with
563
+ # @param opts [Hash] Set of options
564
+ # @option opts [Integer] :x x position of overlay
565
+ # @option opts [Integer] :y y position of overlay
566
+ # @option opts [Vips::Interpretation] :compositing_space Composite images in this colour space
567
+ # @option opts [Boolean] :premultiplied Images have premultiplied alpha
568
+ # @return [Vips::Image] Output image
569
+
570
+ # @!method self.black(width, height, opts = {})
571
+ # Make a black image.
572
+ # @param width [Integer] Image width in pixels
573
+ # @param height [Integer] Image height in pixels
574
+ # @param opts [Hash] Set of options
575
+ # @option opts [Integer] :bands Number of bands in image
576
+ # @return [Vips::Image] Output image
577
+
578
+ # @!method self.gaussnoise(width, height, opts = {})
579
+ # Make a gaussnoise image.
580
+ # @param width [Integer] Image width in pixels
581
+ # @param height [Integer] Image height in pixels
582
+ # @param opts [Hash] Set of options
583
+ # @option opts [Float] :sigma Standard deviation of pixels in generated image
584
+ # @option opts [Float] :mean Mean of pixels in generated image
585
+ # @return [Vips::Image] Output image
586
+
587
+ # @!method self.text(text, opts = {})
588
+ # Make a text image.
589
+ # @param text [String] Text to render
590
+ # @param opts [Hash] Set of options
591
+ # @option opts [String] :font Font to render with
592
+ # @option opts [Integer] :width Maximum image width in pixels
593
+ # @option opts [Integer] :height Maximum image height in pixels
594
+ # @option opts [Vips::Align] :align Align on the low, centre or high edge
595
+ # @option opts [Integer] :dpi DPI to render at
596
+ # @option opts [Integer] :spacing Line spacing
597
+ # @option opts [String] :fontfile Load this font file
598
+ # @option opts [Integer] :autofit_dpi Output DPI selected by autofit
599
+ # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
600
+
601
+ # @!method self.xyz(width, height, opts = {})
602
+ # Make an image where pixel values are coordinates.
603
+ # @param width [Integer] Image width in pixels
604
+ # @param height [Integer] Image height in pixels
605
+ # @param opts [Hash] Set of options
606
+ # @option opts [Integer] :csize Size of third dimension
607
+ # @option opts [Integer] :dsize Size of fourth dimension
608
+ # @option opts [Integer] :esize Size of fifth dimension
609
+ # @return [Vips::Image] Output image
610
+
611
+ # @!method self.gaussmat(sigma, min_ampl, opts = {})
612
+ # Make a gaussian image.
613
+ # @param sigma [Float] Sigma of Gaussian
614
+ # @param min_ampl [Float] Minimum amplitude of Gaussian
615
+ # @param opts [Hash] Set of options
616
+ # @option opts [Boolean] :separable Generate separable Gaussian
617
+ # @option opts [Vips::Precision] :precision Generate with this precision
618
+ # @return [Vips::Image] Output image
619
+
620
+ # @!method self.logmat(sigma, min_ampl, opts = {})
621
+ # Make a laplacian of gaussian image.
622
+ # @param sigma [Float] Radius of Logmatian
623
+ # @param min_ampl [Float] Minimum amplitude of Logmatian
624
+ # @param opts [Hash] Set of options
625
+ # @option opts [Boolean] :separable Generate separable Logmatian
626
+ # @option opts [Vips::Precision] :precision Generate with this precision
627
+ # @return [Vips::Image] Output image
628
+
629
+ # @!method self.eye(width, height, opts = {})
630
+ # Make an image showing the eye's spatial response.
631
+ # @param width [Integer] Image width in pixels
632
+ # @param height [Integer] Image height in pixels
633
+ # @param opts [Hash] Set of options
634
+ # @option opts [Boolean] :uchar Output an unsigned char image
635
+ # @option opts [Float] :factor Maximum spatial frequency
636
+ # @return [Vips::Image] Output image
637
+
638
+ # @!method self.grey(width, height, opts = {})
639
+ # Make a grey ramp image.
640
+ # @param width [Integer] Image width in pixels
641
+ # @param height [Integer] Image height in pixels
642
+ # @param opts [Hash] Set of options
643
+ # @option opts [Boolean] :uchar Output an unsigned char image
644
+ # @return [Vips::Image] Output image
645
+
646
+ # @!method self.zone(width, height, opts = {})
647
+ # Make a zone plate.
648
+ # @param width [Integer] Image width in pixels
649
+ # @param height [Integer] Image height in pixels
650
+ # @param opts [Hash] Set of options
651
+ # @option opts [Boolean] :uchar Output an unsigned char image
652
+ # @return [Vips::Image] Output image
653
+
654
+ # @!method self.sines(width, height, opts = {})
655
+ # Make a 2d sine wave.
656
+ # @param width [Integer] Image width in pixels
657
+ # @param height [Integer] Image height in pixels
658
+ # @param opts [Hash] Set of options
659
+ # @option opts [Boolean] :uchar Output an unsigned char image
660
+ # @option opts [Float] :hfreq Horizontal spatial frequency
661
+ # @option opts [Float] :vfreq Vertical spatial frequency
662
+ # @return [Vips::Image] Output image
663
+
664
+ # @!method self.mask_ideal(width, height, frequency_cutoff, opts = {})
665
+ # Make an ideal filter.
666
+ # @param width [Integer] Image width in pixels
667
+ # @param height [Integer] Image height in pixels
668
+ # @param frequency_cutoff [Float] Frequency cutoff
669
+ # @param opts [Hash] Set of options
670
+ # @option opts [Boolean] :uchar Output an unsigned char image
671
+ # @option opts [Boolean] :nodc Remove DC component
672
+ # @option opts [Boolean] :reject Invert the sense of the filter
673
+ # @option opts [Boolean] :optical Rotate quadrants to optical space
674
+ # @return [Vips::Image] Output image
675
+
676
+ # @!method self.mask_ideal_ring(width, height, frequency_cutoff, ringwidth, opts = {})
677
+ # Make an ideal ring filter.
678
+ # @param width [Integer] Image width in pixels
679
+ # @param height [Integer] Image height in pixels
680
+ # @param frequency_cutoff [Float] Frequency cutoff
681
+ # @param ringwidth [Float] Ringwidth
682
+ # @param opts [Hash] Set of options
683
+ # @option opts [Boolean] :uchar Output an unsigned char image
684
+ # @option opts [Boolean] :nodc Remove DC component
685
+ # @option opts [Boolean] :reject Invert the sense of the filter
686
+ # @option opts [Boolean] :optical Rotate quadrants to optical space
687
+ # @return [Vips::Image] Output image
688
+
689
+ # @!method self.mask_ideal_band(width, height, frequency_cutoff_x, frequency_cutoff_y, radius, opts = {})
690
+ # Make an ideal band filter.
691
+ # @param width [Integer] Image width in pixels
692
+ # @param height [Integer] Image height in pixels
693
+ # @param frequency_cutoff_x [Float] Frequency cutoff x
694
+ # @param frequency_cutoff_y [Float] Frequency cutoff y
695
+ # @param radius [Float] radius of circle
696
+ # @param opts [Hash] Set of options
697
+ # @option opts [Boolean] :uchar Output an unsigned char image
698
+ # @option opts [Boolean] :nodc Remove DC component
699
+ # @option opts [Boolean] :reject Invert the sense of the filter
700
+ # @option opts [Boolean] :optical Rotate quadrants to optical space
701
+ # @return [Vips::Image] Output image
702
+
703
+ # @!method self.mask_butterworth(width, height, order, frequency_cutoff, amplitude_cutoff, opts = {})
704
+ # Make a butterworth filter.
705
+ # @param width [Integer] Image width in pixels
706
+ # @param height [Integer] Image height in pixels
707
+ # @param order [Float] Filter order
708
+ # @param frequency_cutoff [Float] Frequency cutoff
709
+ # @param amplitude_cutoff [Float] Amplitude cutoff
710
+ # @param opts [Hash] Set of options
711
+ # @option opts [Boolean] :uchar Output an unsigned char image
712
+ # @option opts [Boolean] :nodc Remove DC component
713
+ # @option opts [Boolean] :reject Invert the sense of the filter
714
+ # @option opts [Boolean] :optical Rotate quadrants to optical space
715
+ # @return [Vips::Image] Output image
716
+
717
+ # @!method self.mask_butterworth_ring(width, height, order, frequency_cutoff, amplitude_cutoff, ringwidth, opts = {})
718
+ # Make a butterworth ring filter.
719
+ # @param width [Integer] Image width in pixels
720
+ # @param height [Integer] Image height in pixels
721
+ # @param order [Float] Filter order
722
+ # @param frequency_cutoff [Float] Frequency cutoff
723
+ # @param amplitude_cutoff [Float] Amplitude cutoff
724
+ # @param ringwidth [Float] Ringwidth
725
+ # @param opts [Hash] Set of options
726
+ # @option opts [Boolean] :uchar Output an unsigned char image
727
+ # @option opts [Boolean] :nodc Remove DC component
728
+ # @option opts [Boolean] :reject Invert the sense of the filter
729
+ # @option opts [Boolean] :optical Rotate quadrants to optical space
730
+ # @return [Vips::Image] Output image
731
+
732
+ # @!method self.mask_butterworth_band(width, height, order, frequency_cutoff_x, frequency_cutoff_y, radius, amplitude_cutoff, opts = {})
733
+ # Make a butterworth_band filter.
734
+ # @param width [Integer] Image width in pixels
735
+ # @param height [Integer] Image height in pixels
736
+ # @param order [Float] Filter order
737
+ # @param frequency_cutoff_x [Float] Frequency cutoff x
738
+ # @param frequency_cutoff_y [Float] Frequency cutoff y
739
+ # @param radius [Float] radius of circle
740
+ # @param amplitude_cutoff [Float] Amplitude cutoff
741
+ # @param opts [Hash] Set of options
742
+ # @option opts [Boolean] :uchar Output an unsigned char image
743
+ # @option opts [Boolean] :nodc Remove DC component
744
+ # @option opts [Boolean] :reject Invert the sense of the filter
745
+ # @option opts [Boolean] :optical Rotate quadrants to optical space
746
+ # @return [Vips::Image] Output image
747
+
748
+ # @!method self.mask_gaussian(width, height, frequency_cutoff, amplitude_cutoff, opts = {})
749
+ # Make a gaussian filter.
750
+ # @param width [Integer] Image width in pixels
751
+ # @param height [Integer] Image height in pixels
752
+ # @param frequency_cutoff [Float] Frequency cutoff
753
+ # @param amplitude_cutoff [Float] Amplitude cutoff
754
+ # @param opts [Hash] Set of options
755
+ # @option opts [Boolean] :uchar Output an unsigned char image
756
+ # @option opts [Boolean] :nodc Remove DC component
757
+ # @option opts [Boolean] :reject Invert the sense of the filter
758
+ # @option opts [Boolean] :optical Rotate quadrants to optical space
759
+ # @return [Vips::Image] Output image
760
+
761
+ # @!method self.mask_gaussian_ring(width, height, frequency_cutoff, amplitude_cutoff, ringwidth, opts = {})
762
+ # Make a gaussian ring filter.
763
+ # @param width [Integer] Image width in pixels
764
+ # @param height [Integer] Image height in pixels
765
+ # @param frequency_cutoff [Float] Frequency cutoff
766
+ # @param amplitude_cutoff [Float] Amplitude cutoff
767
+ # @param ringwidth [Float] Ringwidth
768
+ # @param opts [Hash] Set of options
769
+ # @option opts [Boolean] :uchar Output an unsigned char image
770
+ # @option opts [Boolean] :nodc Remove DC component
771
+ # @option opts [Boolean] :reject Invert the sense of the filter
772
+ # @option opts [Boolean] :optical Rotate quadrants to optical space
773
+ # @return [Vips::Image] Output image
774
+
775
+ # @!method self.mask_gaussian_band(width, height, frequency_cutoff_x, frequency_cutoff_y, radius, amplitude_cutoff, opts = {})
776
+ # Make a gaussian filter.
777
+ # @param width [Integer] Image width in pixels
778
+ # @param height [Integer] Image height in pixels
779
+ # @param frequency_cutoff_x [Float] Frequency cutoff x
780
+ # @param frequency_cutoff_y [Float] Frequency cutoff y
781
+ # @param radius [Float] radius of circle
782
+ # @param amplitude_cutoff [Float] Amplitude cutoff
783
+ # @param opts [Hash] Set of options
784
+ # @option opts [Boolean] :uchar Output an unsigned char image
785
+ # @option opts [Boolean] :nodc Remove DC component
786
+ # @option opts [Boolean] :reject Invert the sense of the filter
787
+ # @option opts [Boolean] :optical Rotate quadrants to optical space
788
+ # @return [Vips::Image] Output image
789
+
790
+ # @!method self.mask_fractal(width, height, fractal_dimension, opts = {})
791
+ # Make fractal filter.
792
+ # @param width [Integer] Image width in pixels
793
+ # @param height [Integer] Image height in pixels
794
+ # @param fractal_dimension [Float] Fractal dimension
795
+ # @param opts [Hash] Set of options
796
+ # @option opts [Boolean] :uchar Output an unsigned char image
797
+ # @option opts [Boolean] :nodc Remove DC component
798
+ # @option opts [Boolean] :reject Invert the sense of the filter
799
+ # @option opts [Boolean] :optical Rotate quadrants to optical space
800
+ # @return [Vips::Image] Output image
801
+
802
+ # @!method buildlut(opts = {})
803
+ # Build a look-up table.
804
+ # @param opts [Hash] Set of options
805
+ # @return [Vips::Image] Output image
806
+
807
+ # @!method invertlut(opts = {})
808
+ # Build an inverted look-up table.
809
+ # @param opts [Hash] Set of options
810
+ # @option opts [Integer] :size LUT size to generate
811
+ # @return [Vips::Image] Output image
812
+
813
+ # @!method self.tonelut(opts = {})
814
+ # Build a look-up table.
815
+ # @param opts [Hash] Set of options
816
+ # @option opts [Integer] :in_max Size of LUT to build
817
+ # @option opts [Integer] :out_max Maximum value in output LUT
818
+ # @option opts [Float] :Lb Lowest value in output
819
+ # @option opts [Float] :Lw Highest value in output
820
+ # @option opts [Float] :Ps Position of shadow
821
+ # @option opts [Float] :Pm Position of mid-tones
822
+ # @option opts [Float] :Ph Position of highlights
823
+ # @option opts [Float] :S Adjust shadows by this much
824
+ # @option opts [Float] :M Adjust mid-tones by this much
825
+ # @option opts [Float] :H Adjust highlights by this much
826
+ # @return [Vips::Image] Output image
827
+
828
+ # @!method self.identity(opts = {})
829
+ # Make a 1d image where pixel values are indexes.
830
+ # @param opts [Hash] Set of options
831
+ # @option opts [Integer] :bands Number of bands in LUT
832
+ # @option opts [Boolean] :ushort Create a 16-bit LUT
833
+ # @option opts [Integer] :size Size of 16-bit LUT
834
+ # @return [Vips::Image] Output image
835
+
836
+ # @!method self.fractsurf(width, height, fractal_dimension, opts = {})
837
+ # Make a fractal surface.
838
+ # @param width [Integer] Image width in pixels
839
+ # @param height [Integer] Image height in pixels
840
+ # @param fractal_dimension [Float] Fractal dimension
841
+ # @param opts [Hash] Set of options
842
+ # @return [Vips::Image] Output image
843
+
844
+ # @!method self.worley(width, height, opts = {})
845
+ # Make a worley noise image.
846
+ # @param width [Integer] Image width in pixels
847
+ # @param height [Integer] Image height in pixels
848
+ # @param opts [Hash] Set of options
849
+ # @option opts [Integer] :cell_size Size of Worley cells
850
+ # @return [Vips::Image] Output image
851
+
852
+ # @!method self.perlin(width, height, opts = {})
853
+ # Make a perlin noise image.
854
+ # @param width [Integer] Image width in pixels
855
+ # @param height [Integer] Image height in pixels
856
+ # @param opts [Hash] Set of options
857
+ # @option opts [Integer] :cell_size Size of Perlin cells
858
+ # @option opts [Boolean] :uchar Output an unsigned char image
859
+ # @return [Vips::Image] Output image
860
+
861
+ # @!method self.csvload(filename, opts = {})
862
+ # Load csv from file.
863
+ # @param filename [String] Filename to load from
864
+ # @param opts [Hash] Set of options
865
+ # @option opts [Boolean] :memory Force open via memory
866
+ # @option opts [Vips::Access] :access Required access pattern for this file
867
+ # @option opts [Integer] :skip Skip this many lines at the start of the file
868
+ # @option opts [Integer] :lines Read this many lines from the file
869
+ # @option opts [Boolean] :fail Fail on first error
870
+ # @option opts [String] :whitespace Set of whitespace characters
871
+ # @option opts [String] :separator Set of separator characters
872
+ # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
873
+ # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
874
+
875
+ # @!method self.matrixload(filename, opts = {})
876
+ # Load matrix from file.
877
+ # @param filename [String] Filename to load from
878
+ # @param opts [Hash] Set of options
879
+ # @option opts [Boolean] :memory Force open via memory
880
+ # @option opts [Vips::Access] :access Required access pattern for this file
881
+ # @option opts [Boolean] :fail Fail on first error
882
+ # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
883
+ # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
884
+
885
+ # @!method self.rawload(filename, width, height, bands, opts = {})
886
+ # Load raw data from a file.
887
+ # @param filename [String] Filename to load from
888
+ # @param width [Integer] Image width in pixels
889
+ # @param height [Integer] Image height in pixels
890
+ # @param bands [Integer] Number of bands in image
891
+ # @param opts [Hash] Set of options
892
+ # @option opts [Boolean] :memory Force open via memory
893
+ # @option opts [Vips::Access] :access Required access pattern for this file
894
+ # @option opts [Boolean] :fail Fail on first error
895
+ # @option opts [guint64] :offset Offset in bytes from start of file
896
+ # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
897
+ # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
898
+
899
+ # @!method self.vipsload(filename, opts = {})
900
+ # Load vips from file.
901
+ # @param filename [String] Filename to load from
902
+ # @param opts [Hash] Set of options
903
+ # @option opts [Boolean] :memory Force open via memory
904
+ # @option opts [Vips::Access] :access Required access pattern for this file
905
+ # @option opts [Boolean] :fail Fail on first error
906
+ # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
907
+ # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
908
+
909
+ # @!method self.analyzeload(filename, opts = {})
910
+ # Load an analyze6 image.
911
+ # @param filename [String] Filename to load from
912
+ # @param opts [Hash] Set of options
913
+ # @option opts [Boolean] :memory Force open via memory
914
+ # @option opts [Vips::Access] :access Required access pattern for this file
915
+ # @option opts [Boolean] :fail Fail on first error
916
+ # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
917
+ # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
918
+
919
+ # @!method self.ppmload(filename, opts = {})
920
+ # Load ppm from file.
921
+ # @param filename [String] Filename to load from
922
+ # @param opts [Hash] Set of options
923
+ # @option opts [Boolean] :memory Force open via memory
924
+ # @option opts [Vips::Access] :access Required access pattern for this file
925
+ # @option opts [Boolean] :fail Fail on first error
926
+ # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
927
+ # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
928
+
929
+ # @!method self.radload(filename, opts = {})
930
+ # Load a radiance image from a file.
931
+ # @param filename [String] Filename to load from
932
+ # @param opts [Hash] Set of options
933
+ # @option opts [Boolean] :memory Force open via memory
934
+ # @option opts [Vips::Access] :access Required access pattern for this file
935
+ # @option opts [Boolean] :fail Fail on first error
936
+ # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
937
+ # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
938
+
939
+ # @!method self.pdfload(filename, opts = {})
940
+ # Load pdf with libpoppler.
941
+ # @param filename [String] Filename to load from
942
+ # @param opts [Hash] Set of options
943
+ # @option opts [Boolean] :memory Force open via memory
944
+ # @option opts [Vips::Access] :access Required access pattern for this file
945
+ # @option opts [Integer] :page Load this page from the file
946
+ # @option opts [Integer] :n Load this many pages
947
+ # @option opts [Boolean] :fail Fail on first error
948
+ # @option opts [Float] :dpi Render at this DPI
949
+ # @option opts [Float] :scale Scale output by this factor
950
+ # @option opts [Array<Double>] :background Background value
951
+ # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
952
+ # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
953
+
954
+ # @!method self.pdfload_buffer(buffer, opts = {})
955
+ # Load pdf with libpoppler.
956
+ # @param buffer [VipsBlob] Buffer to load from
957
+ # @param opts [Hash] Set of options
958
+ # @option opts [Boolean] :memory Force open via memory
959
+ # @option opts [Vips::Access] :access Required access pattern for this file
960
+ # @option opts [Integer] :page Load this page from the file
961
+ # @option opts [Integer] :n Load this many pages
962
+ # @option opts [Boolean] :fail Fail on first error
963
+ # @option opts [Float] :dpi Render at this DPI
964
+ # @option opts [Float] :scale Scale output by this factor
965
+ # @option opts [Array<Double>] :background Background value
966
+ # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
967
+ # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
968
+
969
+ # @!method self.svgload(filename, opts = {})
970
+ # Load svg with rsvg.
971
+ # @param filename [String] Filename to load from
972
+ # @param opts [Hash] Set of options
973
+ # @option opts [Boolean] :memory Force open via memory
974
+ # @option opts [Vips::Access] :access Required access pattern for this file
975
+ # @option opts [Float] :dpi Render at this DPI
976
+ # @option opts [Boolean] :fail Fail on first error
977
+ # @option opts [Float] :scale Scale output by this factor
978
+ # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
979
+ # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
980
+
981
+ # @!method self.svgload(filename, opts = {})
982
+ # Load svg with rsvg.
983
+ # @param filename [String] Filename to load from
984
+ # @param opts [Hash] Set of options
985
+ # @option opts [Boolean] :memory Force open via memory
986
+ # @option opts [Vips::Access] :access Required access pattern for this file
987
+ # @option opts [Float] :dpi Render at this DPI
988
+ # @option opts [Boolean] :fail Fail on first error
989
+ # @option opts [Float] :scale Scale output by this factor
990
+ # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
991
+ # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
992
+
993
+ # @!method self.svgload_buffer(buffer, opts = {})
994
+ # Load svg with rsvg.
995
+ # @param buffer [VipsBlob] Buffer to load from
996
+ # @param opts [Hash] Set of options
997
+ # @option opts [Boolean] :memory Force open via memory
998
+ # @option opts [Vips::Access] :access Required access pattern for this file
999
+ # @option opts [Float] :dpi Render at this DPI
1000
+ # @option opts [Boolean] :fail Fail on first error
1001
+ # @option opts [Float] :scale Scale output by this factor
1002
+ # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
1003
+ # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
1004
+
1005
+ # @!method self.gifload(filename, opts = {})
1006
+ # Load gif with giflib.
1007
+ # @param filename [String] Filename to load from
1008
+ # @param opts [Hash] Set of options
1009
+ # @option opts [Integer] :n Load this many pages
1010
+ # @option opts [Boolean] :memory Force open via memory
1011
+ # @option opts [Vips::Access] :access Required access pattern for this file
1012
+ # @option opts [Integer] :page Load this page from the file
1013
+ # @option opts [Boolean] :fail Fail on first error
1014
+ # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
1015
+ # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
1016
+
1017
+ # @!method self.gifload_buffer(buffer, opts = {})
1018
+ # Load gif with giflib.
1019
+ # @param buffer [VipsBlob] Buffer to load from
1020
+ # @param opts [Hash] Set of options
1021
+ # @option opts [Integer] :n Load this many pages
1022
+ # @option opts [Boolean] :memory Force open via memory
1023
+ # @option opts [Vips::Access] :access Required access pattern for this file
1024
+ # @option opts [Integer] :page Load this page from the file
1025
+ # @option opts [Boolean] :fail Fail on first error
1026
+ # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
1027
+ # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
1028
+
1029
+ # @!method self.pngload(filename, opts = {})
1030
+ # Load png from file.
1031
+ # @param filename [String] Filename to load from
1032
+ # @param opts [Hash] Set of options
1033
+ # @option opts [Boolean] :memory Force open via memory
1034
+ # @option opts [Vips::Access] :access Required access pattern for this file
1035
+ # @option opts [Boolean] :fail Fail on first error
1036
+ # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
1037
+ # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
1038
+
1039
+ # @!method self.pngload_buffer(buffer, opts = {})
1040
+ # Load png from buffer.
1041
+ # @param buffer [VipsBlob] Buffer to load from
1042
+ # @param opts [Hash] Set of options
1043
+ # @option opts [Boolean] :memory Force open via memory
1044
+ # @option opts [Vips::Access] :access Required access pattern for this file
1045
+ # @option opts [Boolean] :fail Fail on first error
1046
+ # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
1047
+ # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
1048
+
1049
+ # @!method self.matload(filename, opts = {})
1050
+ # Load mat from file.
1051
+ # @param filename [String] Filename to load from
1052
+ # @param opts [Hash] Set of options
1053
+ # @option opts [Boolean] :memory Force open via memory
1054
+ # @option opts [Vips::Access] :access Required access pattern for this file
1055
+ # @option opts [Boolean] :fail Fail on first error
1056
+ # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
1057
+ # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
1058
+
1059
+ # @!method self.jpegload(filename, opts = {})
1060
+ # Load jpeg from file.
1061
+ # @param filename [String] Filename to load from
1062
+ # @param opts [Hash] Set of options
1063
+ # @option opts [Boolean] :memory Force open via memory
1064
+ # @option opts [Vips::Access] :access Required access pattern for this file
1065
+ # @option opts [Integer] :shrink Shrink factor on load
1066
+ # @option opts [Boolean] :fail Fail on first error
1067
+ # @option opts [Boolean] :autorotate Rotate image using exif orientation
1068
+ # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
1069
+ # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
1070
+
1071
+ # @!method self.jpegload_buffer(buffer, opts = {})
1072
+ # Load jpeg from buffer.
1073
+ # @param buffer [VipsBlob] Buffer to load from
1074
+ # @param opts [Hash] Set of options
1075
+ # @option opts [Boolean] :memory Force open via memory
1076
+ # @option opts [Vips::Access] :access Required access pattern for this file
1077
+ # @option opts [Integer] :shrink Shrink factor on load
1078
+ # @option opts [Boolean] :fail Fail on first error
1079
+ # @option opts [Boolean] :autorotate Rotate image using exif orientation
1080
+ # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
1081
+ # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
1082
+
1083
+ # @!method self.webpload(filename, opts = {})
1084
+ # Load webp from file.
1085
+ # @param filename [String] Filename to load from
1086
+ # @param opts [Hash] Set of options
1087
+ # @option opts [Boolean] :memory Force open via memory
1088
+ # @option opts [Vips::Access] :access Required access pattern for this file
1089
+ # @option opts [Integer] :shrink Shrink factor on load
1090
+ # @option opts [Boolean] :fail Fail on first error
1091
+ # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
1092
+ # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
1093
+
1094
+ # @!method self.webpload_buffer(buffer, opts = {})
1095
+ # Load webp from buffer.
1096
+ # @param buffer [VipsBlob] Buffer to load from
1097
+ # @param opts [Hash] Set of options
1098
+ # @option opts [Boolean] :memory Force open via memory
1099
+ # @option opts [Vips::Access] :access Required access pattern for this file
1100
+ # @option opts [Integer] :shrink Shrink factor on load
1101
+ # @option opts [Boolean] :fail Fail on first error
1102
+ # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
1103
+ # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
1104
+
1105
+ # @!method self.tiffload(filename, opts = {})
1106
+ # Load tiff from file.
1107
+ # @param filename [String] Filename to load from
1108
+ # @param opts [Hash] Set of options
1109
+ # @option opts [Boolean] :memory Force open via memory
1110
+ # @option opts [Vips::Access] :access Required access pattern for this file
1111
+ # @option opts [Integer] :page Load this page from the image
1112
+ # @option opts [Integer] :n Load this many pages
1113
+ # @option opts [Boolean] :fail Fail on first error
1114
+ # @option opts [Boolean] :autorotate Rotate image using orientation tag
1115
+ # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
1116
+ # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
1117
+
1118
+ # @!method self.tiffload_buffer(buffer, opts = {})
1119
+ # Load tiff from buffer.
1120
+ # @param buffer [VipsBlob] Buffer to load from
1121
+ # @param opts [Hash] Set of options
1122
+ # @option opts [Boolean] :memory Force open via memory
1123
+ # @option opts [Vips::Access] :access Required access pattern for this file
1124
+ # @option opts [Integer] :page Load this page from the image
1125
+ # @option opts [Integer] :n Load this many pages
1126
+ # @option opts [Boolean] :fail Fail on first error
1127
+ # @option opts [Boolean] :autorotate Rotate image using orientation tag
1128
+ # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
1129
+ # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
1130
+
1131
+ # @!method self.openslideload(filename, opts = {})
1132
+ # Load file with openslide.
1133
+ # @param filename [String] Filename to load from
1134
+ # @param opts [Hash] Set of options
1135
+ # @option opts [Boolean] :memory Force open via memory
1136
+ # @option opts [Vips::Access] :access Required access pattern for this file
1137
+ # @option opts [Integer] :level Load this level from the file
1138
+ # @option opts [Boolean] :autocrop Crop to image bounds
1139
+ # @option opts [Boolean] :fail Fail on first error
1140
+ # @option opts [String] :associated Load this associated image
1141
+ # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
1142
+ # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
1143
+
1144
+ # @!method self.magickload(filename, opts = {})
1145
+ # Load file with imagemagick.
1146
+ # @param filename [String] Filename to load from
1147
+ # @param opts [Hash] Set of options
1148
+ # @option opts [String] :density Canvas resolution for rendering vector formats like SVG
1149
+ # @option opts [Integer] :page Load this page from the file
1150
+ # @option opts [Integer] :n Load this many pages
1151
+ # @option opts [Boolean] :memory Force open via memory
1152
+ # @option opts [Vips::Access] :access Required access pattern for this file
1153
+ # @option opts [Boolean] :fail Fail on first error
1154
+ # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
1155
+ # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
1156
+
1157
+ # @!method self.magickload_buffer(buffer, opts = {})
1158
+ # Load buffer with imagemagick.
1159
+ # @param buffer [VipsBlob] Buffer to load from
1160
+ # @param opts [Hash] Set of options
1161
+ # @option opts [String] :density Canvas resolution for rendering vector formats like SVG
1162
+ # @option opts [Integer] :page Load this page from the file
1163
+ # @option opts [Integer] :n Load this many pages
1164
+ # @option opts [Boolean] :memory Force open via memory
1165
+ # @option opts [Vips::Access] :access Required access pattern for this file
1166
+ # @option opts [Boolean] :fail Fail on first error
1167
+ # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
1168
+ # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
1169
+
1170
+ # @!method self.fitsload(filename, opts = {})
1171
+ # Load a fits image.
1172
+ # @param filename [String] Filename to load from
1173
+ # @param opts [Hash] Set of options
1174
+ # @option opts [Boolean] :memory Force open via memory
1175
+ # @option opts [Vips::Access] :access Required access pattern for this file
1176
+ # @option opts [Boolean] :fail Fail on first error
1177
+ # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
1178
+ # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
1179
+
1180
+ # @!method self.openexrload(filename, opts = {})
1181
+ # Load an openexr image.
1182
+ # @param filename [String] Filename to load from
1183
+ # @param opts [Hash] Set of options
1184
+ # @option opts [Boolean] :memory Force open via memory
1185
+ # @option opts [Vips::Access] :access Required access pattern for this file
1186
+ # @option opts [Boolean] :fail Fail on first error
1187
+ # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
1188
+ # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
1189
+
1190
+ # @!method self.niftiload(filename, opts = {})
1191
+ # Load a nifti image.
1192
+ # @param filename [String] Filename to load from
1193
+ # @param opts [Hash] Set of options
1194
+ # @option opts [Boolean] :memory Force open via memory
1195
+ # @option opts [Vips::Access] :access Required access pattern for this file
1196
+ # @option opts [Boolean] :fail Fail on first error
1197
+ # @option opts [Vips::ForeignFlags] :flags Output Flags for this file
1198
+ # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
1199
+
1200
+ # @!method csvsave(filename, opts = {})
1201
+ # Save image to csv file.
1202
+ # @param filename [String] Filename to save to
1203
+ # @param opts [Hash] Set of options
1204
+ # @option opts [Integer] :page_height Set page height for multipage save
1205
+ # @option opts [String] :separator Separator characters
1206
+ # @option opts [Boolean] :strip Strip all metadata from image
1207
+ # @option opts [Array<Double>] :background Background value
1208
+ # @return [nil]
1209
+
1210
+ # @!method matrixsave(filename, opts = {})
1211
+ # Save image to matrix file.
1212
+ # @param filename [String] Filename to save to
1213
+ # @param opts [Hash] Set of options
1214
+ # @option opts [Integer] :page_height Set page height for multipage save
1215
+ # @option opts [Boolean] :strip Strip all metadata from image
1216
+ # @option opts [Array<Double>] :background Background value
1217
+ # @return [nil]
1218
+
1219
+ # @!method matrixprint(opts = {})
1220
+ # Print matrix.
1221
+ # @param opts [Hash] Set of options
1222
+ # @option opts [Integer] :page_height Set page height for multipage save
1223
+ # @option opts [Boolean] :strip Strip all metadata from image
1224
+ # @option opts [Array<Double>] :background Background value
1225
+ # @return [nil]
1226
+
1227
+ # @!method rawsave(filename, opts = {})
1228
+ # Save image to raw file.
1229
+ # @param filename [String] Filename to save to
1230
+ # @param opts [Hash] Set of options
1231
+ # @option opts [Integer] :page_height Set page height for multipage save
1232
+ # @option opts [Boolean] :strip Strip all metadata from image
1233
+ # @option opts [Array<Double>] :background Background value
1234
+ # @return [nil]
1235
+
1236
+ # @!method rawsave_fd(fd, opts = {})
1237
+ # Write raw image to file descriptor.
1238
+ # @param fd [Integer] File descriptor to write to
1239
+ # @param opts [Hash] Set of options
1240
+ # @option opts [Integer] :page_height Set page height for multipage save
1241
+ # @option opts [Boolean] :strip Strip all metadata from image
1242
+ # @option opts [Array<Double>] :background Background value
1243
+ # @return [nil]
1244
+
1245
+ # @!method vipssave(filename, opts = {})
1246
+ # Save image to vips file.
1247
+ # @param filename [String] Filename to save to
1248
+ # @param opts [Hash] Set of options
1249
+ # @option opts [Integer] :page_height Set page height for multipage save
1250
+ # @option opts [Boolean] :strip Strip all metadata from image
1251
+ # @option opts [Array<Double>] :background Background value
1252
+ # @return [nil]
1253
+
1254
+ # @!method ppmsave(filename, opts = {})
1255
+ # Save image to ppm file.
1256
+ # @param filename [String] Filename to save to
1257
+ # @param opts [Hash] Set of options
1258
+ # @option opts [Integer] :page_height Set page height for multipage save
1259
+ # @option opts [Boolean] :ascii save as ascii
1260
+ # @option opts [Boolean] :squash save as one bit
1261
+ # @option opts [Boolean] :strip Strip all metadata from image
1262
+ # @option opts [Array<Double>] :background Background value
1263
+ # @return [nil]
1264
+
1265
+ # @!method radsave(filename, opts = {})
1266
+ # Save image to radiance file.
1267
+ # @param filename [String] Filename to save to
1268
+ # @param opts [Hash] Set of options
1269
+ # @option opts [Integer] :page_height Set page height for multipage save
1270
+ # @option opts [Boolean] :strip Strip all metadata from image
1271
+ # @option opts [Array<Double>] :background Background value
1272
+ # @return [nil]
1273
+
1274
+ # @!method radsave_buffer(opts = {})
1275
+ # Save image to radiance buffer.
1276
+ # @param opts [Hash] Set of options
1277
+ # @option opts [Integer] :page_height Set page height for multipage save
1278
+ # @option opts [Boolean] :strip Strip all metadata from image
1279
+ # @option opts [Array<Double>] :background Background value
1280
+ # @return [VipsBlob] Buffer to save to
1281
+
1282
+ # @!method dzsave(filename, opts = {})
1283
+ # Save image to deepzoom file.
1284
+ # @param filename [String] Filename to save to
1285
+ # @param opts [Hash] Set of options
1286
+ # @option opts [String] :basename Base name to save to
1287
+ # @option opts [Vips::ForeignDzLayout] :layout Directory layout
1288
+ # @option opts [Integer] :page_height Set page height for multipage save
1289
+ # @option opts [String] :suffix Filename suffix for tiles
1290
+ # @option opts [Integer] :overlap Tile overlap in pixels
1291
+ # @option opts [Integer] :tile_size Tile size in pixels
1292
+ # @option opts [Boolean] :centre Center image in tile
1293
+ # @option opts [Vips::ForeignDzDepth] :depth Pyramid depth
1294
+ # @option opts [Vips::Angle] :angle Rotate image during save
1295
+ # @option opts [Vips::ForeignDzContainer] :container Pyramid container type
1296
+ # @option opts [Boolean] :properties Write a properties file to the output directory
1297
+ # @option opts [Integer] :compression ZIP deflate compression level
1298
+ # @option opts [Vips::RegionShrink] :region_shrink Method to shrink regions
1299
+ # @option opts [Boolean] :strip Strip all metadata from image
1300
+ # @option opts [Array<Double>] :background Background value
1301
+ # @return [nil]
1302
+
1303
+ # @!method dzsave_buffer(opts = {})
1304
+ # Save image to dz buffer.
1305
+ # @param opts [Hash] Set of options
1306
+ # @option opts [String] :basename Base name to save to
1307
+ # @option opts [Vips::ForeignDzLayout] :layout Directory layout
1308
+ # @option opts [Integer] :page_height Set page height for multipage save
1309
+ # @option opts [String] :suffix Filename suffix for tiles
1310
+ # @option opts [Integer] :overlap Tile overlap in pixels
1311
+ # @option opts [Integer] :tile_size Tile size in pixels
1312
+ # @option opts [Boolean] :centre Center image in tile
1313
+ # @option opts [Vips::ForeignDzDepth] :depth Pyramid depth
1314
+ # @option opts [Vips::Angle] :angle Rotate image during save
1315
+ # @option opts [Vips::ForeignDzContainer] :container Pyramid container type
1316
+ # @option opts [Boolean] :properties Write a properties file to the output directory
1317
+ # @option opts [Integer] :compression ZIP deflate compression level
1318
+ # @option opts [Vips::RegionShrink] :region_shrink Method to shrink regions
1319
+ # @option opts [Boolean] :strip Strip all metadata from image
1320
+ # @option opts [Array<Double>] :background Background value
1321
+ # @return [VipsBlob] Buffer to save to
1322
+
1323
+ # @!method pngsave(filename, opts = {})
1324
+ # Save image to png file.
1325
+ # @param filename [String] Filename to save to
1326
+ # @param opts [Hash] Set of options
1327
+ # @option opts [Integer] :compression Compression factor
1328
+ # @option opts [Boolean] :interlace Interlace image
1329
+ # @option opts [Integer] :page_height Set page height for multipage save
1330
+ # @option opts [String] :profile ICC profile to embed
1331
+ # @option opts [Vips::ForeignPngFilter] :filter libpng row filter flag(s)
1332
+ # @option opts [Boolean] :palette Quantise to 8bpp palette
1333
+ # @option opts [Integer] :colours Max number of palette colours
1334
+ # @option opts [Integer] :Q Quantisation quality
1335
+ # @option opts [Float] :dither Amount of dithering
1336
+ # @option opts [Boolean] :strip Strip all metadata from image
1337
+ # @option opts [Array<Double>] :background Background value
1338
+ # @return [nil]
1339
+
1340
+ # @!method pngsave_buffer(opts = {})
1341
+ # Save image to png buffer.
1342
+ # @param opts [Hash] Set of options
1343
+ # @option opts [Integer] :compression Compression factor
1344
+ # @option opts [Boolean] :interlace Interlace image
1345
+ # @option opts [Integer] :page_height Set page height for multipage save
1346
+ # @option opts [String] :profile ICC profile to embed
1347
+ # @option opts [Vips::ForeignPngFilter] :filter libpng row filter flag(s)
1348
+ # @option opts [Boolean] :palette Quantise to 8bpp palette
1349
+ # @option opts [Integer] :colours Max number of palette colours
1350
+ # @option opts [Integer] :Q Quantisation quality
1351
+ # @option opts [Float] :dither Amount of dithering
1352
+ # @option opts [Boolean] :strip Strip all metadata from image
1353
+ # @option opts [Array<Double>] :background Background value
1354
+ # @return [VipsBlob] Buffer to save to
1355
+
1356
+ # @!method jpegsave(filename, opts = {})
1357
+ # Save image to jpeg file.
1358
+ # @param filename [String] Filename to save to
1359
+ # @param opts [Hash] Set of options
1360
+ # @option opts [Integer] :page_height Set page height for multipage save
1361
+ # @option opts [Integer] :Q Q factor
1362
+ # @option opts [String] :profile ICC profile to embed
1363
+ # @option opts [Boolean] :optimize_coding Compute optimal Huffman coding tables
1364
+ # @option opts [Boolean] :interlace Generate an interlaced (progressive) jpeg
1365
+ # @option opts [Boolean] :no_subsample Disable chroma subsample
1366
+ # @option opts [Boolean] :trellis_quant Apply trellis quantisation to each 8x8 block
1367
+ # @option opts [Boolean] :overshoot_deringing Apply overshooting to samples with extreme values
1368
+ # @option opts [Boolean] :optimize_scans Split the spectrum of DCT coefficients into separate scans
1369
+ # @option opts [Integer] :quant_table Use predefined quantization table with given index
1370
+ # @option opts [Boolean] :strip Strip all metadata from image
1371
+ # @option opts [Array<Double>] :background Background value
1372
+ # @return [nil]
1373
+
1374
+ # @!method jpegsave_buffer(opts = {})
1375
+ # Save image to jpeg buffer.
1376
+ # @param opts [Hash] Set of options
1377
+ # @option opts [Integer] :page_height Set page height for multipage save
1378
+ # @option opts [Integer] :Q Q factor
1379
+ # @option opts [String] :profile ICC profile to embed
1380
+ # @option opts [Boolean] :optimize_coding Compute optimal Huffman coding tables
1381
+ # @option opts [Boolean] :interlace Generate an interlaced (progressive) jpeg
1382
+ # @option opts [Boolean] :no_subsample Disable chroma subsample
1383
+ # @option opts [Boolean] :trellis_quant Apply trellis quantisation to each 8x8 block
1384
+ # @option opts [Boolean] :overshoot_deringing Apply overshooting to samples with extreme values
1385
+ # @option opts [Boolean] :optimize_scans Split the spectrum of DCT coefficients into separate scans
1386
+ # @option opts [Integer] :quant_table Use predefined quantization table with given index
1387
+ # @option opts [Boolean] :strip Strip all metadata from image
1388
+ # @option opts [Array<Double>] :background Background value
1389
+ # @return [VipsBlob] Buffer to save to
1390
+
1391
+ # @!method jpegsave_mime(opts = {})
1392
+ # Save image to jpeg mime.
1393
+ # @param opts [Hash] Set of options
1394
+ # @option opts [Integer] :page_height Set page height for multipage save
1395
+ # @option opts [Integer] :Q Q factor
1396
+ # @option opts [String] :profile ICC profile to embed
1397
+ # @option opts [Boolean] :optimize_coding Compute optimal Huffman coding tables
1398
+ # @option opts [Boolean] :interlace Generate an interlaced (progressive) jpeg
1399
+ # @option opts [Boolean] :no_subsample Disable chroma subsample
1400
+ # @option opts [Boolean] :trellis_quant Apply trellis quantisation to each 8x8 block
1401
+ # @option opts [Boolean] :overshoot_deringing Apply overshooting to samples with extreme values
1402
+ # @option opts [Boolean] :optimize_scans Split the spectrum of DCT coefficients into separate scans
1403
+ # @option opts [Integer] :quant_table Use predefined quantization table with given index
1404
+ # @option opts [Boolean] :strip Strip all metadata from image
1405
+ # @option opts [Array<Double>] :background Background value
1406
+ # @return [nil]
1407
+
1408
+ # @!method webpsave(filename, opts = {})
1409
+ # Save image to webp file.
1410
+ # @param filename [String] Filename to save to
1411
+ # @param opts [Hash] Set of options
1412
+ # @option opts [Integer] :page_height Set page height for multipage save
1413
+ # @option opts [Integer] :Q Q factor
1414
+ # @option opts [Boolean] :lossless enable lossless compression
1415
+ # @option opts [Vips::ForeignWebpPreset] :preset Preset for lossy compression
1416
+ # @option opts [Boolean] :smart_subsample Enable high quality chroma subsampling
1417
+ # @option opts [Boolean] :near_lossless Enable preprocessing in lossless mode (uses Q)
1418
+ # @option opts [Integer] :alpha_q Change alpha plane fidelity for lossy compression
1419
+ # @option opts [Boolean] :strip Strip all metadata from image
1420
+ # @option opts [Array<Double>] :background Background value
1421
+ # @return [nil]
1422
+
1423
+ # @!method webpsave_buffer(opts = {})
1424
+ # Save image to webp buffer.
1425
+ # @param opts [Hash] Set of options
1426
+ # @option opts [Integer] :page_height Set page height for multipage save
1427
+ # @option opts [Integer] :Q Q factor
1428
+ # @option opts [Boolean] :lossless enable lossless compression
1429
+ # @option opts [Vips::ForeignWebpPreset] :preset Preset for lossy compression
1430
+ # @option opts [Boolean] :smart_subsample Enable high quality chroma subsampling
1431
+ # @option opts [Boolean] :near_lossless Enable preprocessing in lossless mode (uses Q)
1432
+ # @option opts [Integer] :alpha_q Change alpha plane fidelity for lossy compression
1433
+ # @option opts [Boolean] :strip Strip all metadata from image
1434
+ # @option opts [Array<Double>] :background Background value
1435
+ # @return [VipsBlob] Buffer to save to
1436
+
1437
+ # @!method tiffsave(filename, opts = {})
1438
+ # Save image to tiff file.
1439
+ # @param filename [String] Filename to save to
1440
+ # @param opts [Hash] Set of options
1441
+ # @option opts [Vips::ForeignTiffCompression] :compression Compression for this file
1442
+ # @option opts [Integer] :Q Q factor
1443
+ # @option opts [Vips::ForeignTiffPredictor] :predictor Compression prediction
1444
+ # @option opts [Integer] :page_height Set page height for multipage save
1445
+ # @option opts [String] :profile ICC profile to embed
1446
+ # @option opts [Boolean] :tile Write a tiled tiff
1447
+ # @option opts [Integer] :tile_width Tile width in pixels
1448
+ # @option opts [Integer] :tile_height Tile height in pixels
1449
+ # @option opts [Boolean] :pyramid Write a pyramidal tiff
1450
+ # @option opts [Boolean] :miniswhite Use 0 for white in 1-bit images
1451
+ # @option opts [Boolean] :squash Squash images down to 1 bit
1452
+ # @option opts [Vips::ForeignTiffResunit] :resunit Resolution unit
1453
+ # @option opts [Float] :xres Horizontal resolution in pixels/mm
1454
+ # @option opts [Float] :yres Vertical resolution in pixels/mm
1455
+ # @option opts [Boolean] :bigtiff Write a bigtiff image
1456
+ # @option opts [Boolean] :properties Write a properties document to IMAGEDESCRIPTION
1457
+ # @option opts [Vips::RegionShrink] :region_shrink Method to shrink regions
1458
+ # @option opts [Boolean] :strip Strip all metadata from image
1459
+ # @option opts [Array<Double>] :background Background value
1460
+ # @return [nil]
1461
+
1462
+ # @!method tiffsave_buffer(opts = {})
1463
+ # Save image to tiff buffer.
1464
+ # @param opts [Hash] Set of options
1465
+ # @option opts [Vips::ForeignTiffCompression] :compression Compression for this file
1466
+ # @option opts [Integer] :Q Q factor
1467
+ # @option opts [Vips::ForeignTiffPredictor] :predictor Compression prediction
1468
+ # @option opts [Integer] :page_height Set page height for multipage save
1469
+ # @option opts [String] :profile ICC profile to embed
1470
+ # @option opts [Boolean] :tile Write a tiled tiff
1471
+ # @option opts [Integer] :tile_width Tile width in pixels
1472
+ # @option opts [Integer] :tile_height Tile height in pixels
1473
+ # @option opts [Boolean] :pyramid Write a pyramidal tiff
1474
+ # @option opts [Boolean] :miniswhite Use 0 for white in 1-bit images
1475
+ # @option opts [Boolean] :squash Squash images down to 1 bit
1476
+ # @option opts [Vips::ForeignTiffResunit] :resunit Resolution unit
1477
+ # @option opts [Float] :xres Horizontal resolution in pixels/mm
1478
+ # @option opts [Float] :yres Vertical resolution in pixels/mm
1479
+ # @option opts [Boolean] :bigtiff Write a bigtiff image
1480
+ # @option opts [Boolean] :properties Write a properties document to IMAGEDESCRIPTION
1481
+ # @option opts [Vips::RegionShrink] :region_shrink Method to shrink regions
1482
+ # @option opts [Boolean] :strip Strip all metadata from image
1483
+ # @option opts [Array<Double>] :background Background value
1484
+ # @return [VipsBlob] Buffer to save to
1485
+
1486
+ # @!method magicksave(filename, opts = {})
1487
+ # Save file with imagemagick.
1488
+ # @param filename [String] Filename to save to
1489
+ # @param opts [Hash] Set of options
1490
+ # @option opts [String] :format Format to save in
1491
+ # @option opts [Integer] :quality Quality to use
1492
+ # @option opts [Integer] :page_height Set page height for multipage save
1493
+ # @option opts [Boolean] :strip Strip all metadata from image
1494
+ # @option opts [Array<Double>] :background Background value
1495
+ # @return [nil]
1496
+
1497
+ # @!method magicksave_buffer(opts = {})
1498
+ # Save image to magick buffer.
1499
+ # @param opts [Hash] Set of options
1500
+ # @option opts [String] :format Format to save in
1501
+ # @option opts [Integer] :quality Quality to use
1502
+ # @option opts [Integer] :page_height Set page height for multipage save
1503
+ # @option opts [Boolean] :strip Strip all metadata from image
1504
+ # @option opts [Array<Double>] :background Background value
1505
+ # @return [VipsBlob] Buffer to save to
1506
+
1507
+ # @!method fitssave(filename, opts = {})
1508
+ # Save image to fits file.
1509
+ # @param filename [String] Filename to save to
1510
+ # @param opts [Hash] Set of options
1511
+ # @option opts [Integer] :page_height Set page height for multipage save
1512
+ # @option opts [Boolean] :strip Strip all metadata from image
1513
+ # @option opts [Array<Double>] :background Background value
1514
+ # @return [nil]
1515
+
1516
+ # @!method niftisave(filename, opts = {})
1517
+ # Save image to nifti file.
1518
+ # @param filename [String] Filename to save to
1519
+ # @param opts [Hash] Set of options
1520
+ # @option opts [Integer] :page_height Set page height for multipage save
1521
+ # @option opts [Boolean] :strip Strip all metadata from image
1522
+ # @option opts [Array<Double>] :background Background value
1523
+ # @return [nil]
1524
+
1525
+ # @!method self.thumbnail(filename, width, opts = {})
1526
+ # Generate thumbnail from file.
1527
+ # @param filename [String] Filename to read from
1528
+ # @param width [Integer] Size to this width
1529
+ # @param opts [Hash] Set of options
1530
+ # @option opts [Integer] :height Size to this height
1531
+ # @option opts [Vips::Size] :size Only upsize, only downsize, or both
1532
+ # @option opts [Boolean] :auto_rotate Use orientation tags to rotate image upright
1533
+ # @option opts [Vips::Interesting] :crop Reduce to fill target rectangle, then crop
1534
+ # @option opts [Boolean] :linear Reduce in linear light
1535
+ # @option opts [String] :import_profile Fallback import profile
1536
+ # @option opts [String] :export_profile Fallback export profile
1537
+ # @option opts [Vips::Intent] :intent Rendering intent
1538
+ # @return [Vips::Image] Output image
1539
+
1540
+ # @!method self.thumbnail_buffer(buffer, width, opts = {})
1541
+ # Generate thumbnail from buffer.
1542
+ # @param buffer [VipsBlob] Buffer to load from
1543
+ # @param width [Integer] Size to this width
1544
+ # @param opts [Hash] Set of options
1545
+ # @option opts [Integer] :height Size to this height
1546
+ # @option opts [Vips::Size] :size Only upsize, only downsize, or both
1547
+ # @option opts [Boolean] :auto_rotate Use orientation tags to rotate image upright
1548
+ # @option opts [Vips::Interesting] :crop Reduce to fill target rectangle, then crop
1549
+ # @option opts [Boolean] :linear Reduce in linear light
1550
+ # @option opts [String] :import_profile Fallback import profile
1551
+ # @option opts [String] :export_profile Fallback export profile
1552
+ # @option opts [Vips::Intent] :intent Rendering intent
1553
+ # @return [Vips::Image] Output image
1554
+
1555
+ # @!method thumbnail_image(width, opts = {})
1556
+ # Generate thumbnail from image.
1557
+ # @param width [Integer] Size to this width
1558
+ # @param opts [Hash] Set of options
1559
+ # @option opts [Integer] :height Size to this height
1560
+ # @option opts [Vips::Size] :size Only upsize, only downsize, or both
1561
+ # @option opts [Boolean] :auto_rotate Use orientation tags to rotate image upright
1562
+ # @option opts [Vips::Interesting] :crop Reduce to fill target rectangle, then crop
1563
+ # @option opts [Boolean] :linear Reduce in linear light
1564
+ # @option opts [String] :import_profile Fallback import profile
1565
+ # @option opts [String] :export_profile Fallback export profile
1566
+ # @option opts [Vips::Intent] :intent Rendering intent
1567
+ # @return [Vips::Image] Output image
1568
+
1569
+ # @!method mapim(index, opts = {})
1570
+ # Resample with an mapim image.
1571
+ # @param index [Vips::Image] Index pixels with this
1572
+ # @param opts [Hash] Set of options
1573
+ # @option opts [Vips::Interpolate] :interpolate Interpolate pixels with this
1574
+ # @return [Vips::Image] Output image
1575
+
1576
+ # @!method shrink(hshrink, vshrink, opts = {})
1577
+ # Shrink an image.
1578
+ # @param hshrink [Float] Horizontal shrink factor
1579
+ # @param vshrink [Float] Vertical shrink factor
1580
+ # @param opts [Hash] Set of options
1581
+ # @return [Vips::Image] Output image
1582
+
1583
+ # @!method shrinkh(hshrink, opts = {})
1584
+ # Shrink an image horizontally.
1585
+ # @param hshrink [Integer] Horizontal shrink factor
1586
+ # @param opts [Hash] Set of options
1587
+ # @return [Vips::Image] Output image
1588
+
1589
+ # @!method shrinkv(vshrink, opts = {})
1590
+ # Shrink an image vertically.
1591
+ # @param vshrink [Integer] Vertical shrink factor
1592
+ # @param opts [Hash] Set of options
1593
+ # @return [Vips::Image] Output image
1594
+
1595
+ # @!method reduceh(hshrink, opts = {})
1596
+ # Shrink an image horizontally.
1597
+ # @param hshrink [Float] Horizontal shrink factor
1598
+ # @param opts [Hash] Set of options
1599
+ # @option opts [Vips::Kernel] :kernel Resampling kernel
1600
+ # @option opts [Boolean] :centre Use centre sampling convention
1601
+ # @return [Vips::Image] Output image
1602
+
1603
+ # @!method reducev(vshrink, opts = {})
1604
+ # Shrink an image vertically.
1605
+ # @param vshrink [Float] Vertical shrink factor
1606
+ # @param opts [Hash] Set of options
1607
+ # @option opts [Vips::Kernel] :kernel Resampling kernel
1608
+ # @option opts [Boolean] :centre Use centre sampling convention
1609
+ # @return [Vips::Image] Output image
1610
+
1611
+ # @!method reduce(hshrink, vshrink, opts = {})
1612
+ # Reduce an image.
1613
+ # @param hshrink [Float] Horizontal shrink factor
1614
+ # @param vshrink [Float] Vertical shrink factor
1615
+ # @param opts [Hash] Set of options
1616
+ # @option opts [Vips::Kernel] :kernel Resampling kernel
1617
+ # @option opts [Boolean] :centre Use centre sampling convention
1618
+ # @return [Vips::Image] Output image
1619
+
1620
+ # @!method quadratic(coeff, opts = {})
1621
+ # Resample an image with a quadratic transform.
1622
+ # @param coeff [Vips::Image] Coefficient matrix
1623
+ # @param opts [Hash] Set of options
1624
+ # @option opts [Vips::Interpolate] :interpolate Interpolate values with this
1625
+ # @return [Vips::Image] Output image
1626
+
1627
+ # @!method affine(matrix, opts = {})
1628
+ # Affine transform of an image.
1629
+ # @param matrix [Array<Double>] Transformation matrix
1630
+ # @param opts [Hash] Set of options
1631
+ # @option opts [Vips::Interpolate] :interpolate Interpolate pixels with this
1632
+ # @option opts [Array<Integer>] :oarea Area of output to generate
1633
+ # @option opts [Float] :odx Horizontal output displacement
1634
+ # @option opts [Float] :ody Vertical output displacement
1635
+ # @option opts [Float] :idx Horizontal input displacement
1636
+ # @option opts [Float] :idy Vertical input displacement
1637
+ # @option opts [Array<Double>] :background Background value
1638
+ # @option opts [Vips::Extend] :extend How to generate the extra pixels
1639
+ # @return [Vips::Image] Output image
1640
+
1641
+ # @!method similarity(opts = {})
1642
+ # Similarity transform of an image.
1643
+ # @param opts [Hash] Set of options
1644
+ # @option opts [Float] :scale Scale by this factor
1645
+ # @option opts [Float] :angle Rotate anticlockwise by this many degrees
1646
+ # @option opts [Vips::Interpolate] :interpolate Interpolate pixels with this
1647
+ # @option opts [Array<Double>] :background Background value
1648
+ # @option opts [Float] :odx Horizontal output displacement
1649
+ # @option opts [Float] :ody Vertical output displacement
1650
+ # @option opts [Float] :idx Horizontal input displacement
1651
+ # @option opts [Float] :idy Vertical input displacement
1652
+ # @return [Vips::Image] Output image
1653
+
1654
+ # @!method rotate(angle, opts = {})
1655
+ # Rotate an image by a number of degrees.
1656
+ # @param angle [Float] Rotate anticlockwise by this many degrees
1657
+ # @param opts [Hash] Set of options
1658
+ # @option opts [Vips::Interpolate] :interpolate Interpolate pixels with this
1659
+ # @option opts [Array<Double>] :background Background value
1660
+ # @option opts [Float] :odx Horizontal output displacement
1661
+ # @option opts [Float] :ody Vertical output displacement
1662
+ # @option opts [Float] :idx Horizontal input displacement
1663
+ # @option opts [Float] :idy Vertical input displacement
1664
+ # @return [Vips::Image] Output image
1665
+
1666
+ # @!method resize(scale, opts = {})
1667
+ # Resize an image.
1668
+ # @param scale [Float] Scale image by this factor
1669
+ # @param opts [Hash] Set of options
1670
+ # @option opts [Vips::Kernel] :kernel Resampling kernel
1671
+ # @option opts [Float] :vscale Vertical scale image by this factor
1672
+ # @return [Vips::Image] Output image
1673
+
1674
+ # @!method colourspace(space, opts = {})
1675
+ # Convert to a new colorspace.
1676
+ # @param space [Vips::Interpretation] Destination color space
1677
+ # @param opts [Hash] Set of options
1678
+ # @option opts [Vips::Interpretation] :source_space Source color space
1679
+ # @return [Vips::Image] Output image
1680
+
1681
+ # @!method Lab2XYZ(opts = {})
1682
+ # Transform cielab to xyz.
1683
+ # @param opts [Hash] Set of options
1684
+ # @option opts [Array<Double>] :temp Color temperature
1685
+ # @return [Vips::Image] Output image
1686
+
1687
+ # @!method XYZ2Lab(opts = {})
1688
+ # Transform xyz to lab.
1689
+ # @param opts [Hash] Set of options
1690
+ # @option opts [Array<Double>] :temp Colour temperature
1691
+ # @return [Vips::Image] Output image
1692
+
1693
+ # @!method Lab2LCh(opts = {})
1694
+ # Transform lab to lch.
1695
+ # @param opts [Hash] Set of options
1696
+ # @return [Vips::Image] Output image
1697
+
1698
+ # @!method LCh2Lab(opts = {})
1699
+ # Transform lch to lab.
1700
+ # @param opts [Hash] Set of options
1701
+ # @return [Vips::Image] Output image
1702
+
1703
+ # @!method LCh2CMC(opts = {})
1704
+ # Transform lch to cmc.
1705
+ # @param opts [Hash] Set of options
1706
+ # @return [Vips::Image] Output image
1707
+
1708
+ # @!method CMC2LCh(opts = {})
1709
+ # Transform lch to cmc.
1710
+ # @param opts [Hash] Set of options
1711
+ # @return [Vips::Image] Output image
1712
+
1713
+ # @!method XYZ2Yxy(opts = {})
1714
+ # Transform xyz to yxy.
1715
+ # @param opts [Hash] Set of options
1716
+ # @return [Vips::Image] Output image
1717
+
1718
+ # @!method Yxy2XYZ(opts = {})
1719
+ # Transform yxy to xyz.
1720
+ # @param opts [Hash] Set of options
1721
+ # @return [Vips::Image] Output image
1722
+
1723
+ # @!method scRGB2XYZ(opts = {})
1724
+ # Transform scrgb to xyz.
1725
+ # @param opts [Hash] Set of options
1726
+ # @return [Vips::Image] Output image
1727
+
1728
+ # @!method XYZ2scRGB(opts = {})
1729
+ # Transform xyz to scrgb.
1730
+ # @param opts [Hash] Set of options
1731
+ # @return [Vips::Image] Output image
1732
+
1733
+ # @!method LabQ2Lab(opts = {})
1734
+ # Unpack a labq image to float lab.
1735
+ # @param opts [Hash] Set of options
1736
+ # @return [Vips::Image] Output image
1737
+
1738
+ # @!method Lab2LabQ(opts = {})
1739
+ # Transform float lab to labq coding.
1740
+ # @param opts [Hash] Set of options
1741
+ # @return [Vips::Image] Output image
1742
+
1743
+ # @!method LabQ2LabS(opts = {})
1744
+ # Unpack a labq image to short lab.
1745
+ # @param opts [Hash] Set of options
1746
+ # @return [Vips::Image] Output image
1747
+
1748
+ # @!method LabS2LabQ(opts = {})
1749
+ # Transform short lab to labq coding.
1750
+ # @param opts [Hash] Set of options
1751
+ # @return [Vips::Image] Output image
1752
+
1753
+ # @!method LabS2Lab(opts = {})
1754
+ # Transform signed short lab to float.
1755
+ # @param opts [Hash] Set of options
1756
+ # @return [Vips::Image] Output image
1757
+
1758
+ # @!method Lab2LabS(opts = {})
1759
+ # Transform float lab to signed short.
1760
+ # @param opts [Hash] Set of options
1761
+ # @return [Vips::Image] Output image
1762
+
1763
+ # @!method rad2float(opts = {})
1764
+ # Unpack radiance coding to float rgb.
1765
+ # @param opts [Hash] Set of options
1766
+ # @return [Vips::Image] Output image
1767
+
1768
+ # @!method float2rad(opts = {})
1769
+ # Transform float rgb to radiance coding.
1770
+ # @param opts [Hash] Set of options
1771
+ # @return [Vips::Image] Output image
1772
+
1773
+ # @!method LabQ2sRGB(opts = {})
1774
+ # Convert a labq image to srgb.
1775
+ # @param opts [Hash] Set of options
1776
+ # @return [Vips::Image] Output image
1777
+
1778
+ # @!method sRGB2HSV(opts = {})
1779
+ # Transform srgb to hsv.
1780
+ # @param opts [Hash] Set of options
1781
+ # @return [Vips::Image] Output image
1782
+
1783
+ # @!method HSV2sRGB(opts = {})
1784
+ # Transform hsv to srgb.
1785
+ # @param opts [Hash] Set of options
1786
+ # @return [Vips::Image] Output image
1787
+
1788
+ # @!method icc_import(opts = {})
1789
+ # Import from device with icc profile.
1790
+ # @param opts [Hash] Set of options
1791
+ # @option opts [Vips::PCS] :pcs Set Profile Connection Space
1792
+ # @option opts [Vips::Intent] :intent Rendering intent
1793
+ # @option opts [Boolean] :embedded Use embedded input profile, if available
1794
+ # @option opts [String] :input_profile Filename to load input profile from
1795
+ # @return [Vips::Image] Output image
1796
+
1797
+ # @!method icc_export(opts = {})
1798
+ # Output to device with icc profile.
1799
+ # @param opts [Hash] Set of options
1800
+ # @option opts [Vips::PCS] :pcs Set Profile Connection Space
1801
+ # @option opts [Vips::Intent] :intent Rendering intent
1802
+ # @option opts [String] :output_profile Filename to load output profile from
1803
+ # @option opts [Integer] :depth Output device space depth in bits
1804
+ # @return [Vips::Image] Output image
1805
+
1806
+ # @!method icc_transform(output_profile, opts = {})
1807
+ # Transform between devices with icc profiles.
1808
+ # @param output_profile [String] Filename to load output profile from
1809
+ # @param opts [Hash] Set of options
1810
+ # @option opts [Vips::PCS] :pcs Set Profile Connection Space
1811
+ # @option opts [Vips::Intent] :intent Rendering intent
1812
+ # @option opts [Boolean] :embedded Use embedded input profile, if available
1813
+ # @option opts [String] :input_profile Filename to load input profile from
1814
+ # @option opts [Integer] :depth Output device space depth in bits
1815
+ # @return [Vips::Image] Output image
1816
+
1817
+ # @!method dE76(right, opts = {})
1818
+ # Calculate de76.
1819
+ # @param right [Vips::Image] Right-hand input image
1820
+ # @param opts [Hash] Set of options
1821
+ # @return [Vips::Image] Output image
1822
+
1823
+ # @!method dE00(right, opts = {})
1824
+ # Calculate de00.
1825
+ # @param right [Vips::Image] Right-hand input image
1826
+ # @param opts [Hash] Set of options
1827
+ # @return [Vips::Image] Output image
1828
+
1829
+ # @!method dECMC(right, opts = {})
1830
+ # Calculate decmc.
1831
+ # @param right [Vips::Image] Right-hand input image
1832
+ # @param opts [Hash] Set of options
1833
+ # @return [Vips::Image] Output image
1834
+
1835
+ # @!method sRGB2scRGB(opts = {})
1836
+ # Convert an srgb image to scrgb.
1837
+ # @param opts [Hash] Set of options
1838
+ # @return [Vips::Image] Output image
1839
+
1840
+ # @!method scRGB2BW(opts = {})
1841
+ # Convert scrgb to bw.
1842
+ # @param opts [Hash] Set of options
1843
+ # @option opts [Integer] :depth Output device space depth in bits
1844
+ # @return [Vips::Image] Output image
1845
+
1846
+ # @!method scRGB2sRGB(opts = {})
1847
+ # Convert an scrgb image to srgb.
1848
+ # @param opts [Hash] Set of options
1849
+ # @option opts [Integer] :depth Output device space depth in bits
1850
+ # @return [Vips::Image] Output image
1851
+
1852
+ # @!method maplut(lut, opts = {})
1853
+ # Map an image though a lut.
1854
+ # @param lut [Vips::Image] Look-up table image
1855
+ # @param opts [Hash] Set of options
1856
+ # @option opts [Integer] :band apply one-band lut to this band of in
1857
+ # @return [Vips::Image] Output image
1858
+
1859
+ # @!method percent(percent, opts = {})
1860
+ # Find threshold for percent of pixels.
1861
+ # @param percent [Float] Percent of pixels
1862
+ # @param opts [Hash] Set of options
1863
+ # @return [Integer] Threshold above which lie percent of pixels
1864
+
1865
+ # @!method stdif(width, height, opts = {})
1866
+ # Statistical difference.
1867
+ # @param width [Integer] Window width in pixels
1868
+ # @param height [Integer] Window height in pixels
1869
+ # @param opts [Hash] Set of options
1870
+ # @option opts [Float] :s0 New deviation
1871
+ # @option opts [Float] :b Weight of new deviation
1872
+ # @option opts [Float] :m0 New mean
1873
+ # @option opts [Float] :a Weight of new mean
1874
+ # @return [Vips::Image] Output image
1875
+
1876
+ # @!method hist_cum(opts = {})
1877
+ # Form cumulative histogram.
1878
+ # @param opts [Hash] Set of options
1879
+ # @return [Vips::Image] Output image
1880
+
1881
+ # @!method hist_match(ref, opts = {})
1882
+ # Match two histograms.
1883
+ # @param ref [Vips::Image] Reference histogram
1884
+ # @param opts [Hash] Set of options
1885
+ # @return [Vips::Image] Output image
1886
+
1887
+ # @!method hist_norm(opts = {})
1888
+ # Normalise histogram.
1889
+ # @param opts [Hash] Set of options
1890
+ # @return [Vips::Image] Output image
1891
+
1892
+ # @!method hist_equal(opts = {})
1893
+ # Histogram equalisation.
1894
+ # @param opts [Hash] Set of options
1895
+ # @option opts [Integer] :band Equalise with this band
1896
+ # @return [Vips::Image] Output image
1897
+
1898
+ # @!method hist_plot(opts = {})
1899
+ # Plot histogram.
1900
+ # @param opts [Hash] Set of options
1901
+ # @return [Vips::Image] Output image
1902
+
1903
+ # @!method hist_local(width, height, opts = {})
1904
+ # Local histogram equalisation.
1905
+ # @param width [Integer] Window width in pixels
1906
+ # @param height [Integer] Window height in pixels
1907
+ # @param opts [Hash] Set of options
1908
+ # @option opts [Integer] :max_slope Maximum slope (CLAHE)
1909
+ # @return [Vips::Image] Output image
1910
+
1911
+ # @!method hist_ismonotonic(opts = {})
1912
+ # Test for monotonicity.
1913
+ # @param opts [Hash] Set of options
1914
+ # @return [Boolean] true if in is monotonic
1915
+
1916
+ # @!method hist_entropy(opts = {})
1917
+ # Estimate image entropy.
1918
+ # @param opts [Hash] Set of options
1919
+ # @return [Float] Output value
1920
+
1921
+ # @!method conv(mask, opts = {})
1922
+ # Convolution operation.
1923
+ # @param mask [Vips::Image] Input matrix image
1924
+ # @param opts [Hash] Set of options
1925
+ # @option opts [Vips::Precision] :precision Convolve with this precision
1926
+ # @option opts [Integer] :layers Use this many layers in approximation
1927
+ # @option opts [Integer] :cluster Cluster lines closer than this in approximation
1928
+ # @return [Vips::Image] Output image
1929
+
1930
+ # @!method conva(mask, opts = {})
1931
+ # Approximate integer convolution.
1932
+ # @param mask [Vips::Image] Input matrix image
1933
+ # @param opts [Hash] Set of options
1934
+ # @option opts [Integer] :layers Use this many layers in approximation
1935
+ # @option opts [Integer] :cluster Cluster lines closer than this in approximation
1936
+ # @return [Vips::Image] Output image
1937
+
1938
+ # @!method convf(mask, opts = {})
1939
+ # Float convolution operation.
1940
+ # @param mask [Vips::Image] Input matrix image
1941
+ # @param opts [Hash] Set of options
1942
+ # @return [Vips::Image] Output image
1943
+
1944
+ # @!method convi(mask, opts = {})
1945
+ # Int convolution operation.
1946
+ # @param mask [Vips::Image] Input matrix image
1947
+ # @param opts [Hash] Set of options
1948
+ # @return [Vips::Image] Output image
1949
+
1950
+ # @!method compass(mask, opts = {})
1951
+ # Convolve with rotating mask.
1952
+ # @param mask [Vips::Image] Input matrix image
1953
+ # @param opts [Hash] Set of options
1954
+ # @option opts [Integer] :times Rotate and convolve this many times
1955
+ # @option opts [Vips::Angle45] :angle Rotate mask by this much between convolutions
1956
+ # @option opts [Vips::Combine] :combine Combine convolution results like this
1957
+ # @option opts [Vips::Precision] :precision Convolve with this precision
1958
+ # @option opts [Integer] :layers Use this many layers in approximation
1959
+ # @option opts [Integer] :cluster Cluster lines closer than this in approximation
1960
+ # @return [Vips::Image] Output image
1961
+
1962
+ # @!method convsep(mask, opts = {})
1963
+ # Seperable convolution operation.
1964
+ # @param mask [Vips::Image] Input matrix image
1965
+ # @param opts [Hash] Set of options
1966
+ # @option opts [Vips::Precision] :precision Convolve with this precision
1967
+ # @option opts [Integer] :layers Use this many layers in approximation
1968
+ # @option opts [Integer] :cluster Cluster lines closer than this in approximation
1969
+ # @return [Vips::Image] Output image
1970
+
1971
+ # @!method convasep(mask, opts = {})
1972
+ # Approximate separable integer convolution.
1973
+ # @param mask [Vips::Image] Input matrix image
1974
+ # @param opts [Hash] Set of options
1975
+ # @option opts [Integer] :layers Use this many layers in approximation
1976
+ # @return [Vips::Image] Output image
1977
+
1978
+ # @!method fastcor(ref, opts = {})
1979
+ # Fast correlation.
1980
+ # @param ref [Vips::Image] Input reference image
1981
+ # @param opts [Hash] Set of options
1982
+ # @return [Vips::Image] Output image
1983
+
1984
+ # @!method spcor(ref, opts = {})
1985
+ # Spatial correlation.
1986
+ # @param ref [Vips::Image] Input reference image
1987
+ # @param opts [Hash] Set of options
1988
+ # @return [Vips::Image] Output image
1989
+
1990
+ # @!method sharpen(opts = {})
1991
+ # Unsharp masking for print.
1992
+ # @param opts [Hash] Set of options
1993
+ # @option opts [Float] :sigma Sigma of Gaussian
1994
+ # @option opts [Float] :x1 Flat/jaggy threshold
1995
+ # @option opts [Float] :y2 Maximum brightening
1996
+ # @option opts [Float] :y3 Maximum darkening
1997
+ # @option opts [Float] :m1 Slope for flat areas
1998
+ # @option opts [Float] :m2 Slope for jaggy areas
1999
+ # @return [Vips::Image] Output image
2000
+
2001
+ # @!method gaussblur(sigma, opts = {})
2002
+ # Gaussian blur.
2003
+ # @param sigma [Float] Sigma of Gaussian
2004
+ # @param opts [Hash] Set of options
2005
+ # @option opts [Float] :min_ampl Minimum amplitude of Gaussian
2006
+ # @option opts [Vips::Precision] :precision Convolve with this precision
2007
+ # @return [Vips::Image] Output image
2008
+
2009
+ # @!method canny(opts = {})
2010
+ # Canny edge detector.
2011
+ # @param opts [Hash] Set of options
2012
+ # @option opts [Float] :sigma Sigma of Gaussian
2013
+ # @option opts [Vips::Precision] :precision Convolve with this precision
2014
+ # @return [Vips::Image] Output image
2015
+
2016
+ # @!method sobel(opts = {})
2017
+ # Sobel edge detector.
2018
+ # @param opts [Hash] Set of options
2019
+ # @return [Vips::Image] Output image
2020
+
2021
+ # @!method fwfft(opts = {})
2022
+ # Forward fft.
2023
+ # @param opts [Hash] Set of options
2024
+ # @return [Vips::Image] Output image
2025
+
2026
+ # @!method invfft(opts = {})
2027
+ # Inverse fft.
2028
+ # @param opts [Hash] Set of options
2029
+ # @option opts [Boolean] :real Output only the real part of the transform
2030
+ # @return [Vips::Image] Output image
2031
+
2032
+ # @!method freqmult(mask, opts = {})
2033
+ # Frequency-domain filtering.
2034
+ # @param mask [Vips::Image] Input mask image
2035
+ # @param opts [Hash] Set of options
2036
+ # @return [Vips::Image] Output image
2037
+
2038
+ # @!method spectrum(opts = {})
2039
+ # Make displayable power spectrum.
2040
+ # @param opts [Hash] Set of options
2041
+ # @return [Vips::Image] Output image
2042
+
2043
+ # @!method phasecor(in2, opts = {})
2044
+ # Calculate phase correlation.
2045
+ # @param in2 [Vips::Image] Second input image
2046
+ # @param opts [Hash] Set of options
2047
+ # @return [Vips::Image] Output image
2048
+
2049
+ # @!method morph(mask, morph, opts = {})
2050
+ # Morphology operation.
2051
+ # @param mask [Vips::Image] Input matrix image
2052
+ # @param morph [Vips::OperationMorphology] Morphological operation to perform
2053
+ # @param opts [Hash] Set of options
2054
+ # @return [Vips::Image] Output image
2055
+
2056
+ # @!method rank(width, height, index, opts = {})
2057
+ # Rank filter.
2058
+ # @param width [Integer] Window width in pixels
2059
+ # @param height [Integer] Window height in pixels
2060
+ # @param index [Integer] Select pixel at index
2061
+ # @param opts [Hash] Set of options
2062
+ # @return [Vips::Image] Output image
2063
+
2064
+ # @!method countlines(direction, opts = {})
2065
+ # Count lines in an image.
2066
+ # @param direction [Vips::Direction] Countlines left-right or up-down
2067
+ # @param opts [Hash] Set of options
2068
+ # @return [Float] Number of lines
2069
+
2070
+ # @!method labelregions(opts = {})
2071
+ # Label regions in an image.
2072
+ # @param opts [Hash] Set of options
2073
+ # @option opts [Integer] :segments Output Number of discrete contigious regions
2074
+ # @return [Vips::Image, Hash<Symbol => Object>] Mask of region labels, Hash of optional output items
2075
+
2076
+ # @!method fill_nearest(opts = {})
2077
+ # Fill image zeros with nearest non-zero pixel.
2078
+ # @param opts [Hash] Set of options
2079
+ # @option opts [Vips::Image] :distance Output Distance to nearest non-zero pixel
2080
+ # @return [Vips::Image, Hash<Symbol => Object>] Value of nearest non-zero pixel, Hash of optional output items
2081
+
2082
+ # @!method draw_rect(ink, left, top, width, height, opts = {})
2083
+ # Paint a rectangle on an image.
2084
+ # @param ink [Array<Double>] Color for pixels
2085
+ # @param left [Integer] Rect to fill
2086
+ # @param top [Integer] Rect to fill
2087
+ # @param width [Integer] Rect to fill
2088
+ # @param height [Integer] Rect to fill
2089
+ # @param opts [Hash] Set of options
2090
+ # @option opts [Boolean] :fill Draw a solid object
2091
+ # @return [Vips::Image] Image to draw on
2092
+
2093
+ # @!method draw_mask(ink, mask, x, y, opts = {})
2094
+ # Draw a mask on an image.
2095
+ # @param ink [Array<Double>] Color for pixels
2096
+ # @param mask [Vips::Image] Mask of pixels to draw
2097
+ # @param x [Integer] Draw mask here
2098
+ # @param y [Integer] Draw mask here
2099
+ # @param opts [Hash] Set of options
2100
+ # @return [Vips::Image] Image to draw on
2101
+
2102
+ # @!method draw_line(ink, x1, y1, x2, y2, opts = {})
2103
+ # Draw a line on an image.
2104
+ # @param ink [Array<Double>] Color for pixels
2105
+ # @param x1 [Integer] Start of draw_line
2106
+ # @param y1 [Integer] Start of draw_line
2107
+ # @param x2 [Integer] End of draw_line
2108
+ # @param y2 [Integer] End of draw_line
2109
+ # @param opts [Hash] Set of options
2110
+ # @return [Vips::Image] Image to draw on
2111
+
2112
+ # @!method draw_circle(ink, cx, cy, radius, opts = {})
2113
+ # Draw a circle on an image.
2114
+ # @param ink [Array<Double>] Color for pixels
2115
+ # @param cx [Integer] Centre of draw_circle
2116
+ # @param cy [Integer] Centre of draw_circle
2117
+ # @param radius [Integer] Radius in pixels
2118
+ # @param opts [Hash] Set of options
2119
+ # @option opts [Boolean] :fill Draw a solid object
2120
+ # @return [Vips::Image] Image to draw on
2121
+
2122
+ # @!method draw_flood(ink, x, y, opts = {})
2123
+ # Flood-fill an area.
2124
+ # @param ink [Array<Double>] Color for pixels
2125
+ # @param x [Integer] DrawFlood start point
2126
+ # @param y [Integer] DrawFlood start point
2127
+ # @param opts [Hash] Set of options
2128
+ # @option opts [Vips::Image] :test Test pixels in this image
2129
+ # @option opts [Boolean] :equal DrawFlood while equal to edge
2130
+ # @option opts [Integer] :left Output Left edge of modified area
2131
+ # @option opts [Integer] :top Output top edge of modified area
2132
+ # @option opts [Integer] :width Output width of modified area
2133
+ # @option opts [Integer] :height Output height of modified area
2134
+ # @return [Vips::Image, Hash<Symbol => Object>] Image to draw on, Hash of optional output items
2135
+
2136
+ # @!method draw_image(sub, x, y, opts = {})
2137
+ # Paint an image into another image.
2138
+ # @param sub [Vips::Image] Sub-image to insert into main image
2139
+ # @param x [Integer] Draw image here
2140
+ # @param y [Integer] Draw image here
2141
+ # @param opts [Hash] Set of options
2142
+ # @option opts [Vips::CombineMode] :mode Combining mode
2143
+ # @return [Vips::Image] Image to draw on
2144
+
2145
+ # @!method draw_smudge(left, top, width, height, opts = {})
2146
+ # Blur a rectangle on an image.
2147
+ # @param left [Integer] Rect to fill
2148
+ # @param top [Integer] Rect to fill
2149
+ # @param width [Integer] Rect to fill
2150
+ # @param height [Integer] Rect to fill
2151
+ # @param opts [Hash] Set of options
2152
+ # @return [Vips::Image] Image to draw on
2153
+
2154
+ # @!method merge(sec, direction, dx, dy, opts = {})
2155
+ # Merge two images.
2156
+ # @param sec [Vips::Image] Secondary image
2157
+ # @param direction [Vips::Direction] Horizontal or vertcial merge
2158
+ # @param dx [Integer] Horizontal displacement from sec to ref
2159
+ # @param dy [Integer] Vertical displacement from sec to ref
2160
+ # @param opts [Hash] Set of options
2161
+ # @option opts [Integer] :mblend Maximum blend size
2162
+ # @return [Vips::Image] Output image
2163
+
2164
+ # @!method mosaic(sec, direction, xref, yref, xsec, ysec, opts = {})
2165
+ # Mosaic two images.
2166
+ # @param sec [Vips::Image] Secondary image
2167
+ # @param direction [Vips::Direction] Horizontal or vertcial mosaic
2168
+ # @param xref [Integer] Position of reference tie-point
2169
+ # @param yref [Integer] Position of reference tie-point
2170
+ # @param xsec [Integer] Position of secondary tie-point
2171
+ # @param ysec [Integer] Position of secondary tie-point
2172
+ # @param opts [Hash] Set of options
2173
+ # @option opts [Integer] :hwindow Half window size
2174
+ # @option opts [Integer] :harea Half area size
2175
+ # @option opts [Integer] :mblend Maximum blend size
2176
+ # @option opts [Integer] :bandno Band to search for features on
2177
+ # @option opts [Integer] :dx0 Output Detected integer offset
2178
+ # @option opts [Integer] :dy0 Output Detected integer offset
2179
+ # @option opts [Float] :scale1 Output Detected scale
2180
+ # @option opts [Float] :angle1 Output Detected rotation
2181
+ # @option opts [Float] :dy1 Output Detected first-order displacement
2182
+ # @option opts [Float] :dx1 Output Detected first-order displacement
2183
+ # @return [Vips::Image, Hash<Symbol => Object>] Output image, Hash of optional output items
2184
+
2185
+ # @!method mosaic1(sec, direction, xr1, yr1, xs1, ys1, xr2, yr2, xs2, ys2, opts = {})
2186
+ # First-order mosaic of two images.
2187
+ # @param sec [Vips::Image] Secondary image
2188
+ # @param direction [Vips::Direction] Horizontal or vertcial mosaic
2189
+ # @param xr1 [Integer] Position of first reference tie-point
2190
+ # @param yr1 [Integer] Position of first reference tie-point
2191
+ # @param xs1 [Integer] Position of first secondary tie-point
2192
+ # @param ys1 [Integer] Position of first secondary tie-point
2193
+ # @param xr2 [Integer] Position of second reference tie-point
2194
+ # @param yr2 [Integer] Position of second reference tie-point
2195
+ # @param xs2 [Integer] Position of second secondary tie-point
2196
+ # @param ys2 [Integer] Position of second secondary tie-point
2197
+ # @param opts [Hash] Set of options
2198
+ # @option opts [Integer] :hwindow Half window size
2199
+ # @option opts [Integer] :harea Half area size
2200
+ # @option opts [Boolean] :search Search to improve tie-points
2201
+ # @option opts [Vips::Interpolate] :interpolate Interpolate pixels with this
2202
+ # @option opts [Integer] :mblend Maximum blend size
2203
+ # @option opts [Integer] :bandno Band to search for features on
2204
+ # @return [Vips::Image] Output image
2205
+
2206
+ # @!method match(sec, xr1, yr1, xs1, ys1, xr2, yr2, xs2, ys2, opts = {})
2207
+ # First-order match of two images.
2208
+ # @param sec [Vips::Image] Secondary image
2209
+ # @param xr1 [Integer] Position of first reference tie-point
2210
+ # @param yr1 [Integer] Position of first reference tie-point
2211
+ # @param xs1 [Integer] Position of first secondary tie-point
2212
+ # @param ys1 [Integer] Position of first secondary tie-point
2213
+ # @param xr2 [Integer] Position of second reference tie-point
2214
+ # @param yr2 [Integer] Position of second reference tie-point
2215
+ # @param xs2 [Integer] Position of second secondary tie-point
2216
+ # @param ys2 [Integer] Position of second secondary tie-point
2217
+ # @param opts [Hash] Set of options
2218
+ # @option opts [Integer] :hwindow Half window size
2219
+ # @option opts [Integer] :harea Half area size
2220
+ # @option opts [Boolean] :search Search to improve tie-points
2221
+ # @option opts [Vips::Interpolate] :interpolate Interpolate pixels with this
2222
+ # @return [Vips::Image] Output image
2223
+
2224
+ # @!method globalbalance(opts = {})
2225
+ # Global balance an image mosaic.
2226
+ # @param opts [Hash] Set of options
2227
+ # @option opts [Float] :gamma Image gamma
2228
+ # @option opts [Boolean] :int_output Integer output
2229
+ # @return [Vips::Image] Output image
2143
2230
 
2144
2231
  end
2145
2232
  end