### Method

# Vips Image tiffsave_buffer

#### Declaration [src]

    int
    vips_tiffsave_buffer (
      VipsImage* in,
      void** buf,
      size_t* len,
      ...
    )

#### Description [src]

As `vips_tiffsave()`, but save to a memory buffer.

The address of the buffer is returned in `buf`, the length of the buffer in `len`. You are responsible for freeing the buffer with `g_free()` when you are done with it.

Optional arguments

- `compression`: `VipsForeignTiffCompression`, write with this compression
- `Q`: `gint`, quality factor
- `predictor`: `VipsForeignTiffPredictor`, use this predictor
- `tile`: `gboolean`, set `TRUE` to write a tiled tiff
- `tile_width`: `gint`, for tile size
- `tile_height`: `gint`, for tile size
- `pyramid`: `gboolean`, write an image pyramid
- `bitdepth`: `gint`, change bit depth to 1,2, or 4 bit
- `miniswhite`: `gboolean`, write 1-bit images as MINISWHITE
- `resunit`: `VipsForeignTiffResunit` for resolution unit
- `xres`: `gdouble`, horizontal resolution in pixels/mm
- `yres`: `gdouble`, vertical resolution in pixels/mm
- `bigtiff`: `gboolean`, write a BigTiff file
- `properties`: `gboolean`, set `TRUE` to write an IMAGEDESCRIPTION tag
- `region_shrink`: `VipsRegionShrink` How to shrink each 2x2 region.
- `level`: `gint`, Zstd or Deflate (zlib) compression level
- `lossless`: `gboolean`, WebP lossless mode
- `depth`: `VipsForeignDzDepth` how deep to make the pyramid
- `subifd`: `gboolean`, write pyr layers as sub-ifds
- `premultiply`: `gboolean`, write premultiplied alpha

See also

`vips_tiffsave()`, `vips_image_write_to_file()`.

This method is not directly available to language bindings.

#### Parameters

`buf`

  Type: An array of `guint8`

  Return output buffer here.

  The length of the array is specified in the `len` argument.
  The data is owned by the caller of the method.

`len`

  Type: `size_t*`

  Return output length here.

  The data is owned by the caller of the method.

`...`

  Type: ``

  `NULL`-terminated list of optional named arguments.

#### Return value

Type: `int`

0 on success, -1 on error.