### Function

# Vips Image bandjoin

#### Declaration [src]

    int
    vips_bandjoin (
      VipsImage** in,
      VipsImage** out,
      int n,
      ...
    )

#### Description [src]

Join a set of images together, bandwise.

If the images have n and m bands, then the output image will have n + m bands, with the first n coming from the first image and the last m from the second.

If the images differ in size, the smaller images are enlarged to match the larger by adding zero pixels along the bottom and right.

The input images are cast up to the smallest common type (see table Smallest common format in arithmetic).

See also

`vips_insert()`.

This function is not directly available to language bindings.

#### Parameters

`in`

  Type: An array of `VipsImage*`

  Array of input images.

  The length of the array is specified in the `n` argument.
  The data is owned by the caller of the function.

`out`

  Type: `VipsImage`

  Output image.

  The argument will be set by the function.
  The caller of the function takes ownership of the returned data, and is responsible for freeing it.

`n`

  Type: `int`

  Number of input images.

`...`

  Type: ``

  `NULL`-terminated list of optional named arguments.

#### Return value

Type: `int`

0 on success, -1 on error.