Namespace
Vips – 8.0
The libvips image processing library
Dependencies
GObject—2.0 | The base type system library |
Browse documentation |
Additional documentation
- Using libvips at the command-line
- Using libvips from C
- Using libvips from C++
- Using threads
- All libvips functions and operators
- How to use libvips to make image pyramids
- Using vipsthumbnail
- A high-level technical overview of libvips's evaluation system
- How libvips opens files
- The libvips file format
- How to add operations to libvips
- Writing bindings for libvips
- A few example Python programs using libvips
- References to cite for libvips
- Classes Hierarchy
Classes
Foreign | |
ForeignLoad | |
ForeignSave | |
Image | An image. These can represent an image on disc, a memory buffer, an image in the process of being written to disc or a partially evaluated image in memory. |
Interpolate | |
Object | |
Operation | |
Region | A small part of a |
Structs
Area | |
Argument | |
ArgumentClass | |
ArgumentInstance | |
ArrayDouble | |
ArrayImage | |
ArrayInt | |
Blob | |
Buf | |
Progress | A structure available to eval callbacks giving information on evaluation
progress. See |
Rect | A |
RefString | |
Source | |
Target | |
Thing |
Aliases
ArgumentTable | |
Pel | A picture element. Cast this to whatever the associated VipsBandFormat says to get the value. |
Enumerations
Access | The type of access an operation has to supply. See |
Align | See |
Angle | See |
Angle45 | See |
BandFormat | The format used for each band element. |
BlendMode | The various Porter-Duff and PDF blend modes. See vips_composite(), for example. |
Coding | How pixels are coded. |
Combine | How to combine values. See vips_compass(), for example. |
CombineMode | See |
CompassDirection | A direction on a compass. Used for vips_gravity(), for example. |
DemandStyle | See vips_image_pipelinev(). Operations can hint to the VIPS image IO system about the kind of demand geometry they prefer. |
Direction | See vips_flip(), |
Extend | See vips_embed(), vips_conv(), |
FailOn | How sensitive loaders are to errors, from never stop (very insensitive), to stop on the smallest warning (very sensitive). |
ForeignDzContainer | How many pyramid layers to create. |
ForeignDzDepth | How many pyramid layers to create. |
ForeignDzLayout | What directory layout and metadata standard to use. |
ForeignHeifCompression | The compression format to use inside a HEIF container. |
ForeignJpegSubsample | Set jpeg subsampling mode. |
ForeignPpmFormat | The netpbm file format to save as. |
ForeignSubsample | Set subsampling mode. |
ForeignTiffCompression | The compression types supported by the tiff writer. |
ForeignTiffPredictor | The predictor can help deflate and lzw compression. The values are fixed by the tiff library. |
ForeignTiffResunit | Use inches or centimeters as the resolution unit for a tiff file. |
ForeignWebpPreset | Tune lossy encoder settings for different image types. |
ImageType | |
Intent | The rendering intent. #VIPS_INTENT_ABSOLUTE is best for scientific work, #VIPS_INTENT_RELATIVE is usually best for accurate communication with other imaging libraries. |
Interesting | Pick the algorithm vips uses to decide image “interestingness”. This is used by vips_smartcrop(), for example, to decide what parts of the image to keep. |
Interpretation | How the values in an image should be interpreted. For example, a three-band float image of type #VIPS_INTERPRETATION_LAB should have its pixels interpreted as coordinates in CIE Lab space. |
Kernel | The resampling kernels vips supports. See vips_reduce(), for example. |
OperationBoolean | See also: vips_boolean(). |
OperationComplex | See also: vips_complex(). |
OperationComplex2 | See also: vips_complex2(). |
OperationComplexget | See also: vips_complexget(). |
OperationMath | See also: vips_math(). |
OperationMath2 | See also: vips_math(). |
OperationMorphology | More like hit-miss, really. |
OperationRelational | See also: vips_relational(). |
OperationRound | See also: vips_round(). |
PCS | Pick a Profile Connection Space for |
Precision | How accurate an operation should be. |
RegionShrink | How to calculate the output pixels when shrinking a 2x2 region. |
Saveable | See also: |
Size | Controls whether an operation should upsize, downsize, both up and downsize, or force a size. |
Token |
Bitfields
ArgumentFlags | Flags we associate with each object argument. |
ForeignFlags | Some hints about the image loader. |
ForeignPngFilter | The values mirror those of png.h in libpng. |
OperationFlags | Flags we associate with an operation. |
Callbacks
ArgumentClassMapFn | |
ArgumentMapFn | |
CallbackFn | |
ClassMapFn | |
GenerateFn | Fill |
ImageMapFn | |
InterpolateMethod | An interpolation function. It should read source pixels from |
ObjectSetArguments | |
OperationBuildFn | |
SListFold2Fn | |
SListMap2Fn | |
SListMap4Fn | |
StartFn | Start a new processing sequence for this generate function. This allocates per-thread state, such as an input region. |
StopFn | Stop a processing sequence. This frees per-thread state, such as an input region. |
TypeMap2Fn | |
TypeMapFn |
Functions
_object_set_member | |
add_option_entries | Add the standard vips %GOptionEntry to a %GOptionGroup. |
analyzeload | Load an Analyze 6.0 file. If |
arrayjoin | Optional arguments: |
bandjoin | Join a set of images together, bandwise. |
bandrank | Optional arguments: |
black | |
block_untrusted_set | Set the block state on all untrusted operations. |
buildlut | |
cache_drop_all | Drop the whole operation cache, handy for leak tracking. Also called automatically on vips_shutdown(). |
cache_get_max | Get the maximum number of operations we keep in cache. |
cache_get_max_files | Get the maximum number of tracked files we allow before we start dropping cached operations. See vips_tracked_get_files(). |
cache_get_max_mem | Get the maximum amount of tracked memory we allow before we start dropping cached operations. See vips_tracked_get_mem(). |
cache_get_size | Get the current number of operations in cache. |
cache_operation_add | Add a built operation to the cache. The cache will ref the operation. |
cache_operation_build | A binding-friendly version of vips_cache_operation_buildp(). |
cache_operation_buildp | Look up |
cache_operation_lookup | Look up an unbuilt |
cache_print | Print the whole operation cache to stdout. Handy for debugging. |
cache_set_dump | Handy for debugging. Print the operation cache to stdout just before exit. |
cache_set_max | Set the maximum number of operations we keep in cache. |
cache_set_max_files | Set the maximum number of tracked files we allow before we start dropping cached operations. See vips_tracked_get_files(). |
cache_set_max_mem | Set the maximum amount of tracked memory we allow before we start dropping cached operations. See vips_tracked_get_mem(). |
cache_set_trace | Handy for debugging. Print operation cache actions to stdout as we run. |
call | Vips_call() calls the named operation, passing in required arguments and then setting any optional ones from the remainder of the arguments as a set of name/value pairs. |
call_argv | |
call_options | |
call_required_optional | This is the main entry point for the C and C++ varargs APIs. |
call_split | |
call_split_option_string | |
check_8or16 | Check that the image is 8 or 16-bit integer, signed or unsigned. Otherwise set an error message and return non-zero. |
check_bandno |
|
check_bands | Check that the image has |
check_bands_1or3 | Check that the image has either one or three bands. Otherwise set an error message and return non-zero. |
check_bands_1orn | Check that the images have the same number of bands, or that one of the images has just 1 band. If not, set an error message and return non-zero. |
check_bands_1orn_unary | Check that an image has 1 or |
check_bands_atleast | Check that the image has at least |
check_bands_same | Check that the images have the same number of bands. If not, set an error message and return non-zero. |
check_coding | Check that the image has the required |
check_coding_known | Check that the image is uncoded, LABQ coded or RAD coded. If not, set an error message and return non-zero. |
check_coding_noneorlabq | Check that the image is uncoded or LABQ coded. If not, set an error message and return non-zero. |
check_coding_same | Check that the images have the same coding. If not, set an error message and return non-zero. |
check_complex | Check that the image is complex. Otherwise set an error message and return non-zero. |
check_format | Check that the image has the specified format. Otherwise set an error message and return non-zero. |
check_format_same | Check that the images have the same format. If not, set an error message and return non-zero. |
check_hist | Histogram images must have width or height 1, and must not have more than 65536 elements. Return 0 if the image will pass as a histogram, or -1 and set an error message otherwise. |
check_int | Check that the image is in one of the integer formats. Otherwise set an error message and return non-zero. |
check_matrix | Matrix images must have width and height less than 100000 and have 1 band. |
check_mono | Check that the image has exactly one band. Otherwise set an error message and return non-zero. |
check_noncomplex | Check that the image is not complex. Otherwise set an error message and return non-zero. |
check_oddsquare | Check that the image is square and that the sides are odd. If not, set an error message and return non-zero. |
check_precision_intfloat | Check that |
check_separable | Separable matrix images must have width or height 1. Return 0 if the image will pass, or -1 and set an error message otherwise. |
check_size_same | Check that the images have the same size. If not, set an error message and return non-zero. |
check_twocomponents | Check that the image is has two “components”, ie. is a one-band complex or a two-band non-complex. Otherwise set an error message and return non-zero. |
check_u8or16 | Check that the image is 8 or 16-bit unsigned integer. Otherwise set an error message and return non-zero. |
check_u8or16orf | Check that the image is 8 or 16-bit unsigned integer, or float. Otherwise set an error message and return non-zero. |
check_uint | Check that the image is in one of the unsigned integer formats. Otherwise set an error message and return non-zero. |
check_uintorf | Check that the image is unsigned int or float. Otherwise set an error message and return non-zero. |
check_uncoded | Check that the image is not coded. If not, set an error message and return non-zero. |
check_vector | Operations with a vector constant need a 1-element vector, or a vector with the same number of elements as there are bands in the image, or a 1-band image and a many-element vector. |
check_vector_length | Check that |
class_find | Search below |
class_map_all | Loop over all the subclasses of |
CMC2XYZ | |
col_ab2Ch | |
col_ab2h | |
col_C2Ccmc | Calculate Ccmc from C. |
col_Ccmc2C | Calculate C from Ccmc using a table. Call vips_col_make_tables_CMC() at least once before using this function. |
col_Ch2ab | Calculate ab from Ch, h in degrees. |
col_Ch2hcmc | Calculate hcmc from C and h. |
col_Chcmc2h | Calculate h from C and hcmc, using a table. Call vips_col_make_tables_CMC() at least once before using this function. |
col_dE00 | CIEDE2000, from: |
col_L2Lcmc | Calculate Lcmc from L. |
col_Lab2XYZ | Calculate XYZ from Lab, D65. |
col_Lcmc2L | Calculate L from Lcmc using a table. Call vips_col_make_tables_CMC() at least once before using this function. |
col_make_tables_CMC | Make the lookup tables for cmc. |
col_scRGB2BW_16 | |
col_scRGB2BW_8 | |
col_scRGB2sRGB_16 | |
col_scRGB2sRGB_8 | |
col_scRGB2XYZ | Turn scRGB into XYZ. |
col_sRGB2scRGB_16 | |
col_sRGB2scRGB_16_noclip | |
col_sRGB2scRGB_8 | |
col_sRGB2scRGB_8_noclip | |
col_XYZ2Lab | Calculate XYZ from Lab, D65. |
col_XYZ2scRGB | Turn XYZ into scRGB. |
composite | Optional arguments: |
concurrency_get | Returns the number of worker threads that vips should use when running a
|
concurrency_set | Sets the number of worker threads that vips should use when running a
|
csvload | Optional arguments: |
csvload_source | Optional arguments: |
error | Format the string in the style of |
error_buffer | Get a pointer to the start of the error buffer as a C string. The string is owned by the error system and must not be freed. |
error_buffer_copy | Return a copy of the vips error buffer, and clear it. |
error_clear | Clear and reset the error buffer. This is typically called after presenting an error to the user. |
error_exit | Sends a formatted error message to stderr, then sends the contents of the error buffer, if any, then shuts down vips and terminates the program with an error code. |
error_freeze | Stop errors being logged. Use |
error_g | This function sets the glib error pointer from the vips error buffer and clears it. It’s handy for returning errors to glib functions from vips. |
error_system | Format the string in the style of |
error_thaw | Reenable error logging. |
eye | |
filename_get_filename | Given a vips filename like “fred.jpg[Q=90]”, return a new string of just the filename part, “fred.jpg” in this case. |
filename_get_options | Given a vips filename like “fred.jpg[Q=90]”, return a new string of just the options part, “[Q=90]” in this case. |
fitsload | Read a FITS image file into a VIPS image. |
foreign_flags | Return the flags for |
format_sizeof | |
format_sizeof_unsafe | A fast but dangerous version of vips_format_sizeof(). You must have
previously range-checked |
fractsurf | |
g_error | This function adds the %GError to the vips error buffer and clears it. It’s the opposite of vips_error_g(). |
gaussmat | |
gaussnoise | |
get_argv0 | See also: VIPS_INIT(). |
get_disc_threshold | Return the number of bytes at which we flip between open via memory and open via disc. This defaults to 100mb, but can be changed with the VIPS_DISC_THRESHOLD environment variable or the —vips-disc-threshold command-line flag. See vips_image_new_from_file(). |
get_prgname | Return the program name. This can be useful for the user tio see,. |
gifload | Optional arguments: |
gifload_buffer | Optional arguments: |
gifload_source | Optional arguments: |
grey | |
guess_libdir | Vips_guess_libdir() tries to guess the install directory (usually the configure libdir, or $prefix/lib). You should pass in the value of argv[0] (the name your program was run as) as a clue to help it out, plus the name of the environment variable you let the user override your package install area with (eg. “VIPSHOME”). |
guess_prefix | Vips_guess_prefix() tries to guess the install directory. You should pass in the value of argv[0] (the name your program was run as) as a clue to help it out, plus the name of the environment variable you let the user override your package install area with (eg. “VIPSHOME”). |
heifload | Optional arguments: |
heifload_buffer | Optional arguments: |
heifload_source | Optional arguments: |
icc_is_compatible_profile | |
icc_present | VIPS can optionally be built without the ICC library. Use this function to test for its availability. |
identity | |
init | This function starts up libvips, see VIPS_INIT(). |
interpolate | Look up the |
invertlut | |
jp2kload | Optional arguments: |
jp2kload_buffer | Optional arguments: |
jp2kload_source | Optional arguments: |
jpegload | Optional arguments: |
jpegload_buffer | Optional arguments: |
jpegload_source | Optional arguments: |
jxlload | Read a JPEG-XL image. |
jxlload_buffer | Exactly as vips_jxlload(), but read from a buffer. |
jxlload_source | Exactly as vips_jxlload(), but read from a source. |
leak_set | Turn on or off vips leak checking. See also —vips-leak,
|
logmat | |
magickload | Optional arguments: |
magickload_buffer | Optional arguments: |
malloc | G_malloc() local to |
mask_butterworth | |
mask_butterworth_band | |
mask_butterworth_ring | |
mask_fractal | |
mask_gaussian | |
mask_gaussian_band | |
mask_gaussian_ring | |
mask_ideal | |
mask_ideal_band | |
mask_ideal_ring | |
matload | Read a Matlab save file into a VIPS image. |
matrixload | Reads a matrix from a file. |
matrixload_source | Exactly as vips_matrixload(), but read from a source. |
nickname_find | Return the VIPS nickname for a %GType. Handy for language bindings. |
niftiload | Read a NIFTI image file into a VIPS image. |
niftiload_source | Exactly as vips_niftiload(), but read from a source. |
openexrload | Read a OpenEXR file into a VIPS image. |
openslideload | Optional arguments: |
openslideload_source | Optional arguments: |
path_filename7 | Return the filename part of a vips7 path. For testing only. |
path_mode7 | Return the mode part of a vips7 path. For testing only. |
pdfload | Optional arguments: |
pdfload_buffer | Optional arguments: |
pdfload_source | Optional arguments: |
perlin | |
pngload | Optional arguments: |
pngload_buffer | Optional arguments: |
pngload_source | Optional arguments: |
ppmload | Read a PPM/PBM/PGM/PFM file into a VIPS image. |
ppmload_source | Optional arguments: |
profile_load | Load a named profile. |
pythagoras | Pythagorean distance between two points in colour space. Lab/XYZ/CMC etc. |
radload | Read a Radiance (HDR) file into a VIPS image. |
radload_buffer | Exactly as vips_radload(), but read from a HDR-formatted memory block. |
radload_source | Exactly as vips_radload(), but read from a source. |
rawload | Optional arguments: |
rot90 | Rotate |
shutdown | Call this to drop caches, close plugins, terminate background threads, and finalize any internal library testing. |
sines | |
strdup | G_strdup() a string. When |
sum | This operation sums all images in |
svgload | Optional arguments: |
svgload_buffer | Optional arguments: |
svgload_source | Exactly as vips_svgload(), but read from a source. |
svgload_string | Optional arguments: |
switch | The |
system | Optional arguments: |
text | |
thread_shutdown | Free any thread-private data and flush any profiling information. |
thumbnail | Optional arguments: |
thumbnail_buffer | Optional arguments: |
thumbnail_source | Optional arguments: |
tiffload | Optional arguments: |
tiffload_buffer | Optional arguments: |
tiffload_source | Optional arguments: |
tonelut | |
tracked_close | Exactly as close(2), but update the number of files currently open via vips_tracked_get_files(). This is used by the vips operation cache to drop cache when the number of files available is low. |
tracked_free | Only use it to free
memory that was previously allocated with |
tracked_get_allocs | Returns the number of active allocations. |
tracked_get_files | Returns the number of open files. |
tracked_get_mem | Returns the number of bytes currently allocated via |
tracked_get_mem_highwater | Returns the largest number of bytes simultaneously allocated via vips_tracked_malloc(). Handy for estimating max memory requirements for a program. |
tracked_malloc | Allocate an area of memory that will be tracked by |
tracked_open | Exactly as open(2), but the number of files currently open via
|
type_depth | |
type_find | Search below |
type_map | Map over a type’s children. Stop when |
type_map_all | Map over a type’s children, direct and indirect. Stop when |
value_get_area | Get the pointer from an area. Don’t touch count (area is static). |
value_get_array | Return the pointer to the array held by |
value_get_array_double | Return the start of the array of doubles held by |
value_get_array_image | Return the start of the array of images held by |
value_get_array_int | Return the start of the array of ints held by |
value_get_array_object | Return the start of the array of %GObject held by |
value_get_blob | Returns the data pointer from a blob. Optionally returns the length too. |
value_get_ref_string | Get the C string held internally by the %GValue. |
value_get_save_string | Get the C string held internally by the GValue. |
value_is_null | |
value_set_area | Set value to be a ref-counted area of memory with a free function. |
value_set_array | Set |
value_set_array_double | Set |
value_set_array_image | Set |
value_set_array_int | Set |
value_set_array_object | Set |
value_set_blob | Sets |
value_set_blob_free | Just like vips_value_set_blob(), but when
|
value_set_ref_string | Copies the C string |
value_set_save_string | Copies the C string into |
value_set_save_stringf | Generates a string and copies it into |
verror | Append a message to the error buffer. |
verror_system | Format the string in the style of |
version | Get the major, minor or micro library version, with |
version_string | Get the VIPS version as a static string, including a build date and time. Do not free. |
vipsload | Read in a vips image. |
vipsload_source | Exactly as vips_vipsload(), but read from a source. |
webpload | Optional arguments: |
webpload_buffer | Optional arguments: |
webpload_source | Optional arguments: |
worley | |
xyz | |
Yxy2Lab | |
zone |
Function Macros
ARG_IMAGE | |
ARG_INTERPOLATE | |
ARG_OBJECT | |
ARRAY | Allocate memory for an array of objects of type |
ARRAY_ADDR | |
COUNT_PIXELS | |
DEPRECATED_FOR | |
FREE | |
FREEF | |
IMAGE_ADDR | This macro returns a pointer to a pixel in an image, cast to a |
IMAGE_N_ELEMENTS | |
IMAGE_N_PELS | |
IMAGE_SIZEOF_ELEMENT | |
IMAGE_SIZEOF_IMAGE | |
IMAGE_SIZEOF_LINE | |
IMAGE_SIZEOF_PEL | |
INIT | VIPS_INIT() starts up the world of VIPS. You should call this on
program startup before using any other VIPS operations. If you do not call
VIPS_INIT(), VIPS will call it for you when you use your first VIPS
operation, but it may not be able to get hold of |
MALLOC | |
MATRIX | This macro returns a pointer to a pixel in an image, cast to a double*. The image must have a single band, be #VIPS_FORMAT_DOUBLE and be fully available in memory, so memory buffers and small mapped images only. |
NEW | Allocate memory for a thing of type |
RECT_BOTTOM | |
RECT_HCENTRE | |
RECT_RIGHT | |
RECT_VCENTRE | |
REGION_ADDR | This macro returns a pointer to a pixel in a region. The ( |
REGION_ADDR_TOPLEFT | This macro returns a pointer to the top-left pixel in the |
REGION_LSKIP | |
REGION_N_ELEMENTS | |
REGION_SIZEOF_ELEMENT | |
REGION_SIZEOF_LINE | |
REGION_SIZEOF_PEL | |
SETSTR | |
UNREF |
Constants
A_X0 | Areas under curves for illuminant A (2856K), 2 degree observer. |
A_Y0 | |
A_Z0 | |
ARGUMENT_OPTIONAL_INPUT | |
ARGUMENT_OPTIONAL_OUTPUT | |
ARGUMENT_REQUIRED_INPUT | |
ARGUMENT_REQUIRED_OUTPUT | |
B_X0 | Areas under curves for illuminant B (4874K), 2 degree observer. |
B_Y0 | |
B_Z0 | |
C_X0 | Areas under curves for illuminant C (6774K), 2 degree observer. |
C_Y0 | |
C_Z0 | |
CONFIG | |
D3250_X0 | Areas under curves for black body at 3250K, 2 degree observer. |
D3250_Y0 | |
D3250_Z0 | |
D50_X0 | Areas under curves for D50, 2 degree observer. |
D50_Y0 | |
D50_Z0 | |
D55_X0 | Areas under curves for D55, 2 degree observer. |
D55_Y0 | |
D55_Z0 | |
D65_X0 | Areas under curves for D65, 2 degree observer. |
D65_Y0 | |
D65_Z0 | |
D75_X0 | Areas under curves for D75, 2 degree observer. |
D75_Y0 | |
D75_Z0 | |
D93_X0 | Areas under curves for D93, 2 degree observer. |
D93_Y0 | |
D93_Z0 | |
E_X0 | Areas under curves for equal energy illuminant E. |
E_Y0 | |
E_Z0 | |
ENABLE_DEPRECATED | |
INTERPOLATE_SCALE | VIPS_INTERPOLATE_SHIFT as a multiplicative constant. |
INTERPOLATE_SHIFT | Many of the vips interpolators use fixed-point arithmetic for value calcualtion. This is how many bits of precision they use. |
LIBRARY_AGE | |
LIBRARY_CURRENT | |
LIBRARY_REVISION | |
MAGIC_INTEL | The first four bytes of a VIPS file in Intel byte ordering. |
MAGIC_SPARC | The first four bytes of a VIPS file in SPARC byte ordering. |
MAJOR_VERSION | |
MAX_COORD | |
META_EXIF_NAME | The name that JPEG read and write operations use for the image’s EXIF data. |
META_ICC_NAME | The name we use to attach an ICC profile. The file read and write
operations for TIFF, JPEG, PNG and others use this item of metadata to
attach and save ICC profiles. The profile is updated by the
|
META_IMAGEDESCRIPTION | The IMAGEDESCRIPTION tag. Often has useful metadata. |
META_IPTC_NAME | The name that read and write operations use for the image’s IPTC data. |
META_LOADER | Record the name of the original loader here. Handy for hinting file formats and for debugging. |
META_N_PAGES | If set, the number of pages in the original file. |
META_N_SUBIFDS | If set, the number of subifds in the first page of the file. |
META_ORIENTATION | The orientation tag for this image. An int from 1 - 8 using the standard exif/tiff meanings. |
META_PAGE_HEIGHT | If set, the height of each page when this image was loaded. If you save an image with “page-height” set to a format that supports multiple pages, such as tiff, the image will be saved as a series of pages. |
META_PHOTOSHOP_NAME | The name that TIFF read and write operations use for the image’s TIFFTAG_PHOTOSHOP data. |
META_RESOLUTION_UNIT | The JPEG and TIFF read and write operations use this to record the file’s preferred unit for resolution. |
META_SEQUENTIAL | Images loaded via |
META_XMP_NAME | The name that read and write operations use for the image’s XMP data. |
MICRO_VERSION | |
MINOR_VERSION | |
TRANSFORM_SCALE | VIPS_TRANSFORM_SHIFT as a multiplicative constant. |
TRANSFORM_SHIFT | Many of the vips interpolators use fixed-point arithmetic for coordinate calculation. This is how many bits of precision they use. |
VERSION | |
VERSION_STRING |