Gdk.Texture.download

### Method

# Gdk Texturedownload

#### Declaration [src]

    void
    gdk_texture_download (
      GdkTexture* texture,
      guchar* data,
      gsize stride
    )

#### Description [src]

Downloads the `texture` into local memory.

This may be an expensive operation, as the actual texture data may reside on a GPU or on a remote display server.

The data format of the downloaded data is equivalent to `CAIRO_FORMAT_ARGB32`, so every downloaded pixel requires 4 bytes of memory.

Downloading a texture into a Cairo image surface:

    surface = cairo_image_surface_create (CAIRO_FORMAT_ARGB32,
                                          gdk_texture_get_width (texture),
                                          gdk_texture_get_height (texture));
    gdk_texture_download (texture,
                          cairo_image_surface_get_data (surface),
                          cairo_image_surface_get_stride (surface));
    cairo_surface_mark_dirty (surface);

#### Parameters

`data` | An array of `guchar`
| Pointer to enough memory to be filled with the downloaded data of `texture`.
| The data is owned by the caller of the function.
`stride` | `gsize`
| Rowstride in bytes.