Pixbuf.newFromFileAtScale

gdkpixbuf.pixbuf.Pixbuf newFromFileAtScale(string filename, int width, int height, bool preserveAspectRatio)

Creates a new pixbuf by loading an image from a file.

The file format is detected automatically.

If NULL is returned, then error will be set. Possible errors are:

  • the file could not be opened
  • there is no loader for the file's format
  • there is not enough memory to allocate the image buffer
  • the image buffer contains invalid data

The error domains are GDK_PIXBUF_ERROR and G_FILE_ERROR.

The image will be scaled to fit in the requested size, optionally preserving the image's aspect ratio.

When preserving the aspect ratio, a width of -1 will cause the image to be scaled to the exact given height, and a height of -1 will cause the image to be scaled to the exact given width. When not preserving aspect ratio, a width or height of -1 means to not scale the image at all in that dimension. Negative values for width and height are allowed since 2.8.

Parameters

filenameName of file to load, in the GLib file name encoding
widthThe width the image should have or -1 to not constrain the width
heightThe height the image should have or -1 to not constrain the height
preserveAspectRatioTRUE to preserve the image's aspect ratio

Returns

A newly-created pixbuf

Throws

[ErrorWrap]