vips 8.7.0.1 → 8.8.0.1

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