vips 8.6.3.2 → 8.8.2

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