Gets the extents for a string of text. The extents describe a
user-space rectangle that encloses the "inked" portion of the
text drawn at the origin (0,0) (as it would be drawn by
Context.showText() if the cairo graphics state were set
to the same fontFace, fontMatrix, ctm, and fontOptions
as ScaledFont). Additionally, the x_advance and y_advance
values indicate the amount by which the current point would
be advanced by Context.showText().
Note that whitespace characters do not directly contribute
to the size of the rectangle (extents.width and extents.height).
They do contribute indirectly by changing the position of
non-whitespace characters. In particular, trailing whitespace
characters are likely to not affect the size of the
rectangle, though they will affect the x_advance
and y_advance values.
Gets the extents for a string of text. The extents describe a user-space rectangle that encloses the "inked" portion of the text drawn at the origin (0,0) (as it would be drawn by Context.showText() if the cairo graphics state were set to the same fontFace, fontMatrix, ctm, and fontOptions as ScaledFont). Additionally, the x_advance and y_advance values indicate the amount by which the current point would be advanced by Context.showText().
Note that whitespace characters do not directly contribute to the size of the rectangle (extents.width and extents.height). They do contribute indirectly by changing the position of non-whitespace characters. In particular, trailing whitespace characters are likely to not affect the size of the rectangle, though they will affect the x_advance and y_advance values.