Annotation of lucent/sys/src/libgnot/f003243, revision 1.1

1.1     ! root        1: #include <u.h>
        !             2: #include <libc.h>
        !             3: #include <libg.h>
        !             4: #include <gnot.h>
        !             5: 
        !             6: Point
        !             7: gsubfstrsize(GSubfont *f, char *cs)
        !             8: {
        !             9:        int i, l, n;
        !            10:        Fontchar *info;
        !            11:        uchar *s;
        !            12:        Rune c;
        !            13: 
        !            14:        s = (uchar*)cs;
        !            15:        l = 0;
        !            16:        n = f->n;
        !            17:        info = f->info;
        !            18:        if(s)
        !            19:                while(c = *s){
        !            20:                        if(c < Runeself)
        !            21:                                s++;
        !            22:                        else{
        !            23:                                i = chartorune(&c, (char*)s);
        !            24:                                if(i == 0){
        !            25:                                        s++;
        !            26:                                        continue;
        !            27:                                }
        !            28:                                s += i;
        !            29:                        }
        !            30:                        if(c < n)
        !            31:                                l += info[c].width;
        !            32:                }
        !            33:        return Pt(l, f->height);
        !            34: }
        !            35: 
        !            36: long
        !            37: gsubfstrwidth(GSubfont *f, char *s)
        !            38: {
        !            39:        Point p;
        !            40: 
        !            41:        p = gsubfstrsize(f,s);
        !            42:        return p.x;
        !            43: }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.