MirBSD manpage: Xft(3)

XFT(3)              UNIX Programmer's Manual               XFT(3)


      Xft - X FreeType interface library


     Xft is a simple library designed to interface the FreeType
     rasterizer with the X Rendering Extension.  This manual page
     barely scratches the surface of this library.


     XftFont contains general font metrics and a pointer to
     either the core XFontStruct data or a structure holding
     FreeType and X Render Extension data.

     XftDraw is an opaque object which holds information used to
     render to an X drawable using either core protocol or the X
     Rendering extension.

     XftColor contains a pixel value and the ARGB values associ-
     ated with it.


     XftFont *
     XftFontOpen (Display *dpy, int screen, ...);
     XftFontOpen takes a list of pattern elements of the form
     (field, type, value) terminated with a 0, matches that pat-
     tern against the available fonts and opens the matching

          font = XftFontOpen (dpy, scr,
     XFT_FAMILY, XftTypeString, "charter",
     XFT_SIZE, XftTypeDouble, 12.0);

     This opens the charter font at 12 points.  The point size is
     automatically converted to the correct pixel size based on
     the resolution of the monitor.

     XftTextExtents8 (Display *dpy,
                XftFont  *font,
                FcChar8       *string,
                int      len,
                XGlyphInfo    *extents);
     XftTextExtents8 computes the pixel extents of "string" when
     drawn with "font".

     XftDraw *
     XftDrawCreate (Display   *dpy,
                 Drawable  drawable,

XFree86                    Version 2.0                          1

XFT(3)              UNIX Programmer's Manual               XFT(3)

                 Visual    *visual,
                 Colormap  colormap);
     XtDrawCreate creates a structure that can be used to render
     text and rectangles to the screen.

     XftDrawString8 (XftDraw       *d,
               XftColor  *color,
               XftFont        *font,
               int       x,
               int       y,
               FcChar8        *string,
               int       len);
     XftDrawString8 draws "string" using "font" in "color" at "x,

     XftDrawRect (XftDraw         *d,
               XftColor      *color,
               int      x,
               int      y,
               unsigned int   width,
               unsigned int   height);
     XftDrawRect fills a solid rectangle in the specified color.

     XftColorAllocName (Display  *dpy,
                  Visual   *visual,
                  Colormap cmap,
                  char       *name,
                  XftColor *result);
     XftColorAllocName allocates a XftColor structure. It asks
     the X server to allocate a pixel and return the associated
     RGB values wich are used to construct an XRenderColor . This
     requires a round trip (bad).

     XftColorAllocValue (Display       *dpy,
                   Visual         *visual,
                   Colormap       cmap,
                   XRenderColor    *color,
                   XftColor       *result);
     For TrueColor visuals, XftColorAllocValue computes the
     nearest supported ARGB value and the associated pixel value
     and stores them in the result.  No round trip is required.
     For non-TrueColor visuals, XftColorAllocValue asks the X
     server to allocate the specified color and stores the
     resulting pixel and ARGB values into result.

     XftColorFree (Display    *dpy,
                Visual   *visual,

XFree86                    Version 2.0                          2

XFT(3)              UNIX Programmer's Manual               XFT(3)

                Colormap cmap,
                XftColor *color);

     XftColorFree frees a color when it is no longer in use.


     The Xft version 2 library uses fontconfig(3) for its confi-
     guration. The XftConfig files are not used anymore.


     As of version 2, Xft has become relatively stable and is
     expected to retain source and binary compatibility in future




     Keith Packard, member of the XFree86 Project, Inc.

XFree86                    Version 2.0                          3

Generated on 2021-12-07 11:07:08 by $MirOS: src/scripts/roff2htm,v 1.103 2021/01/23 20:24:35 tg Exp $ — This product includes material provided by mirabilos.

These manual pages and other documentation are copyrighted by their respective writers; their sources are available at the project’s CVSweb, AnonCVS and other mirrors. The rest is Copyright © 2002–2021 MirBSD.

This manual page’s HTML representation is supposed to be valid XHTML/1.1; if not, please send a bug report — diffs preferred.