plan9port

fork of plan9port with libvec, libstr and libsdb
Log | Files | Refs | README | LICENSE

stringsize.3 (1414B)


      1 .TH STRINGSIZE 3
      2 .SH NAME
      3 stringsize, stringwidth, stringnwidth, runestringsize, runestringwidth, runestringnwidth \- graphical size of strings
      4 .SH SYNOPSIS
      5 .nf
      6 .PP
      7 .ft L
      8 #include <u.h>
      9 #include <libc.h>
     10 #include <draw.h>
     11 .ft P
     12 .ta \w'\fLPoint 'u
     13 .PP
     14 .B
     15 Point	stringsize(Font *f, char *s)
     16 .PP
     17 .B
     18 int	stringwidth(Font *f, char *s)
     19 .PP
     20 .B
     21 int	stringnwidth(Font *f, char *s, int n)
     22 .PP
     23 .B
     24 Point	runestringsize(Font *f, Rune *s)
     25 .PP
     26 .B
     27 int	runestringwidth(Font *f, Rune *s)
     28 .PP
     29 .B
     30 int	runestringnwidth(Font *f, Rune *s, int n)
     31 .SH DESCRIPTION
     32 These routines compute the geometrical extent of character strings when drawn on the display.  The most straightforward,
     33 .BR stringsize ,
     34 returns a
     35 .B Point
     36 representing the vector from upper left to lower right of the NUL-terminated string
     37 .I s
     38 drawn in font
     39 .IR f .
     40 .B Stringwidth
     41 returns just the
     42 .I x
     43 component.
     44 .B Stringnwidth
     45 returns the width of the first
     46 .I n
     47 characters of
     48 .IR s .
     49 .PP
     50 The routines beginning with
     51 .B rune
     52 are analogous, but accept an array of runes rather than
     53 .SM UTF\c
     54 -encoded bytes.
     55 .SH FILES
     56 .BR /lib/font/bit "    directory of fonts
     57 .SH SOURCE
     58 .B \*9/src/libdraw
     59 .SH "SEE ALSO"
     60 .MR addpt (3) ,
     61 .MR cachechars (3) ,
     62 .MR subfont (3) ,
     63 .MR draw (3) ,
     64 .MR draw (3) ,
     65 .MR image (7) ,
     66 .MR font (7)
     67 .SH DIAGNOSTICS
     68 Because strings are loaded dynamically, these routines may generate I/O
     69 to the server and produce calls to the graphics error function.