Function Context.pathExtends

Computes a bounding box in user-space coordinates covering the points on the current path. If the current path is empty, returns an empty Box ((0,0), (0,0)). Stroke parameters, fill rule, surface dimensions and clipping are not taken into account.

Contrast with fillExtents() and strokeExtents() which return the extents of only the area that would be "inked" by the corresponding drawing operations.

The result of pathExtents() is defined as equivalent to the limit of strokeExtents() with CAIRO_LINE_CAP_ROUND as the line width approaches 0.0, (but never reaching the empty-rectangle returned by strokeExtents() for a line width of 0.0).

Specifically, this means that zero-area sub-paths such as moveTo();lineTo() segments, (even degenerate cases where the coordinates to both calls are identical), will be considered as contributing to the extents. However, a lone moveTo() will not contribute to the results of pathExtents().

Prototype

Box pathExtends();

Authors

Johannes Pfau cairoD
Andrej Mitrovic cairoD
cairo team cairo

Copyright

License

cairoD wrapper/bindings Boost License 1.0
cairo LGPL 2.1 / MPL 1.1