Vix.Vips.Image (vix v0.1.0) View Source

Vips Image

Link to this section Summary

Types

t()

Represents an instance of libvips image

Functions

Opens path for reading, returns an instance of Vix.Vips.Image.t/0

Make a VipsImage which, when written to, will create a temporary file on disc.

Write vips_image to a file.

Link to this section Types

Specs

t()

Represents an instance of libvips image

Link to this section Functions

Specs

new_from_file(String.t()) :: {:ok, Vix.Vips.Image.t()} | {:error, term()}

Opens path for reading, returns an instance of Vix.Vips.Image.t/0

It can load files in many image formats, including VIPS, TIFF, PNG, JPEG, FITS, Matlab, OpenEXR, CSV, WebP, Radiance, RAW, PPM and others.

Load options may be appended to filename as "[name=value,...]". For example:

Image.new_from_file("fred.jpg[shrink=2]")

Will open "fred.jpg", downsampling by a factor of two.

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 for the JPEG loader.

Loading is fast: only enough of the image is loaded to be able to fill out the header. Pixels will only be decompressed when they are needed.

Link to this function

new_matrix_from_array(width, height, list, optional \\ [])

View Source

Specs

new_matrix_from_array(integer(), integer(), [list()], keyword()) ::
  :ok | {:error, term()}

Make a VipsImage from list.

This convenience function makes an image which is a matrix: a one-band VIPS_FORMAT_DOUBLE image held in memory. Useful for vips operations such as conv.

mask = Image.new_matrix_from_array(3, 3, [[0, 1, 0], [1, 1, 1], [0, 1, 0]])

Optional

  • scale - Default: 1
  • offset - Default: 0

Specs

new_temp_file(String.t()) :: :ok | {:error, term()}

Make a VipsImage which, when written to, will create a temporary file on disc.

The file will be automatically deleted when the image is destroyed. format is something like "%s.v" for a vips file.

The file is created in the temporary directory. This is set with the environment variable TMPDIR. If this is not set, then on Unix systems, vips will default to /tmp. On Windows, vips uses GetTempPath() to find the temporary directory.

vips_image = Image.new_temp_file("%s.v")
Link to this function

write_to_file(vips_image, path)

View Source

Specs

write_to_file(Vix.Vips.Image.t(), String.t()) :: :ok | {:error, term()}

Write vips_image to a file.

Save options may be encoded in the filename or given as a hash. For example:

Image.write_to_file(vips_image, "fred.jpg[Q=90]")

A saver is selected based on path. The full set of save options depend on the selected saver. Try something like:

$ vips jpegsave

at the command-line to see all the available options for JPEG save.