ruby-vips 2.0.13 → 2.0.14

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