### Method

# Rsvg Handle render_document

since: 2.46

#### Declaration [src]

    gboolean
    rsvg_handle_render_document (
      RsvgHandle* handle,
      cairo_t* cr,
      const RsvgRectangle* viewport,
      GError** error
    )

#### Description [src]

Renders the whole SVG document fitted to a viewport.

The `viewport` gives the position and size at which the whole SVG document will be rendered. The document is scaled proportionally to fit into this viewport.

The `cr` must be in a `CAIRO_STATUS_SUCCESS` state, or this function will not render anything, and instead will return an error.

Available since: 2.46

#### Parameters

`cr`

  Type: `cairo_t`

  A Cairo context.

  The data is owned by the caller of the method.

`viewport`

  Type: `RsvgRectangle`

  Viewport size at which the whole SVG would be fitted.

  The data is owned by the caller of the method.

`error`

  Type: `GError **`

  The return location for a recoverable error.

  The argument can be `NULL`.
  If the return location is not `NULL`, then you must initialize it to a `NULL` `GError*`.
  The argument will be left initialized to `NULL` by the method if there are no errors.
  In case of error, the argument will be set to a newly allocated `GError`; the caller will take ownership of the data, and be responsible for freeing it.

#### Return value

Type: `gboolean`

`TRUE` on success, `FALSE` on error. Errors are returned in the `error` argument.

API ordering: This function must be called on a fully-loaded `handle`. See the section “API ordering” for details.

Panics: this function will panic if the `handle` is not fully-loaded.