### Method

# Vips Image subsample

#### Declaration [src]

    int
    vips_subsample (
      VipsImage* in,
      VipsImage** out,
      int xfac,
      int yfac,
      ...
    )

#### Description [src]

Subsample an image by an integer fraction. This is fast, nearest-neighbour shrink.

For small horizontal shrinks, this operation will fetch lines of pixels from `in` and then subsample that line. For large shrinks it will fetch single pixels.

If `point` is set, `in` will always be sampled in points. This can be faster if the previous operations in the pipeline are very slow.

Optional arguments

- `point`: `gboolean`, turn on point sample mode

See also

`vips_affine()`, `vips_shrink()`, `vips_zoom()`.

This method is not directly available to language bindings.

#### Parameters

`out`

  Type: `VipsImage`

  Output image.

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

`xfac`

  Type: `int`

  Horizontal shrink factor.

`yfac`

  Type: `int`

  Vertical shrink factor.

`...`

  Type: ``

  `NULL`-terminated list of optional named arguments.

#### Return value

Type: `int`

0 on success, -1 on error.