Class: Vips::Image
- Inherits:
-
Object
- Object
- Vips::Image
- Defined in:
- lib/vips/image.rb,
lib/vips/methods.rb
Overview
This class represents a libvips image. See the Vips module documentation for an introduction to using this module.
Instance Attribute Summary collapse
-
#bands ⇒ Integer
readonly
Image bands.
-
#coding ⇒ Vips::Coding
readonly
Image coding.
-
#filename ⇒ String
readonly
Image filename.
-
#format ⇒ Vips::BandFormat
readonly
Image format.
-
#height ⇒ Integer
readonly
Image height, in pixels.
-
#interpretation ⇒ Vips::Interpretation
readonly
Image interpretation.
-
#width ⇒ Integer
readonly
Image width, in pixels.
-
#xres ⇒ Float
readonly
Horizontal image resolution, in pixels per mm.
-
#yres ⇒ Float
readonly
Vertical image resolution, in pixels per mm.
Class Method Summary collapse
-
.analyzeload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load an analyze6 image.
-
.arrayjoin ⇒ Vips::Image
Join an array of images.
-
.bandrank ⇒ Vips::Image
Band-wise rank of a set of images.
-
.black(width, height, opts = {}) ⇒ Vips::Image
Make a black image.
-
.csvload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load csv from file.
-
.eye(width, height, opts = {}) ⇒ Vips::Image
Make an image showing the eye's spatial response.
-
.fitsload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load a fits image.
-
.fractsurf(width, height, fractal_dimension, opts = {}) ⇒ Vips::Image
Make a fractal surface.
-
.gaussmat(sigma, min_ampl, opts = {}) ⇒ Vips::Image
Make a gaussian image.
-
.gaussnoise(width, height, opts = {}) ⇒ Vips::Image
Make a gaussnoise image.
-
.gifload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load gif with giflib.
-
.gifload_buffer(buffer, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load gif with giflib.
-
.grey(width, height, opts = {}) ⇒ Vips::Image
Make a grey ramp image.
-
.identity(opts = {}) ⇒ Vips::Image
Make a 1d image where pixel values are indexes.
-
.jpegload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load jpeg from file.
-
.jpegload_buffer(buffer, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load jpeg from buffer.
-
.logmat(sigma, min_ampl, opts = {}) ⇒ Vips::Image
Make a laplacian of gaussian image.
-
.magickload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load file with imagemagick.
-
.magickload_buffer(buffer, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load buffer with imagemagick.
-
.mask_butterworth(width, height, order, frequency_cutoff, amplitude_cutoff, opts = {}) ⇒ Vips::Image
Make a butterworth filter.
-
.mask_butterworth_band(width, height, order, frequency_cutoff_x, frequency_cutoff_y, radius, amplitude_cutoff, opts = {}) ⇒ Vips::Image
Make a butterworth_band filter.
-
.mask_butterworth_ring(width, height, order, frequency_cutoff, amplitude_cutoff, ringwidth, opts = {}) ⇒ Vips::Image
Make a butterworth ring filter.
-
.mask_fractal(width, height, fractal_dimension, opts = {}) ⇒ Vips::Image
Make fractal filter.
-
.mask_gaussian(width, height, frequency_cutoff, amplitude_cutoff, opts = {}) ⇒ Vips::Image
Make a gaussian filter.
-
.mask_gaussian_band(width, height, frequency_cutoff_x, frequency_cutoff_y, radius, amplitude_cutoff, opts = {}) ⇒ Vips::Image
Make a gaussian filter.
-
.mask_gaussian_ring(width, height, frequency_cutoff, amplitude_cutoff, ringwidth, opts = {}) ⇒ Vips::Image
Make a gaussian ring filter.
-
.mask_ideal(width, height, frequency_cutoff, opts = {}) ⇒ Vips::Image
Make an ideal filter.
-
.mask_ideal_band(width, height, frequency_cutoff_x, frequency_cutoff_y, radius, opts = {}) ⇒ Vips::Image
Make an ideal band filter.
-
.mask_ideal_ring(width, height, frequency_cutoff, ringwidth, opts = {}) ⇒ Vips::Image
Make an ideal ring filter.
-
.matload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load mat from file.
-
.matrixload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load matrix from file.
-
.method_missing(name, *args) ⇒ Object
Invoke a vips operation with call.
-
.new_from_array(array, scale = 1, offset = 0) ⇒ Image
Create a new Image from a 1D or 2D array.
-
.new_from_buffer(data, option_string, opts = {}) ⇒ Image
Create a new Image for an image encoded in a format, such as JPEG, in a memory string.
-
.new_from_file(name, opts = {}) ⇒ Image
Return a new Image for a file on disc.
-
.openexrload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load an openexr image.
-
.openslideload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load file with openslide.
-
.pdfload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load pdf with libpoppler.
-
.pdfload_buffer(buffer, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load pdf with libpoppler.
-
.perlin(width, height, opts = {}) ⇒ Vips::Image
Make a perlin noise image.
-
.pngload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load png from file.
-
.pngload_buffer(buffer, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load png from buffer.
-
.ppmload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load ppm from file.
-
.radload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load a radiance image from a file.
-
.rawload(filename, width, height, bands, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load raw data from a file.
-
.sines(width, height, opts = {}) ⇒ Vips::Image
Make a 2d sine wave.
-
.sum ⇒ Vips::Image
Sum an array of images.
-
.svgload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load svg with rsvg.
-
.svgload_buffer(buffer, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load svg with rsvg.
-
.system(cmd_format, opts = {}) ⇒ nil, Hash<Symbol => Object>
Run an external command.
-
.text(text, opts = {}) ⇒ Vips::Image
Make a text image.
-
.tiffload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load tiff from file.
-
.tiffload_buffer(buffer, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load tiff from buffer.
-
.tonelut(opts = {}) ⇒ Vips::Image
Build a look-up table.
-
.vipsload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load vips from file.
-
.webpload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load webp from file.
-
.webpload_buffer(buffer, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load webp from buffer.
-
.worley(width, height, opts = {}) ⇒ Vips::Image
Make a worley noise image.
-
.xyz(width, height, opts = {}) ⇒ Vips::Image
Make an image where pixel values are coordinates.
-
.zone(width, height, opts = {}) ⇒ Vips::Image
Make a zone plate.
Instance Method Summary collapse
-
#! ⇒ Image
Equivalent to image ^ -1.
-
#!=(other) ⇒ Image
Compare inequality to nil, an image, constant or array.
-
#%(other) ⇒ Image
Remainder after integer division with an image, constant or array.
-
#&(other) ⇒ Image
Integer bitwise AND with an image, constant or array.
-
#*(other) ⇒ Image
Multiply an image, constant or array.
-
#**(other) ⇒ Image
Raise to power of an image, constant or array.
-
#+(other) ⇒ Image
Add an image, constant or array.
-
#+@ ⇒ Image
Image.
-
#-(other) ⇒ Image
Subtract an image, constant or array.
-
#-@ ⇒ Image
Equivalent to image * -1.
-
#/(other) ⇒ Image
Divide an image, constant or array.
-
#<(other) ⇒ Image
Relational less than with an image, constant or array.
-
#<<(other) ⇒ Image
Integer left shift with an image, constant or array.
-
#<=(other) ⇒ Image
Relational less than or equal to with an image, constant or array.
-
#==(other) ⇒ Image
Compare equality to nil, an image, constant or array.
-
#>(other) ⇒ Image
Relational more than with an image, constant or array.
-
#>=(other) ⇒ Image
Relational more than or equal to with an image, constant or array.
-
#>>(other) ⇒ Image
Integer right shift with an image, constant or array.
-
#[](index) ⇒ Image
Fetch bands using a number or a range.
-
#^(other) ⇒ Image
Integer bitwise EOR with an image, constant or array.
-
#abs(opts = {}) ⇒ Vips::Image
Absolute value of an image.
-
#acos ⇒ Image
Return the inverse cosine of an image in degrees.
-
#add(right, opts = {}) ⇒ Vips::Image
Add two images.
-
#affine(matrix, opts = {}) ⇒ Vips::Image
Affine transform of an image.
-
#asin ⇒ Image
Return the inverse sine of an image in degrees.
-
#atan ⇒ Image
Return the inverse tangent of an image in degrees.
-
#autorot(opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Autorotate image by exif tag.
-
#avg(opts = {}) ⇒ Float
Find image average.
-
#bandand ⇒ Image
AND the bands of an image together.
-
#bandbool(boolean, opts = {}) ⇒ Vips::Image
Boolean operation across image bands.
-
#bandeor ⇒ Image
EOR the bands of an image together.
-
#bandfold(opts = {}) ⇒ Vips::Image
Fold up x axis into bands.
-
#bandjoin(other) ⇒ Image
Join a set of images bandwise.
-
#bandjoin_const(c, opts = {}) ⇒ Vips::Image
Append a constant band to an image.
-
#bandmean(opts = {}) ⇒ Vips::Image
Band-wise average.
-
#bandor ⇒ Image
OR the bands of an image together.
-
#bandsplit ⇒ Array<Image>
Split an n-band image into n separate images.
-
#bandunfold(opts = {}) ⇒ Vips::Image
Unfold image bands into x axis.
-
#boolean(right, boolean, opts = {}) ⇒ Vips::Image
Boolean operation on two images.
-
#boolean_const(c, boolean, opts = {}) ⇒ Vips::Image
Boolean operations against a constant.
-
#buildlut(opts = {}) ⇒ Vips::Image
Build a look-up table.
-
#byteswap(opts = {}) ⇒ Vips::Image
Byteswap an image.
-
#cache(opts = {}) ⇒ Vips::Image
Cache an image.
-
#cast(format, opts = {}) ⇒ Vips::Image
Cast an image.
-
#ceil ⇒ Image
Return the smallest integral value not less than the argument.
-
#CMC2LCh(opts = {}) ⇒ Vips::Image
Transform lch to cmc.
-
#colourspace(space, opts = {}) ⇒ Vips::Image
Convert to a new colourspace.
-
#compass(mask, opts = {}) ⇒ Vips::Image
Convolve with rotating mask.
-
#complex(cmplx, opts = {}) ⇒ Vips::Image
Perform a complex operation on an image.
-
#complex2(right, cmplx, opts = {}) ⇒ Vips::Image
Complex binary operations on two images.
-
#complexform(right, opts = {}) ⇒ Vips::Image
Form a complex image from two real images.
-
#complexget(get, opts = {}) ⇒ Vips::Image
Get a component from a complex image.
-
#conj ⇒ Image
Return the complex conjugate of an image.
-
#conv(mask, opts = {}) ⇒ Vips::Image
Convolution operation.
-
#conva(mask, opts = {}) ⇒ Vips::Image
Approximate integer convolution.
-
#convasep(mask, opts = {}) ⇒ Vips::Image
Approximate separable integer convolution.
-
#convf(mask, opts = {}) ⇒ Vips::Image
Float convolution operation.
-
#convi(mask, opts = {}) ⇒ Vips::Image
Int convolution operation.
-
#convsep(mask, opts = {}) ⇒ Vips::Image
Seperable convolution operation.
-
#copy(opts = {}) ⇒ Vips::Image
Copy an image.
-
#cos ⇒ Image
Return the cosine of an image in degrees.
-
#countlines(direction, opts = {}) ⇒ Float
Count lines in an image.
-
#csvsave(filename, opts = {}) ⇒ nil
Save image to csv file.
-
#dE00(right, opts = {}) ⇒ Vips::Image
Calculate de00.
-
#dE76(right, opts = {}) ⇒ Vips::Image
Calculate de76.
-
#dECMC(right, opts = {}) ⇒ Vips::Image
Calculate decmc.
-
#deviate(opts = {}) ⇒ Float
Find image standard deviation.
-
#dilate(mask) ⇒ Image
Dilate with a structuring element.
-
#divide(right, opts = {}) ⇒ Vips::Image
Divide two images.
-
#draw_circle(ink, cx, cy, radius, opts = {}) ⇒ Vips::Image
Draw a circle on an image.
-
#draw_flood(ink, x, y, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Flood-fill an area.
-
#draw_image(sub, x, y, opts = {}) ⇒ Vips::Image
Paint an image into another image.
-
#draw_line(ink, x1, y1, x2, y2, opts = {}) ⇒ Vips::Image
Draw a line on an image.
-
#draw_mask(ink, mask, x, y, opts = {}) ⇒ Vips::Image
Draw a mask on an image.
-
#draw_rect(ink, left, top, width, height, opts = {}) ⇒ Vips::Image
Paint a rectangle on an image.
-
#draw_smudge(left, top, width, height, opts = {}) ⇒ Vips::Image
Blur a rectangle on an image.
-
#dzsave(filename, opts = {}) ⇒ nil
Save image to deep zoom format.
-
#embed(x, y, width, height, opts = {}) ⇒ Vips::Image
Embed an image in a larger image.
-
#erode(mask) ⇒ Image
Erode with a structuring element.
-
#exp ⇒ Image
Return e ** pixel.
-
#exp10 ⇒ Image
Return 10 ** pixel.
-
#extract_area(left, top, width, height, opts = {}) ⇒ Vips::Image
Extract an area from an image.
-
#extract_band(band, opts = {}) ⇒ Vips::Image
Extract band from an image.
-
#falsecolour(opts = {}) ⇒ Vips::Image
False-colour an image.
-
#fastcor(ref, opts = {}) ⇒ Vips::Image
Fast correlation.
-
#fitssave(filename, opts = {}) ⇒ nil
Save image to fits file.
-
#flatten(opts = {}) ⇒ Vips::Image
Flatten alpha out of an image.
-
#flip(direction, opts = {}) ⇒ Vips::Image
Flip an image.
-
#fliphor ⇒ Image
Flip horizontally.
-
#flipver ⇒ Image
Flip vertically.
-
#float2rad(opts = {}) ⇒ Vips::Image
Transform float rgb to radiance coding.
-
#floor ⇒ Image
Return the largest integral value not greater than the argument.
-
#freqmult(mask, opts = {}) ⇒ Vips::Image
Frequency-domain filtering.
-
#fwfft(opts = {}) ⇒ Vips::Image
Forward fft.
-
#gamma(opts = {}) ⇒ Vips::Image
Gamma an image.
-
#gaussblur(sigma, opts = {}) ⇒ Vips::Image
Gaussian blur.
-
#get(name) ⇒ Integer, GValue
Fetch a
GValue
from an image. -
#get_typeof(name) ⇒ Integer
Fetch a
GType
from an image. -
#get_value(name) ⇒ Object
Get a metadata item from an image.
-
#getpoint(x, y, opts = {}) ⇒ Array<Double>
Read a point from an image.
-
#globalbalance(opts = {}) ⇒ Vips::Image
Global balance an image mosaic.
-
#grid(tile_height, across, down, opts = {}) ⇒ Vips::Image
Grid an image.
-
#hist_cum(opts = {}) ⇒ Vips::Image
Form cumulative histogram.
-
#hist_entropy(opts = {}) ⇒ Float
Estimate image entropy.
-
#hist_equal(opts = {}) ⇒ Vips::Image
Histogram equalisation.
-
#hist_find(opts = {}) ⇒ Vips::Image
Find image histogram.
-
#hist_find_indexed(index, opts = {}) ⇒ Vips::Image
Find indexed image histogram.
-
#hist_find_ndim(opts = {}) ⇒ Vips::Image
Find n-dimensional image histogram.
-
#hist_ismonotonic(opts = {}) ⇒ Boolean
Test for monotonicity.
-
#hist_local(width, height, opts = {}) ⇒ Vips::Image
Local histogram equalisation.
-
#hist_match(ref, opts = {}) ⇒ Vips::Image
Match two histograms.
-
#hist_norm(opts = {}) ⇒ Vips::Image
Normalise histogram.
-
#hist_plot(opts = {}) ⇒ Vips::Image
Plot histogram.
-
#hough_circle(opts = {}) ⇒ Vips::Image
Find hough circle transform.
-
#hough_line(opts = {}) ⇒ Vips::Image
Find hough line transform.
-
#HSV2sRGB(opts = {}) ⇒ Vips::Image
Transform hsv to srgb.
-
#icc_export(opts = {}) ⇒ Vips::Image
Output to device with icc profile.
-
#icc_import(opts = {}) ⇒ Vips::Image
Import from device with icc profile.
-
#icc_transform(output_profile, opts = {}) ⇒ Vips::Image
Transform between devices with icc profiles.
-
#ifthenelse(th, el, opts = {}) ⇒ Image
Select pixels from
th
ifself
is non-zero and fromel
ifself
is zero. -
#imag ⇒ Image
Return the imaginary part of a complex image.
-
#insert(sub, x, y, opts = {}) ⇒ Vips::Image
Insert image @sub into @main at @x, @y.
-
#invert(opts = {}) ⇒ Vips::Image
Invert an image.
-
#invertlut(opts = {}) ⇒ Vips::Image
Build an inverted look-up table.
-
#invfft(opts = {}) ⇒ Vips::Image
Inverse fft.
-
#join(in2, direction, opts = {}) ⇒ Vips::Image
Join a pair of images.
-
#jpegsave(filename, opts = {}) ⇒ nil
Save image to jpeg file.
-
#jpegsave_buffer(opts = {}) ⇒ Vips::Blob
Save image to jpeg buffer.
-
#jpegsave_mime(opts = {}) ⇒ nil
Save image to jpeg mime.
-
#Lab2LabQ(opts = {}) ⇒ Vips::Image
Transform float lab to labq coding.
-
#Lab2LabS(opts = {}) ⇒ Vips::Image
Transform float lab to signed short.
-
#Lab2LCh(opts = {}) ⇒ Vips::Image
Transform lab to lch.
-
#Lab2XYZ(opts = {}) ⇒ Vips::Image
Transform cielab to xyz.
-
#labelregions(opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Label regions in an image.
-
#LabQ2Lab(opts = {}) ⇒ Vips::Image
Unpack a labq image to float lab.
-
#LabQ2LabS(opts = {}) ⇒ Vips::Image
Unpack a labq image to short lab.
-
#LabQ2sRGB(opts = {}) ⇒ Vips::Image
Convert a labq image to srgb.
-
#LabS2Lab(opts = {}) ⇒ Vips::Image
Transform signed short lab to float.
-
#LabS2LabQ(opts = {}) ⇒ Vips::Image
Transform short lab to labq coding.
-
#LCh2CMC(opts = {}) ⇒ Vips::Image
Transform lch to cmc.
-
#LCh2Lab(opts = {}) ⇒ Vips::Image
Transform lch to lab.
-
#linear(a, b, opts = {}) ⇒ Vips::Image
Calculate (a * in + b).
-
#linecache(opts = {}) ⇒ Vips::Image
Cache an image as a set of lines.
-
#log ⇒ Image
Return the natural log of an image.
-
#log10 ⇒ Image
Return the log base 10 of an image.
-
#mapim(index, opts = {}) ⇒ Vips::Image
Resample with an mapim image.
-
#maplut(lut, opts = {}) ⇒ Vips::Image
Map an image though a lut.
-
#match(sec, xr1, yr1, xs1, ys1, xr2, yr2, xs2, ys2, opts = {}) ⇒ Vips::Image
First-order match of two images.
-
#math(math, opts = {}) ⇒ Vips::Image
Apply a math operation to an image.
-
#math2(right, math2, opts = {}) ⇒ Vips::Image
Binary math operations.
-
#math2_const(c, math2, opts = {}) ⇒ Vips::Image
Pow( @in, @c ).
-
#matrixprint(opts = {}) ⇒ nil
Print matrix.
-
#matrixsave(filename, opts = {}) ⇒ nil
Save image to matrix file.
-
#max(opts = {}) ⇒ Float, Hash<Symbol => Object>
Find image maximum.
-
#maxpos ⇒ Real
Return the coordinates of the image maximum.
-
#measure(h, v, opts = {}) ⇒ Vips::Image
Measure a set of patches on a colour chart.
-
#median(size = 3) ⇒ Image
a median filter.
-
#merge(sec, direction, dx, dy, opts = {}) ⇒ Vips::Image
Merge two images.
-
#method_missing(name, *args) ⇒ Object
Invoke a vips operation with call, using self as the first input image argument.
-
#min(opts = {}) ⇒ Float, Hash<Symbol => Object>
Find image minimum.
-
#minpos ⇒ Real
Return the coordinates of the image minimum.
-
#morph(mask, morph, opts = {}) ⇒ Vips::Image
Morphology operation.
-
#mosaic(sec, direction, xref, yref, xsec, ysec, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Mosaic two images.
-
#mosaic1(sec, direction, xr1, yr1, xs1, ys1, xr2, yr2, xs2, ys2, opts = {}) ⇒ Vips::Image
First-order mosaic of two images.
-
#msb(opts = {}) ⇒ Vips::Image
Pick most-significant byte from an image.
-
#multiply(right, opts = {}) ⇒ Vips::Image
Multiply two images.
-
#percent(percent, opts = {}) ⇒ Integer
Find threshold for percent of pixels.
-
#phasecor(in2, opts = {}) ⇒ Vips::Image
Calculate phase correlation.
-
#pngsave(filename, opts = {}) ⇒ nil
Save image to png file.
-
#pngsave_buffer(opts = {}) ⇒ Vips::Blob
Save image to png buffer.
-
#polar ⇒ Image
Return an image with rectangular pixels converted to polar.
-
#ppmsave(filename, opts = {}) ⇒ nil
Save image to ppm file.
-
#premultiply(opts = {}) ⇒ Vips::Image
Premultiply image alpha.
-
#profile(opts = {}) ⇒ Array<] First non-zero pixel in column, First non-zero pixel in row
Find image profiles.
-
#project(opts = {}) ⇒ Array<] Sums of columns, Sums of rows
Find image projections.
-
#quadratic(coeff, opts = {}) ⇒ Vips::Image
Resample an image with a quadratic transform.
-
#rad2float(opts = {}) ⇒ Vips::Image
Unpack radiance coding to float rgb.
-
#radsave(filename, opts = {}) ⇒ nil
Save image to radiance file.
-
#radsave_buffer(opts = {}) ⇒ Vips::Blob
Save image to radiance buffer.
-
#rank(width, height, index, opts = {}) ⇒ Vips::Image
Rank filter.
-
#rawsave(filename, opts = {}) ⇒ nil
Save image to raw file.
-
#rawsave_fd(fd, opts = {}) ⇒ nil
Write raw image to file descriptor.
-
#real ⇒ Image
Return the real part of a complex image.
-
#recomb(m, opts = {}) ⇒ Vips::Image
Linear recombination with matrix.
-
#rect ⇒ Image
Return an image with polar pixels converted to rectangular.
-
#reduce(hshrink, vshrink, opts = {}) ⇒ Vips::Image
Reduce an image.
-
#reduceh(hshrink, opts = {}) ⇒ Vips::Image
Shrink an image horizontally.
-
#reducev(vshrink, opts = {}) ⇒ Vips::Image
Shrink an image vertically.
-
#relational(right, relational, opts = {}) ⇒ Vips::Image
Relational operation on two images.
-
#relational_const(c, relational, opts = {}) ⇒ Vips::Image
Relational operations against a constant.
-
#remainder(right, opts = {}) ⇒ Vips::Image
Remainder after integer division of two images.
-
#remainder_const(c, opts = {}) ⇒ Vips::Image
Remainder after integer division of an image and a constant.
-
#replicate(across, down, opts = {}) ⇒ Vips::Image
Replicate an image.
-
#resize(scale, opts = {}) ⇒ Vips::Image
Resize an image.
-
#rint ⇒ Image
Return the nearest integral value.
-
#rot(angle, opts = {}) ⇒ Vips::Image
Rotate an image.
-
#rot180 ⇒ Image
Rotate by 180 degrees clockwise.
-
#rot270 ⇒ Image
Rotate by 270 degrees clockwise.
-
#rot45(opts = {}) ⇒ Vips::Image
Rotate an image.
-
#rot90 ⇒ Image
Rotate by 90 degrees clockwise.
-
#round(round, opts = {}) ⇒ Vips::Image
Perform a round function on an image.
-
#scale(opts = {}) ⇒ Vips::Image
Scale an image to uchar.
-
#scRGB2BW(opts = {}) ⇒ Vips::Image
Convert scrgb to bw.
-
#scRGB2sRGB(opts = {}) ⇒ Vips::Image
Convert an scrgb image to srgb.
-
#scRGB2XYZ(opts = {}) ⇒ Vips::Image
Transform scrgb to xyz.
-
#sequential(opts = {}) ⇒ Vips::Image
Check sequential access.
-
#set(name, value) ⇒ Object
Set a
GValue
on an image. -
#set_value(name, value) ⇒ Object
Set a metadata item on an image.
-
#sharpen(opts = {}) ⇒ Vips::Image
Unsharp masking for print.
-
#shrink(hshrink, vshrink, opts = {}) ⇒ Vips::Image
Shrink an image.
-
#shrinkh(hshrink, opts = {}) ⇒ Vips::Image
Shrink an image horizontally.
-
#shrinkv(vshrink, opts = {}) ⇒ Vips::Image
Shrink an image vertically.
-
#sign(opts = {}) ⇒ Vips::Image
Unit vector of pixel.
-
#similarity(opts = {}) ⇒ Vips::Image
Similarity transform of an image.
-
#sin ⇒ Image
Return the sine of an image in degrees.
-
#size ⇒ Integer
Get the image size.
-
#spcor(ref, opts = {}) ⇒ Vips::Image
Spatial correlation.
-
#spectrum(opts = {}) ⇒ Vips::Image
Make displayable power spectrum.
-
#sRGB2HSV(opts = {}) ⇒ Vips::Image
Transform srgb to hsv.
-
#sRGB2scRGB(opts = {}) ⇒ Vips::Image
Convert an srgb image to scrgb.
-
#stats(opts = {}) ⇒ Vips::Image
Find image average.
-
#stdif(width, height, opts = {}) ⇒ Vips::Image
Statistical difference.
-
#subsample(xfac, yfac, opts = {}) ⇒ Vips::Image
Subsample an image.
-
#subtract(right, opts = {}) ⇒ Vips::Image
Subtract two images.
-
#tan ⇒ Image
Return the tangent of an image in degrees.
-
#tiffsave(filename, opts = {}) ⇒ nil
Save image to tiff file.
-
#tilecache(opts = {}) ⇒ Vips::Image
Cache an image as a set of tiles.
-
#to_a ⇒ Array
Convert to an Array.
-
#unpremultiply(opts = {}) ⇒ Vips::Image
Unpremultiply image alpha.
-
#vipssave(filename, opts = {}) ⇒ nil
Save image to vips file.
-
#webpsave(filename, opts = {}) ⇒ nil
Save image to webp file.
-
#webpsave_buffer(opts = {}) ⇒ Vips::Blob
Save image to webp buffer.
-
#wrap(opts = {}) ⇒ Vips::Image
Wrap image origin.
-
#write_to_buffer(format_string, opts = {}) ⇒ String
Write this image to a memory buffer.
-
#write_to_file(name, opts = {}) ⇒ Object
Write this image to a file.
-
#XYZ2Lab(opts = {}) ⇒ Vips::Image
Transform xyz to lab.
-
#XYZ2scRGB(opts = {}) ⇒ Vips::Image
Transform xyz to scrgb.
-
#XYZ2Yxy(opts = {}) ⇒ Vips::Image
Transform xyz to yxy.
-
#Yxy2XYZ(opts = {}) ⇒ Vips::Image
Transform yxy to xyz.
-
#zoom(xfac, yfac, opts = {}) ⇒ Vips::Image
Zoom an image.
-
#|(other) ⇒ Image
Integer bitwise OR with an image, constant or array.
-
#~ ⇒ Image
Equivalent to image ^ -1.
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
Instance Attribute Details
#bands ⇒ Integer (readonly)
Returns image bands.
|
# File 'lib/vips/image.rb', line 639
|
#filename ⇒ String (readonly)
Returns image filename.
|
# File 'lib/vips/image.rb', line 639
|
#height ⇒ Integer (readonly)
Returns image height, in pixels.
|
# File 'lib/vips/image.rb', line 639
|
#interpretation ⇒ Vips::Interpretation (readonly)
Returns image interpretation.
|
# File 'lib/vips/image.rb', line 639
|
#width ⇒ Integer (readonly)
Returns image width, in pixels.
|
# File 'lib/vips/image.rb', line 639
|
#xres ⇒ Float (readonly)
Returns horizontal image resolution, in pixels per mm.
|
# File 'lib/vips/image.rb', line 639
|
#yres ⇒ Float (readonly)
Returns vertical image resolution, in pixels per mm.
|
# File 'lib/vips/image.rb', line 639
|
Class Method Details
.analyzeload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load an analyze6 image.
|
# File 'lib/vips/methods.rb', line 868
|
.black(width, height, opts = {}) ⇒ Vips::Image
Make a black image.
|
# File 'lib/vips/methods.rb', line 536
|
.csvload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load csv from file.
|
# File 'lib/vips/methods.rb', line 824
|
.eye(width, height, opts = {}) ⇒ Vips::Image
Make an image showing the eye's spatial response.
|
# File 'lib/vips/methods.rb', line 592
|
.fitsload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load a fits image.
|
# File 'lib/vips/methods.rb', line 1092
|
.fractsurf(width, height, fractal_dimension, opts = {}) ⇒ Vips::Image
Make a fractal surface.
|
# File 'lib/vips/methods.rb', line 799
|
.gaussmat(sigma, min_ampl, opts = {}) ⇒ Vips::Image
Make a gaussian image.
|
# File 'lib/vips/methods.rb', line 574
|
.gaussnoise(width, height, opts = {}) ⇒ Vips::Image
Make a gaussnoise image.
|
# File 'lib/vips/methods.rb', line 544
|
.gifload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load gif with giflib.
|
# File 'lib/vips/methods.rb', line 943
|
.gifload_buffer(buffer, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load gif with giflib.
|
# File 'lib/vips/methods.rb', line 953
|
.grey(width, height, opts = {}) ⇒ Vips::Image
Make a grey ramp image.
|
# File 'lib/vips/methods.rb', line 601
|
.identity(opts = {}) ⇒ Vips::Image
Make a 1d image where pixel values are indexes.
|
# File 'lib/vips/methods.rb', line 791
|
.jpegload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load jpeg from file.
|
# File 'lib/vips/methods.rb', line 990
|
.jpegload_buffer(buffer, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load jpeg from buffer.
|
# File 'lib/vips/methods.rb', line 1002
|
.logmat(sigma, min_ampl, opts = {}) ⇒ Vips::Image
Make a laplacian of gaussian image.
|
# File 'lib/vips/methods.rb', line 583
|
.magickload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load file with imagemagick.
|
# File 'lib/vips/methods.rb', line 1068
|
.magickload_buffer(buffer, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load buffer with imagemagick.
|
# File 'lib/vips/methods.rb', line 1080
|
.mask_butterworth(width, height, order, frequency_cutoff, amplitude_cutoff, opts = {}) ⇒ Vips::Image
Make a butterworth filter.
|
# File 'lib/vips/methods.rb', line 666
|
.mask_butterworth_band(width, height, order, frequency_cutoff_x, frequency_cutoff_y, radius, amplitude_cutoff, opts = {}) ⇒ Vips::Image
Make a butterworth_band filter.
|
# File 'lib/vips/methods.rb', line 695
|
.mask_butterworth_ring(width, height, order, frequency_cutoff, amplitude_cutoff, ringwidth, opts = {}) ⇒ Vips::Image
Make a butterworth ring filter.
|
# File 'lib/vips/methods.rb', line 680
|
.mask_fractal(width, height, fractal_dimension, opts = {}) ⇒ Vips::Image
Make fractal filter.
|
# File 'lib/vips/methods.rb', line 753
|
.mask_gaussian(width, height, frequency_cutoff, amplitude_cutoff, opts = {}) ⇒ Vips::Image
Make a gaussian filter.
|
# File 'lib/vips/methods.rb', line 711
|
.mask_gaussian_band(width, height, frequency_cutoff_x, frequency_cutoff_y, radius, amplitude_cutoff, opts = {}) ⇒ Vips::Image
Make a gaussian filter.
|
# File 'lib/vips/methods.rb', line 738
|
.mask_gaussian_ring(width, height, frequency_cutoff, amplitude_cutoff, ringwidth, opts = {}) ⇒ Vips::Image
Make a gaussian ring filter.
|
# File 'lib/vips/methods.rb', line 724
|
.mask_ideal(width, height, frequency_cutoff, opts = {}) ⇒ Vips::Image
Make an ideal filter.
|
# File 'lib/vips/methods.rb', line 627
|
.mask_ideal_band(width, height, frequency_cutoff_x, frequency_cutoff_y, radius, opts = {}) ⇒ Vips::Image
Make an ideal band filter.
|
# File 'lib/vips/methods.rb', line 652
|
.mask_ideal_ring(width, height, frequency_cutoff, ringwidth, opts = {}) ⇒ Vips::Image
Make an ideal ring filter.
|
# File 'lib/vips/methods.rb', line 639
|
.matload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load mat from file.
|
# File 'lib/vips/methods.rb', line 981
|
.matrixload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load matrix from file.
|
# File 'lib/vips/methods.rb', line 837
|
.method_missing(name, *args) ⇒ Object
Invoke a vips operation with Vips.call.
399 400 401 |
# File 'lib/vips/image.rb', line 399 def self.method_missing(name, *args) Vips::call_base name.to_s, nil, "", args end |
.new_from_array(array, scale = 1, offset = 0) ⇒ Image
Create a new Image from a 1D or 2D array. A 1D array becomes an
image with height 1. Use scale
and offset
to set the scale and
offset fields in the header. These are useful for integer
convolutions.
For example:
image = Vips::new_from_array [1, 2, 3]
or
image = Vips::new_from_array [
[-1, -1, -1],
[-1, 16, -1],
[-1, -1, -1]], 8
for a simple sharpening mask.
519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 |
# File 'lib/vips/image.rb', line 519 def self.new_from_array(array, scale = 1, offset = 0) # we accept a 1D array and assume height == 1, or a 2D array # and check all lines are the same length if not array.is_a? Array raise Vips::Error, "Argument is not an array." end if array[0].is_a? Array height = array.length width = array[0].length if not array.all? {|x| x.is_a? Array} raise Vips::Error, "Not a 2D array." end if not array.all? {|x| x.length == width} raise Vips::Error, "Array not rectangular." end array = array.flatten else height = 1 width = array.length end if not array.all? {|x| x.is_a? Numeric} raise Vips::Error, "Not all array elements are Numeric." end image = Vips::Image.matrix_from_array width, height, array if image == nil raise Vips::Error end # be careful to set them as double image.set_double 'scale', scale.to_f image.set_double 'offset', offset.to_f return image end |
.new_from_buffer(data, option_string, opts = {}) ⇒ Image
Create a new Vips::Image for an image encoded in a format, such as JPEG, in a memory string. Load options may be passed encoded as strings, or appended as a hash. For example:
image = Vips::new_from_from_buffer memory_buffer, "shrink=2"
or alternatively:
image = Vips::new_from_from_buffer memory_buffer, "", :shrink => 2
The options available depend on the file format. Try something like:
$ vips jpegload_buffer
at the command-line to see the available options. Only JPEG, PNG and TIFF images can be read from memory buffers.
Loading is fast: only enough of the image is loaded to be able to fill out the header. Pixels will only be processed when they are needed.
484 485 486 487 488 489 490 491 |
# File 'lib/vips/image.rb', line 484 def self.new_from_buffer(data, option_string, opts = {}) loader = Vips::Foreign.find_load_buffer data if loader == nil raise Vips::Error end Vips::call_base loader, nil, option_string, [data, opts] end |
.new_from_file(name, opts = {}) ⇒ Image
Return a new Vips::Image for a file on disc. This method can load images in any format supported by vips. The filename can include load options, for example:
image = Vips::new_from_file "fred.jpg[shrink=2]"
You can also supply options as a hash, for example:
image = Vips::new_from_file "fred.jpg", :shrink => 2
The full set of options available depend upon the load operation that will be executed. Try something like:
$ vips jpegload
at the command-line to see a summary of the available options.
Loading is fast: only enough of the image is loaded to be able to fill out the header. Pixels will only be processed when they are needed.
438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 |
# File 'lib/vips/image.rb', line 438 def self.new_from_file(name, opts = {}) # very common, and Vips::filename_get_filename will segv if we pass # this if name == nil raise Error, "filename is nil" end filename = Vips::filename_get_filename name option_string = Vips:: name loader = Vips::Foreign.find_load filename if loader == nil raise Vips::Error end Vips::call_base loader, nil, option_string, [filename, opts] end |
.openexrload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load an openexr image.
|
# File 'lib/vips/methods.rb', line 1101
|
.openslideload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load file with openslide.
|
# File 'lib/vips/methods.rb', line 1056
|
.pdfload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load pdf with libpoppler.
|
# File 'lib/vips/methods.rb', line 895
|
.pdfload_buffer(buffer, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load pdf with libpoppler.
|
# File 'lib/vips/methods.rb', line 908
|
.perlin(width, height, opts = {}) ⇒ Vips::Image
Make a perlin noise image.
|
# File 'lib/vips/methods.rb', line 815
|
.pngload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load png from file.
|
# File 'lib/vips/methods.rb', line 963
|
.pngload_buffer(buffer, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load png from buffer.
|
# File 'lib/vips/methods.rb', line 972
|
.ppmload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load ppm from file.
|
# File 'lib/vips/methods.rb', line 877
|
.radload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load a radiance image from a file.
|
# File 'lib/vips/methods.rb', line 886
|
.rawload(filename, width, height, bands, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load raw data from a file.
|
# File 'lib/vips/methods.rb', line 846
|
.sines(width, height, opts = {}) ⇒ Vips::Image
Make a 2d sine wave.
|
# File 'lib/vips/methods.rb', line 617
|
.svgload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load svg with rsvg.
|
# File 'lib/vips/methods.rb', line 921
|
.svgload_buffer(buffer, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load svg with rsvg.
|
# File 'lib/vips/methods.rb', line 932
|
.system(cmd_format, opts = {}) ⇒ nil, Hash<Symbol => Object>
Run an external command.
|
# File 'lib/vips/methods.rb', line 4
|
.tiffload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load tiff from file.
|
# File 'lib/vips/methods.rb', line 1034
|
.tiffload_buffer(buffer, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load tiff from buffer.
|
# File 'lib/vips/methods.rb', line 1045
|
.vipsload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load vips from file.
|
# File 'lib/vips/methods.rb', line 859
|
.webpload(filename, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load webp from file.
|
# File 'lib/vips/methods.rb', line 1014
|
.webpload_buffer(buffer, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Load webp from buffer.
|
# File 'lib/vips/methods.rb', line 1024
|
.worley(width, height, opts = {}) ⇒ Vips::Image
Make a worley noise image.
|
# File 'lib/vips/methods.rb', line 807
|
.xyz(width, height, opts = {}) ⇒ Vips::Image
Make an image where pixel values are coordinates.
|
# File 'lib/vips/methods.rb', line 564
|
.zone(width, height, opts = {}) ⇒ Vips::Image
Make a zone plate.
|
# File 'lib/vips/methods.rb', line 609
|
Instance Method Details
#! ⇒ Image
Equivalent to image ^ -1
852 853 854 |
# File 'lib/vips/image.rb', line 852 def ! self ^ -1 end |
#!=(other) ⇒ Image
Compare inequality to nil, an image, constant or array.
931 932 933 934 935 936 937 938 939 |
# File 'lib/vips/image.rb', line 931 def !=(other) if other == nil true elsif other.is_a?(Vips::Image) relational(other, :noteq) else relational_const(other, :noteq) end end |
#%(other) ⇒ Image
Remainder after integer division with an image, constant or array.
790 791 792 793 |
# File 'lib/vips/image.rb', line 790 def %(other) other.is_a?(Vips::Image) ? remainder(other) : remainder_const(other) end |
#&(other) ⇒ Image
Integer bitwise AND with an image, constant or array.
835 836 837 838 |
# File 'lib/vips/image.rb', line 835 def &(other) other.is_a?(Vips::Image) ? boolean(other, :and) : boolean_const(other, :and) end |
#*(other) ⇒ Image
Multiply an image, constant or array.
773 774 775 |
# File 'lib/vips/image.rb', line 773 def *(other) other.is_a?(Vips::Image) ? multiply(other) : linear(other, 0) end |
#**(other) ⇒ Image
Raise to power of an image, constant or array.
799 800 801 802 |
# File 'lib/vips/image.rb', line 799 def **(other) other.is_a?(Vips::Image) ? math2(other, :pow) : math2_const(other, :pow) end |
#+(other) ⇒ Image
Add an image, constant or array.
756 757 758 |
# File 'lib/vips/image.rb', line 756 def +(other) other.is_a?(Vips::Image) ? add(other) : linear(1, other) end |
#-(other) ⇒ Image
Subtract an image, constant or array.
764 765 766 767 |
# File 'lib/vips/image.rb', line 764 def -(other) other.is_a?(Vips::Image) ? subtract(other) : linear(1, Image::smap(other) {|x| x * -1}) end |
#-@ ⇒ Image
Equivalent to image * -1
871 872 873 |
# File 'lib/vips/image.rb', line 871 def -@ self * -1 end |
#/(other) ⇒ Image
Divide an image, constant or array.
781 782 783 784 |
# File 'lib/vips/image.rb', line 781 def /(other) other.is_a?(Vips::Image) ? divide(other) : linear(Image::smap(other) {|x| 1.0 / x}, 0) end |
#<(other) ⇒ Image
Relational less than with an image, constant or array.
879 880 881 882 |
# File 'lib/vips/image.rb', line 879 def <(other) other.is_a?(Vips::Image) ? relational(other, :less) : relational_const(other, :less) end |
#<<(other) ⇒ Image
Integer left shift with an image, constant or array.
808 809 810 811 |
# File 'lib/vips/image.rb', line 808 def <<(other) other.is_a?(Vips::Image) ? boolean(other, :lshift) : boolean_const(other, :lshift) end |
#<=(other) ⇒ Image
Relational less than or equal to with an image, constant or array.
889 890 891 892 |
# File 'lib/vips/image.rb', line 889 def <=(other) other.is_a?(Vips::Image) ? relational(other, :lesseq) : relational_const(other, :lesseq) end |
#==(other) ⇒ Image
Compare equality to nil, an image, constant or array.
917 918 919 920 921 922 923 924 925 |
# File 'lib/vips/image.rb', line 917 def ==(other) if other == nil false elsif other.is_a?(Vips::Image) relational(other, :equal) else relational_const(other, :equal) end end |
#>(other) ⇒ Image
Relational more than with an image, constant or array.
898 899 900 901 |
# File 'lib/vips/image.rb', line 898 def >(other) other.is_a?(Vips::Image) ? relational(other, :more) : relational_const(other, :more) end |
#>=(other) ⇒ Image
Relational more than or equal to with an image, constant or array.
908 909 910 911 |
# File 'lib/vips/image.rb', line 908 def >=(other) other.is_a?(Vips::Image) ? relational(other, :moreeq) : relational_const(other, :moreeq) end |
#>>(other) ⇒ Image
Integer right shift with an image, constant or array.
817 818 819 820 |
# File 'lib/vips/image.rb', line 817 def >>(other) other.is_a?(Vips::Image) ? boolean(other, :rshift) : boolean_const(other, :rshift) end |
#[](index) ⇒ Image
Fetch bands using a number or a range
945 946 947 948 949 950 951 952 953 954 955 |
# File 'lib/vips/image.rb', line 945 def [](index) if index.is_a? Range n = index.end - index.begin n += 1 if not index.exclude_end? extract_band index.begin, :n => n elsif index.is_a? Numeric extract_band index else raise Vips::Error, "[] index is not range or numeric." end end |
#^(other) ⇒ Image
Integer bitwise EOR with an image, constant or array.
844 845 846 847 |
# File 'lib/vips/image.rb', line 844 def ^(other) other.is_a?(Vips::Image) ? boolean(other, :eor) : boolean_const(other, :eor) end |
#acos ⇒ Image
Return the inverse cosine of an image in degrees.
1160 1161 1162 |
# File 'lib/vips/image.rb', line 1160 def acos math :acos end |
#affine(matrix, opts = {}) ⇒ Vips::Image
Affine transform of an image.
|
# File 'lib/vips/methods.rb', line 1386
|
#asin ⇒ Image
Return the inverse sine of an image in degrees.
1153 1154 1155 |
# File 'lib/vips/image.rb', line 1153 def asin math :asin end |
#atan ⇒ Image
Return the inverse tangent of an image in degrees.
1167 1168 1169 |
# File 'lib/vips/image.rb', line 1167 def atan math :atan end |
#autorot(opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Autorotate image by exif tag.
|
# File 'lib/vips/methods.rb', line 434
|
#avg(opts = {}) ⇒ Float
Find image average.
|
# File 'lib/vips/methods.rb', line 159
|
#bandand ⇒ Image
AND the bands of an image together
996 997 998 |
# File 'lib/vips/image.rb', line 996 def bandand bandbool :and end |
#bandbool(boolean, opts = {}) ⇒ Vips::Image
Boolean operation across image bands.
|
# File 'lib/vips/methods.rb', line 402
|
#bandeor ⇒ Image
EOR the bands of an image together
1010 1011 1012 |
# File 'lib/vips/image.rb', line 1010 def bandeor bandbool :eor end |
#bandfold(opts = {}) ⇒ Vips::Image
Fold up x axis into bands.
|
# File 'lib/vips/methods.rb', line 446
|
#bandjoin(other) ⇒ Image
Join a set of images bandwise.
1025 1026 1027 1028 1029 1030 1031 |
# File 'lib/vips/image.rb', line 1025 def bandjoin(other) if not other.is_a? Array other = [other] end Vips::Image.bandjoin([self] + other) end |
#bandjoin_const(c, opts = {}) ⇒ Vips::Image
Append a constant band to an image.
|
# File 'lib/vips/methods.rb', line 384
|
#bandor ⇒ Image
OR the bands of an image together
1003 1004 1005 |
# File 'lib/vips/image.rb', line 1003 def bandor bandbool :or end |
#bandsplit ⇒ Array<Image>
Split an n-band image into n separate images.
1017 1018 1019 |
# File 'lib/vips/image.rb', line 1017 def bandsplit (0...bands).map {|i| extract_band(i)} end |
#bandunfold(opts = {}) ⇒ Vips::Image
Unfold image bands into x axis.
|
# File 'lib/vips/methods.rb', line 452
|
#boolean(right, boolean, opts = {}) ⇒ Vips::Image
Boolean operation on two images.
|
# File 'lib/vips/methods.rb', line 52
|
#boolean_const(c, boolean, opts = {}) ⇒ Vips::Image
Boolean operations against a constant.
|
# File 'lib/vips/methods.rb', line 133
|
#ceil ⇒ Image
Return the smallest integral value not less than the argument.
982 983 984 |
# File 'lib/vips/image.rb', line 982 def ceil round :ceil end |
#colourspace(space, opts = {}) ⇒ Vips::Image
Convert to a new colourspace.
|
# File 'lib/vips/methods.rb', line 1418
|
#compass(mask, opts = {}) ⇒ Vips::Image
Convolve with rotating mask.
|
# File 'lib/vips/methods.rb', line 1693
|
#complex(cmplx, opts = {}) ⇒ Vips::Image
Perform a complex operation on an image.
|
# File 'lib/vips/methods.rb', line 147
|
#complex2(right, cmplx, opts = {}) ⇒ Vips::Image
Complex binary operations on two images.
|
# File 'lib/vips/methods.rb', line 66
|
#complexform(right, opts = {}) ⇒ Vips::Image
Form a complex image from two real images.
|
# File 'lib/vips/methods.rb', line 73
|
#complexget(get, opts = {}) ⇒ Vips::Image
Get a component from a complex image.
|
# File 'lib/vips/methods.rb', line 153
|
#conj ⇒ Image
Return the complex conjugate of an image.
The image can be complex, in which case the return image will also be complex, or must have an even number of bands, in which case pairs of bands are treated as (x, y) coordinates.
1125 1126 1127 |
# File 'lib/vips/image.rb', line 1125 def conj Image::run_cmplx(self) {|x| x.complex :conj} end |
#conva(mask, opts = {}) ⇒ Vips::Image
Approximate integer convolution.
|
# File 'lib/vips/methods.rb', line 1673
|
#convasep(mask, opts = {}) ⇒ Vips::Image
Approximate separable integer convolution.
|
# File 'lib/vips/methods.rb', line 1714
|
#convf(mask, opts = {}) ⇒ Vips::Image
Float convolution operation.
|
# File 'lib/vips/methods.rb', line 1681
|
#convi(mask, opts = {}) ⇒ Vips::Image
Int convolution operation.
|
# File 'lib/vips/methods.rb', line 1687
|
#convsep(mask, opts = {}) ⇒ Vips::Image
Seperable convolution operation.
|
# File 'lib/vips/methods.rb', line 1705
|
#cos ⇒ Image
Return the cosine of an image in degrees.
1139 1140 1141 |
# File 'lib/vips/image.rb', line 1139 def cos math :cos end |
#countlines(direction, opts = {}) ⇒ Float
Count lines in an image.
|
# File 'lib/vips/methods.rb', line 1795
|
#csvsave(filename, opts = {}) ⇒ nil
Save image to csv file.
|
# File 'lib/vips/methods.rb', line 1110
|
#deviate(opts = {}) ⇒ Float
Find image standard deviation.
|
# File 'lib/vips/methods.rb', line 186
|
#dilate(mask) ⇒ Image
Dilate with a structuring element.
The structuring element must be an array with 0 for black, 255 for white and 128 for don't care.
1233 1234 1235 |
# File 'lib/vips/image.rb', line 1233 def dilate(mask) morph mask, :dilate end |
#draw_circle(ink, cx, cy, radius, opts = {}) ⇒ Vips::Image
Draw a circle on an image.
|
# File 'lib/vips/methods.rb', line 1837
|
#draw_flood(ink, x, y, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Flood-fill an area.
|
# File 'lib/vips/methods.rb', line 1847
|
#draw_image(sub, x, y, opts = {}) ⇒ Vips::Image
Paint an image into another image.
|
# File 'lib/vips/methods.rb', line 1861
|
#draw_line(ink, x1, y1, x2, y2, opts = {}) ⇒ Vips::Image
Draw a line on an image.
|
# File 'lib/vips/methods.rb', line 1827
|
#draw_mask(ink, mask, x, y, opts = {}) ⇒ Vips::Image
Draw a mask on an image.
|
# File 'lib/vips/methods.rb', line 1818
|
#draw_rect(ink, left, top, width, height, opts = {}) ⇒ Vips::Image
Paint a rectangle on an image.
|
# File 'lib/vips/methods.rb', line 1807
|
#draw_smudge(left, top, width, height, opts = {}) ⇒ Vips::Image
Blur a rectangle on an image.
|
# File 'lib/vips/methods.rb', line 1870
|
#dzsave(filename, opts = {}) ⇒ nil
Save image to deep zoom format.
|
# File 'lib/vips/methods.rb', line 1183
|
#embed(x, y, width, height, opts = {}) ⇒ Vips::Image
Embed an image in a larger image.
|
# File 'lib/vips/methods.rb', line 308
|
#erode(mask) ⇒ Image
Erode with a structuring element.
The structuring element must be an array with 0 for black, 255 for white and 128 for don't care.
1221 1222 1223 |
# File 'lib/vips/image.rb', line 1221 def erode(mask) morph mask, :erode end |
#exp ⇒ Image
Return e ** pixel.
1188 1189 1190 |
# File 'lib/vips/image.rb', line 1188 def exp math :exp end |
#exp10 ⇒ Image
Return 10 ** pixel.
1195 1196 1197 |
# File 'lib/vips/image.rb', line 1195 def exp10 math :exp10 end |
#extract_area(left, top, width, height, opts = {}) ⇒ Vips::Image
Extract an area from an image.
|
# File 'lib/vips/methods.rb', line 359
|
#extract_band(band, opts = {}) ⇒ Vips::Image
Extract band from an image.
|
# File 'lib/vips/methods.rb', line 377
|
#fitssave(filename, opts = {}) ⇒ nil
Save image to fits file.
|
# File 'lib/vips/methods.rb', line 1323
|
#flatten(opts = {}) ⇒ Vips::Image
Flatten alpha out of an image.
|
# File 'lib/vips/methods.rb', line 458
|
#fliphor ⇒ Image
Flip horizontally.
1202 1203 1204 |
# File 'lib/vips/image.rb', line 1202 def fliphor flip :horizontal end |
#flipver ⇒ Image
Flip vertically.
1209 1210 1211 |
# File 'lib/vips/image.rb', line 1209 def flipver flip :vertical end |
#float2rad(opts = {}) ⇒ Vips::Image
Transform float rgb to radiance coding.
|
# File 'lib/vips/methods.rb', line 1512
|
#floor ⇒ Image
Return the largest integral value not greater than the argument.
975 976 977 |
# File 'lib/vips/image.rb', line 975 def floor round :floor end |
#freqmult(mask, opts = {}) ⇒ Vips::Image
Frequency-domain filtering.
|
# File 'lib/vips/methods.rb', line 1763
|
#get(name) ⇒ Integer, GValue
Fetch a GValue
from an image. The return status is 0 for success, -1
for failure.
|
# File 'lib/vips/image.rb', line 666
|
#get_typeof(name) ⇒ Integer
Fetch a GType
from an image. GType
will be 0 for no such field.
|
# File 'lib/vips/image.rb', line 658
|
#get_value(name) ⇒ Object
Get a metadata item from an image. Ruby types are constructed
automatically from the GValue
, if possible.
For example, you can read the ICC profile from an image like this:
profile = image.get_value "icc-profile-data"
and profile will be an array containing the profile.
696 697 698 699 700 701 702 703 704 |
# File 'lib/vips/image.rb', line 696 def get_value(name) ret, gval = get name if ret[0] != 0 raise Vips::Error, "Field #{name} not found." end value = gval.value Argument::unwrap(value) end |
#getpoint(x, y, opts = {}) ⇒ Array<Double>
Read a point from an image.
1060 1061 1062 1063 1064 1065 1066 1067 |
# File 'lib/vips/image.rb', line 1060 def getpoint(x, y) # vips has an operation that does this, but we can't call it via # gobject-introspection 3.0.7 since it's missing array double # get # # remove this def when gobject-introspection updates crop(x, y, 1, 1).bandsplit.map {|i| i.avg} end |
#globalbalance(opts = {}) ⇒ Vips::Image
Global balance an image mosaic.
|
# File 'lib/vips/methods.rb', line 1949
|
#grid(tile_height, across, down, opts = {}) ⇒ Vips::Image
Grid an image.
|
# File 'lib/vips/methods.rb', line 477
|
#hist_cum(opts = {}) ⇒ Vips::Image
Form cumulative histogram.
|
# File 'lib/vips/methods.rb', line 1620
|
#hist_entropy(opts = {}) ⇒ Float
Estimate image entropy.
|
# File 'lib/vips/methods.rb', line 1659
|
#hist_equal(opts = {}) ⇒ Vips::Image
Histogram equalisation.
|
# File 'lib/vips/methods.rb', line 1636
|
#hist_find_indexed(index, opts = {}) ⇒ Vips::Image
Find indexed image histogram.
|
# File 'lib/vips/methods.rb', line 208
|
#hist_find_ndim(opts = {}) ⇒ Vips::Image
Find n-dimensional image histogram.
|
# File 'lib/vips/methods.rb', line 202
|
#hist_ismonotonic(opts = {}) ⇒ Boolean
Test for monotonicity.
|
# File 'lib/vips/methods.rb', line 1654
|
#hist_local(width, height, opts = {}) ⇒ Vips::Image
Local histogram equalisation.
|
# File 'lib/vips/methods.rb', line 1647
|
#hist_match(ref, opts = {}) ⇒ Vips::Image
Match two histograms.
|
# File 'lib/vips/methods.rb', line 1625
|
#hough_circle(opts = {}) ⇒ Vips::Image
Find hough circle transform.
|
# File 'lib/vips/methods.rb', line 221
|
#hough_line(opts = {}) ⇒ Vips::Image
Find hough line transform.
|
# File 'lib/vips/methods.rb', line 214
|
#icc_export(opts = {}) ⇒ Vips::Image
Output to device with icc profile.
|
# File 'lib/vips/methods.rb', line 1541
|
#icc_import(opts = {}) ⇒ Vips::Image
Import from device with icc profile.
|
# File 'lib/vips/methods.rb', line 1532
|
#icc_transform(output_profile, opts = {}) ⇒ Vips::Image
Transform between devices with icc profiles.
|
# File 'lib/vips/methods.rb', line 1550
|
#ifthenelse(th, el, opts = {}) ⇒ Image
Select pixels from th
if self
is non-zero and from el
if
self
is zero. Use the :blend
option to fade smoothly
between th
and el
.
1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 |
# File 'lib/vips/image.rb', line 1267 def ifthenelse(th, el, opts = {}) match_image = [th, el, self].find {|x| x.is_a? Vips::Image} if not th.is_a? Vips::Image th = Argument::imageize match_image, th end if not el.is_a? Vips::Image el = Argument::imageize match_image, el end Vips::call_base "ifthenelse", self, "", [th, el, opts] end |
#imag ⇒ Image
Return the imaginary part of a complex image.
1087 1088 1089 |
# File 'lib/vips/image.rb', line 1087 def imag complexget :imag end |
#insert(sub, x, y, opts = {}) ⇒ Vips::Image
Insert image @sub into @main at @x, @y.
|
# File 'lib/vips/methods.rb', line 325
|
#invertlut(opts = {}) ⇒ Vips::Image
Build an inverted look-up table.
|
# File 'lib/vips/methods.rb', line 770
|
#join(in2, direction, opts = {}) ⇒ Vips::Image
Join a pair of images.
|
# File 'lib/vips/methods.rb', line 335
|
#jpegsave(filename, opts = {}) ⇒ nil
Save image to jpeg file.
|
# File 'lib/vips/methods.rb', line 1224
|
#jpegsave_buffer(opts = {}) ⇒ Vips::Blob
Save image to jpeg buffer.
|
# File 'lib/vips/methods.rb', line 1241
|
#jpegsave_mime(opts = {}) ⇒ nil
Save image to jpeg mime.
|
# File 'lib/vips/methods.rb', line 1257
|
#Lab2LabQ(opts = {}) ⇒ Vips::Image
Transform float lab to labq coding.
|
# File 'lib/vips/methods.rb', line 1482
|
#Lab2LabS(opts = {}) ⇒ Vips::Image
Transform float lab to signed short.
|
# File 'lib/vips/methods.rb', line 1502
|
#labelregions(opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Label regions in an image.
|
# File 'lib/vips/methods.rb', line 1801
|
#LabQ2Lab(opts = {}) ⇒ Vips::Image
Unpack a labq image to float lab.
|
# File 'lib/vips/methods.rb', line 1477
|
#LabQ2LabS(opts = {}) ⇒ Vips::Image
Unpack a labq image to short lab.
|
# File 'lib/vips/methods.rb', line 1487
|
#LabQ2sRGB(opts = {}) ⇒ Vips::Image
Convert a labq image to srgb.
|
# File 'lib/vips/methods.rb', line 1517
|
#LabS2Lab(opts = {}) ⇒ Vips::Image
Transform signed short lab to float.
|
# File 'lib/vips/methods.rb', line 1497
|
#LabS2LabQ(opts = {}) ⇒ Vips::Image
Transform short lab to labq coding.
|
# File 'lib/vips/methods.rb', line 1492
|
#linear(a, b, opts = {}) ⇒ Vips::Image
Calculate (a * in + b).
|
# File 'lib/vips/methods.rb', line 90
|
#linecache(opts = {}) ⇒ Vips::Image
Cache an image as a set of lines.
|
# File 'lib/vips/methods.rb', line 283
|
#log ⇒ Image
Return the natural log of an image.
1174 1175 1176 |
# File 'lib/vips/image.rb', line 1174 def log math :log end |
#log10 ⇒ Image
Return the log base 10 of an image.
1181 1182 1183 |
# File 'lib/vips/image.rb', line 1181 def log10 math :log10 end |
#mapim(index, opts = {}) ⇒ Vips::Image
Resample with an mapim image.
|
# File 'lib/vips/methods.rb', line 1331
|
#maplut(lut, opts = {}) ⇒ Vips::Image
Map an image though a lut.
|
# File 'lib/vips/methods.rb', line 1596
|
#match(sec, xr1, yr1, xs1, ys1, xr2, yr2, xs2, ys2, opts = {}) ⇒ Vips::Image
First-order match of two images.
|
# File 'lib/vips/methods.rb', line 1931
|
#math(math, opts = {}) ⇒ Vips::Image
Apply a math operation to an image.
|
# File 'lib/vips/methods.rb', line 98
|
#math2(right, math2, opts = {}) ⇒ Vips::Image
Binary math operations.
|
# File 'lib/vips/methods.rb', line 59
|
#math2_const(c, math2, opts = {}) ⇒ Vips::Image
Pow( @in, @c ).
|
# File 'lib/vips/methods.rb', line 140
|
#matrixprint(opts = {}) ⇒ nil
Print matrix.
|
# File 'lib/vips/methods.rb', line 1127
|
#matrixsave(filename, opts = {}) ⇒ nil
Save image to matrix file.
|
# File 'lib/vips/methods.rb', line 1119
|
#max(opts = {}) ⇒ Float, Hash<Symbol => Object>
Find image maximum.
|
# File 'lib/vips/methods.rb', line 175
|
#maxpos ⇒ Real
Return the coordinates of the image maximum.
1037 1038 1039 1040 1041 1042 |
# File 'lib/vips/image.rb', line 1037 def maxpos v, opts = max :x => true, :y => true x = opts['x'] y = opts['y'] return v, x, y end |
#measure(h, v, opts = {}) ⇒ Vips::Image
Measure a set of patches on a colour chart.
|
# File 'lib/vips/methods.rb', line 239
|
#median(size = 3) ⇒ Image
a median filter
1073 1074 1075 |
# File 'lib/vips/image.rb', line 1073 def median(size = 3) rank(size, size, (size * size) / 2) end |
#merge(sec, direction, dx, dy, opts = {}) ⇒ Vips::Image
Merge two images.
|
# File 'lib/vips/methods.rb', line 1879
|
#min(opts = {}) ⇒ Float, Hash<Symbol => Object>
Find image minimum.
|
# File 'lib/vips/methods.rb', line 164
|
#minpos ⇒ Real
Return the coordinates of the image minimum.
1048 1049 1050 1051 1052 1053 |
# File 'lib/vips/image.rb', line 1048 def minpos v, opts = min :x => true, :y => true x = opts['x'] y = opts['y'] return v, x, y end |
#morph(mask, morph, opts = {}) ⇒ Vips::Image
Morphology operation.
|
# File 'lib/vips/methods.rb', line 1780
|
#mosaic(sec, direction, xref, yref, xsec, ysec, opts = {}) ⇒ Vips::Image, Hash<Symbol => Object>
Mosaic two images.
|
# File 'lib/vips/methods.rb', line 1889
|
#mosaic1(sec, direction, xr1, yr1, xs1, ys1, xr2, yr2, xs2, ys2, opts = {}) ⇒ Vips::Image
First-order mosaic of two images.
|
# File 'lib/vips/methods.rb', line 1910
|
#msb(opts = {}) ⇒ Vips::Image
Pick most-significant byte from an image.
|
# File 'lib/vips/methods.rb', line 514
|
#multiply(right, opts = {}) ⇒ Vips::Image
Multiply two images.
|
# File 'lib/vips/methods.rb', line 27
|
#percent(percent, opts = {}) ⇒ Integer
Find threshold for percent of pixels.
|
# File 'lib/vips/methods.rb', line 1603
|
#phasecor(in2, opts = {}) ⇒ Vips::Image
Calculate phase correlation.
|
# File 'lib/vips/methods.rb', line 1774
|
#pngsave(filename, opts = {}) ⇒ nil
Save image to png file.
|
# File 'lib/vips/methods.rb', line 1201
|
#pngsave_buffer(opts = {}) ⇒ Vips::Blob
Save image to png buffer.
|
# File 'lib/vips/methods.rb', line 1213
|
#polar ⇒ Image
Return an image with rectangular pixels converted to polar.
The image can be complex, in which case the return image will also be complex, or must have an even number of bands, in which case pairs of bands are treated as (x, y) coordinates.
1100 1101 1102 |
# File 'lib/vips/image.rb', line 1100 def polar Image::run_cmplx(self) {|x| x.complex :polar} end |
#ppmsave(filename, opts = {}) ⇒ nil
Save image to ppm file.
|
# File 'lib/vips/methods.rb', line 1158
|
#premultiply(opts = {}) ⇒ Vips::Image
Premultiply image alpha.
|
# File 'lib/vips/methods.rb', line 465
|
#profile(opts = {}) ⇒ Array<] First non-zero pixel in column, First non-zero pixel in row
Find image profiles.
|
# File 'lib/vips/methods.rb', line 234
|
#project(opts = {}) ⇒ Array<] Sums of columns, Sums of rows
Find image projections.
|
# File 'lib/vips/methods.rb', line 229
|
#quadratic(coeff, opts = {}) ⇒ Vips::Image
Resample an image with a quadratic transform.
|
# File 'lib/vips/methods.rb', line 1379
|
#rad2float(opts = {}) ⇒ Vips::Image
Unpack radiance coding to float rgb.
|
# File 'lib/vips/methods.rb', line 1507
|
#radsave(filename, opts = {}) ⇒ nil
Save image to radiance file.
|
# File 'lib/vips/methods.rb', line 1168
|
#radsave_buffer(opts = {}) ⇒ Vips::Blob
Save image to radiance buffer.
|
# File 'lib/vips/methods.rb', line 1176
|
#rank(width, height, index, opts = {}) ⇒ Vips::Image
Rank filter.
|
# File 'lib/vips/methods.rb', line 1787
|
#rawsave(filename, opts = {}) ⇒ nil
Save image to raw file.
|
# File 'lib/vips/methods.rb', line 1134
|
#rawsave_fd(fd, opts = {}) ⇒ nil
Write raw image to file descriptor.
|
# File 'lib/vips/methods.rb', line 1142
|
#real ⇒ Image
Return the real part of a complex image.
1080 1081 1082 |
# File 'lib/vips/image.rb', line 1080 def real complexget :real end |
#recomb(m, opts = {}) ⇒ Vips::Image
Linear recombination with matrix.
|
# File 'lib/vips/methods.rb', line 440
|
#rect ⇒ Image
Return an image with polar pixels converted to rectangular.
The image can be complex, in which case the return image will also be complex, or must have an even number of bands, in which case pairs of bands are treated as (x, y) coordinates.
1113 1114 1115 |
# File 'lib/vips/image.rb', line 1113 def rect Image::run_cmplx(self) {|x| x.complex :rect} end |
#reduce(hshrink, vshrink, opts = {}) ⇒ Vips::Image
Reduce an image.
|
# File 'lib/vips/methods.rb', line 1371
|
#reduceh(hshrink, opts = {}) ⇒ Vips::Image
Shrink an image horizontally.
|
# File 'lib/vips/methods.rb', line 1357
|
#reducev(vshrink, opts = {}) ⇒ Vips::Image
Shrink an image vertically.
|
# File 'lib/vips/methods.rb', line 1364
|
#relational(right, relational, opts = {}) ⇒ Vips::Image
Relational operation on two images.
|
# File 'lib/vips/methods.rb', line 39
|
#relational_const(c, relational, opts = {}) ⇒ Vips::Image
Relational operations against a constant.
|
# File 'lib/vips/methods.rb', line 120
|
#remainder(right, opts = {}) ⇒ Vips::Image
Remainder after integer division of two images.
|
# File 'lib/vips/methods.rb', line 46
|
#remainder_const(c, opts = {}) ⇒ Vips::Image
Remainder after integer division of an image and a constant.
|
# File 'lib/vips/methods.rb', line 127
|
#replicate(across, down, opts = {}) ⇒ Vips::Image
Replicate an image.
|
# File 'lib/vips/methods.rb', line 408
|
#rint ⇒ Image
Return the nearest integral value.
989 990 991 |
# File 'lib/vips/image.rb', line 989 def rint round :rint end |
#rot180 ⇒ Image
Rotate by 180 degrees clockwise.
1247 1248 1249 |
# File 'lib/vips/image.rb', line 1247 def rot180 rot :d180 end |
#rot270 ⇒ Image
Rotate by 270 degrees clockwise.
1254 1255 1256 |
# File 'lib/vips/image.rb', line 1254 def rot270 rot :d270 end |
#rot90 ⇒ Image
Rotate by 90 degrees clockwise.
1240 1241 1242 |
# File 'lib/vips/image.rb', line 1240 def rot90 rot :d90 end |
#round(round, opts = {}) ⇒ Vips::Image
Perform a round function on an image.
|
# File 'lib/vips/methods.rb', line 114
|
#scRGB2sRGB(opts = {}) ⇒ Vips::Image
Convert an scrgb image to srgb.
|
# File 'lib/vips/methods.rb', line 1590
|
#sequential(opts = {}) ⇒ Vips::Image
Check sequential access.
|
# File 'lib/vips/methods.rb', line 292
|
#set(name, value) ⇒ Object
Set a GValue
on an image
|
# File 'lib/vips/image.rb', line 675
|
#set_value(name, value) ⇒ Object
Set a metadata item on an image. Ruby types are automatically
transformed into the matching GValue
, if possible.
For example, you can use this to set an image's ICC profile:
x = y.set_value "icc-profile-data", profile
where profile
is an ICC profile held as a binary string object.
720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 |
# File 'lib/vips/image.rb', line 720 def set_value(name, value) gtype = get_typeof name if gtype != 0 # array-ize value = Argument::arrayize gtype, value # blob-ize if gtype.type_is_a? GLib::Type["VipsBlob"] if not value.is_a? Vips::Blob value = Vips::Blob.copy value end end # image-ize if gtype.type_is_a? GLib::Type["VipsImage"] if not value.is_a? Vips::Image value = imageize match_image, value end end end set name, value end |
#sharpen(opts = {}) ⇒ Vips::Image
Unsharp masking for print.
|
# File 'lib/vips/methods.rb', line 1733
|
#shrink(hshrink, vshrink, opts = {}) ⇒ Vips::Image
Shrink an image.
|
# File 'lib/vips/methods.rb', line 1338
|
#shrinkh(hshrink, opts = {}) ⇒ Vips::Image
Shrink an image horizontally.
|
# File 'lib/vips/methods.rb', line 1345
|
#shrinkv(vshrink, opts = {}) ⇒ Vips::Image
Shrink an image vertically.
|
# File 'lib/vips/methods.rb', line 1351
|
#similarity(opts = {}) ⇒ Vips::Image
Similarity transform of an image.
|
# File 'lib/vips/methods.rb', line 1398
|
#sin ⇒ Image
Return the sine of an image in degrees.
1132 1133 1134 |
# File 'lib/vips/image.rb', line 1132 def sin math :sin end |
#size ⇒ Integer
Get the image size.
748 749 750 |
# File 'lib/vips/image.rb', line 748 def size [width, height] end |
#spectrum(opts = {}) ⇒ Vips::Image
Make displayable power spectrum.
|
# File 'lib/vips/methods.rb', line 1769
|
#sRGB2scRGB(opts = {}) ⇒ Vips::Image
Convert an srgb image to scrgb.
|
# File 'lib/vips/methods.rb', line 1579
|
#stdif(width, height, opts = {}) ⇒ Vips::Image
Statistical difference.
|
# File 'lib/vips/methods.rb', line 1609
|
#subsample(xfac, yfac, opts = {}) ⇒ Vips::Image
Subsample an image.
|
# File 'lib/vips/methods.rb', line 506
|
#subtract(right, opts = {}) ⇒ Vips::Image
Subtract two images.
|
# File 'lib/vips/methods.rb', line 21
|
#tan ⇒ Image
Return the tangent of an image in degrees.
1146 1147 1148 |
# File 'lib/vips/image.rb', line 1146 def tan math :tan end |
#tiffsave(filename, opts = {}) ⇒ nil
Save image to tiff file.
|
# File 'lib/vips/methods.rb', line 1300
|
#tilecache(opts = {}) ⇒ Vips::Image
Cache an image as a set of tiles.
|
# File 'lib/vips/methods.rb', line 272
|
#to_a ⇒ Array
Convert to an Array. This will be very slow for large images.
960 961 962 963 964 965 966 967 968 969 970 |
# File 'lib/vips/image.rb', line 960 def to_a ar = Array.new(height) for y in 0...height ar[y] = Array.new(width) for x in 0...width ar[y][x] = getpoint(x, y) end end return ar end |
#unpremultiply(opts = {}) ⇒ Vips::Image
Unpremultiply image alpha.
|
# File 'lib/vips/methods.rb', line 471
|
#vipssave(filename, opts = {}) ⇒ nil
Save image to vips file.
|
# File 'lib/vips/methods.rb', line 1150
|
#webpsave(filename, opts = {}) ⇒ nil
Save image to webp file.
|
# File 'lib/vips/methods.rb', line 1273
|
#webpsave_buffer(opts = {}) ⇒ Vips::Blob
Save image to webp buffer.
|
# File 'lib/vips/methods.rb', line 1287
|
#write_to_buffer(format_string, opts = {}) ⇒ String
Write this image to a memory buffer. Save options may be encoded in the format_string or given as a hash. For example:
buffer = image.write_to_buffer ".jpg[Q=90]"
or equivalently:
image.write_to_buffer ".jpg", :Q => 90
The full set of save options depend on the selected saver. Try something like:
$ vips jpegsave
to see all the available options.
624 625 626 627 628 629 630 631 632 633 634 635 636 637 |
# File 'lib/vips/image.rb', line 624 def write_to_buffer(format_string, opts = {}) filename = Vips::filename_get_filename format_string option_string = Vips:: format_string saver = Vips::Foreign.find_save_buffer filename if saver == nil raise Vips::Error, "No known saver for '#{filename}'." end buffer = Vips::call_base saver, self, option_string, [opts] write_gc return buffer end |
#write_to_file(name, opts = {}) ⇒ Object
Write this image to a file. Save options may be encoded in the filename or given as a hash. For example:
image.write_to_file "fred.jpg[Q=90]"
or equivalently:
image.write_to_file "fred.jpg", :Q => 90
The full set of save options depend on the selected saver. Try something like:
$ vips jpegsave
to see all the available options.
586 587 588 589 590 591 592 593 594 595 596 597 |
# File 'lib/vips/image.rb', line 586 def write_to_file(name, opts = {}) filename = Vips::filename_get_filename name option_string = Vips:: name saver = Vips::Foreign.find_save filename if saver == nil raise Vips::Error, "No known saver for '#{filename}'." end Vips::call_base saver, self, option_string, [filename, opts] write_gc end |
#|(other) ⇒ Image
Integer bitwise OR with an image, constant or array.
826 827 828 829 |
# File 'lib/vips/image.rb', line 826 def |(other) other.is_a?(Vips::Image) ? boolean(other, :or) : boolean_const(other, :or) end |
#~ ⇒ Image
Equivalent to image ^ -1
859 860 861 |
# File 'lib/vips/image.rb', line 859 def ~ self ^ -1 end |