---
name: "im_png2vips_header"
section: "3"
platform: "linux"
package: "libvips-dev"
version: "7.14.5-1"
release: "Debian 5.0 (Lenny)"
platforms: ["linux"]
url: "https://new.carta.tech/im_png2vips"
---

# im\_png2vips\_header(3)

convert PNG images to and from VIPS format

Part of [im\_png2vips(3)](/im_png2vips/3.md).

## NAME

im\_png2vips, im\_png2vips\_header, im\_png2vips - convert PNG images to and from VIPS format

## SYNOPSIS

\#include \<vips/vips.h\>

int im\_png2vips( const char \*filename, IMAGE \*out )

int im\_png2vips\_header( const char \*filename, IMAGE \*out )

int im\_vips2png( IMAGE \*in, const char \*filename )

## DESCRIPTION

**im\_png2vips()** reads the png image in filename, and writes the image out in VIPS format.

**im\_png2vips\_header()** reads just the header information from the PNG file. You can't read any pixels!

**im\_vips2png()** reads the image in and writes a PNG file to the specified filename. The filename may include an optional mode string, following a ':' character, which you can use to specify compression and interlace.

The mode string has the following syntax:

  \<compression\>,\<interlace\>

where \<compression\> is an integer between 0 and 9 specifying the amount of compression (6 is the default), and \<interlace\> is 0 for no interlace (this is the default) and 1 for ADAM7 interlace.

Beware that writing an interlaced image is potentially up to 7 times slower than writing a non-interlaced image.

The image is automatically converted to RGB or Monochrome (with an optional alpha channel) before saving.

## EXAMPLES

The call:

   im\_vips2png fred.v fred.png

Writes a compression 6, uninterlaced PNG image.

   im\_vips2png fred.v fred.tif:,1

Writes an interlaced image.

## SEE ALSO

[im\_ispng(3)](/im_ispng/3.md), [im\_vips2tiff(3)](/im_vips2tiff/3.md)

## COPYRIGHT

Hey, you want this? You have it!
