Constructor

GdkPixbufPixbufnew_from_stream_at_scale

Declaration [src]

GdkPixbuf*
gdk_pixbuf_new_from_stream_at_scale (
  GInputStream* stream,
  gint width,
  gint height,
  gboolean preserve_aspect_ratio,
  GCancellable* cancellable,
  GError** error
)

Description [src]

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 G_IO_ERROR_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.

Available since:2.14

Parameters

stream GInputStream
 

A GInputStream to load the pixbuf from.

 The data is owned by the caller of the function.
width gint
 

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

height gint
 

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

preserve_aspect_ratio gboolean
 

TRUE to preserve the image’s aspect ratio.

cancellable GCancellable
 

Optional GCancellable object, NULL to ignore.

 The argument can be NULL.
 The data is owned by the caller of the function.
error GError **
  The return location for a GError*, or NULL.

Return value

Returns: GdkPixbuf
 

A newly-created pixbuf.

 The caller of the function takes ownership of the data, and is responsible for freeing it.
 The return value can be NULL.