Method
RsvgHandleget_geometry_for_layer
Declaration [src]
gboolean
rsvg_handle_get_geometry_for_layer (
RsvgHandle* handle,
const char* id,
const RsvgRectangle* viewport,
RsvgRectangle* out_ink_rect,
RsvgRectangle* out_logical_rect,
GError** error
)
Description [src]
Computes the ink rectangle and logical rectangle of an SVG element, or the whole SVG, as if the whole SVG were rendered to a specific viewport.
Element IDs should look like an URL fragment identifier; for example, pass
#foo
(hash foo
) to get the geometry of the element that
has an id="foo"
attribute.
The “ink rectangle” is the bounding box that would be painted for fully-stroked and filled elements.
The “logical rectangle” just takes into account the unstroked paths and text outlines.
Note that these bounds are not minimum bounds; for example, clipping paths are not taken into account.
You can pass NULL
for the id
if you want to measure all
the elements in the SVG, i.e. to measure everything from the
root element.
This operation is not constant-time, as it involves going through all the child elements.
Available since: | 2.46 |
Parameters
id |
const char* |
An element’s id within the SVG, starting with “#” (a single
hash character), for example, |
|
The argument can be NULL . | |
The data is owned by the caller of the function. | |
The value is a NUL terminated UTF-8 string. | |
viewport |
RsvgRectangle |
Viewport size at which the whole SVG would be fitted. |
|
The data is owned by the caller of the function. | |
out_ink_rect |
RsvgRectangle |
Place to store the ink rectangle of the element. |
|
The argument will be set by the function. | |
The argument can be NULL . | |
The data is owned by the caller of the function. | |
out_logical_rect |
RsvgRectangle |
Place to store the logical rectangle of the element. |
|
The argument will be set by the function. | |
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: | gboolean |
API ordering: This function must be called on a fully-loaded Panics: this function will panic if the |