Pixbuf.newFromStreamAtScale

Creates a new pixbuf by loading an image from an input stream.

The file format is detected automatically. If NULL is returned, then error will be set. The cancellable can be used to abort the operation from another thread. If the operation was cancelled, the error gio.types.IOErrorEnum.Cancelled will be returned. Other possible errors are in the GDK_PIXBUF_ERROR and G_IO_ERROR domains.

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. If both width and height are given, this function will behave as if the smaller of the two values is passed as -1.

When not preserving aspect ratio, a width or height of -1 means to not scale the image at all in that dimension.

The stream is not closed.

Parameters

stream gio.input_stream.InputStream

a gio.input_stream.InputStream to load the pixbuf from

width int

The width the image should have or -1 to not constrain the width

height int

The height the image should have or -1 to not constrain the height

preserveAspectRatio bool

TRUE to preserve the image's aspect ratio

cancellable gio.cancellable.Cancellable

optional gio.cancellable.Cancellable object, NULL to ignore

Return Value

Type: gdkpixbuf.pixbuf.Pixbuf

A newly-created pixbuf