STRINGSIZE(3)

NAME
stringsize, stringwidth, stringnwidth, runestringsize, runestringwidth, runestringnwidth - graphical size of strings

SYNOPSIS

#include <u.h>
#include <libc.h>
#include <draw.h>

Point	stringsize(Font *f, char *s)

int	stringwidth(Font *f, char *s)

int	stringnwidth(Font *f, char *s, int n)

Point	runestringsize(Font *f, Rune *s)

int	runestringwidth(Font *f, Rune *s)

int	runestringnwidth(Font *f, Rune *s, int n)

DESCRIPTION
These routines compute the geometrical extent of character strings when drawn on the display. The most straightforward, stringsize, returns a Point representing the vector from upper left to lower right of the NUL-terminated string s drawn in font f. Stringwidth returns just the x component. Stringnwidth returns the width of the first n characters of s.

The routines beginning with rune are analogous, but accept an array of runes rather than UTF -encoded bytes.

FILES
/lib/font/bit directory of fonts

SOURCE
/usr/local/plan9/src/libdraw

SEE ALSO
addpt(3), cachechars(3), subfont(3), draw(3), draw(3), image(7), font(7)

DIAGNOSTICS
Because strings are loaded dynamically, these routines may generate I/O to the server and produce calls to the graphics error function.