Blame doc/fontconfig-devel/x31.html

Packit 352660
Packit 352660
Packit 352660
>
Packit 352660
>
Packit 352660
>Datatypes
Packit 352660
>
Packit 352660
NAME="GENERATOR"
Packit 352660
CONTENT="Modular DocBook HTML Stylesheet Version 1.79">
Packit 352660
REL="HOME"
Packit 352660
HREF="t1.html">
Packit 352660
REL="PREVIOUS"
Packit 352660
TITLE="FUNCTIONAL OVERVIEW"
Packit 352660
HREF="x19.html">
Packit 352660
REL="NEXT"
Packit 352660
TITLE="FUNCTIONS"
Packit 352660
HREF="x103.html">
Packit 352660
>
Packit 352660
CLASS="SECT1"
Packit 352660
BGCOLOR="#FFFFFF"
Packit 352660
TEXT="#000000"
Packit 352660
LINK="#0000FF"
Packit 352660
VLINK="#840084"
Packit 352660
ALINK="#0000FF"
Packit 352660
>
Packit 352660
CLASS="NAVHEADER"
Packit 352660
>
Packit 352660
SUMMARY="Header navigation table"
Packit 352660
WIDTH="100%"
Packit 352660
BORDER="0"
Packit 352660
CELLPADDING="0"
Packit 352660
CELLSPACING="0"
Packit 352660
>
Packit 352660
>
Packit 352660
COLSPAN="3"
Packit 352660
ALIGN="center"
Packit 352660
>
Packit 352660
>
Packit 352660
>
Packit 352660
>
Packit 352660
WIDTH="10%"
Packit 352660
ALIGN="left"
Packit 352660
VALIGN="bottom"
Packit 352660
>
Packit 352660
HREF="x19.html"
Packit 352660
ACCESSKEY="P"
Packit 352660
><<< Previous
Packit 352660
>
Packit 352660
>
Packit 352660
WIDTH="80%"
Packit 352660
ALIGN="center"
Packit 352660
VALIGN="bottom"
Packit 352660
>
Packit 352660
>
Packit 352660
WIDTH="10%"
Packit 352660
ALIGN="right"
Packit 352660
VALIGN="bottom"
Packit 352660
>
Packit 352660
HREF="x103.html"
Packit 352660
ACCESSKEY="N"
Packit 352660
>Next >>>
Packit 352660
>
Packit 352660
>
Packit 352660
>
Packit 352660
>
Packit 352660
ALIGN="LEFT"
Packit 352660
WIDTH="100%">
Packit 352660
>
Packit 352660
CLASS="SECT1"
Packit 352660
>
Packit 352660
CLASS="SECT1"
Packit 352660
>
Packit 352660
NAME="AEN31"
Packit 352660
>Datatypes
Packit 352660
>
Packit 352660
>
Packit 352660
>Fontconfig uses abstract data types to hide internal implementation details
Packit 352660
for most data structures.  A few structures are exposed where appropriate.
Packit 352660
  
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
NAME="AEN34"
Packit 352660
>FcChar8, FcChar16, FcChar32, FcBool
Packit 352660
>
Packit 352660
>
Packit 352660
>These are primitive data types; the FcChar* types hold precisely the number
Packit 352660
of bits stated (if supported by the C implementation).  FcBool holds
Packit 352660
one of two C preprocessor symbols: FcFalse or FcTrue.
Packit 352660
    
Packit 352660
>
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
NAME="AEN37"
Packit 352660
>FcMatrix
Packit 352660
>
Packit 352660
>
Packit 352660
>An FcMatrix holds an affine transformation, usually used to reshape glyphs.
Packit 352660
A small set of matrix operations are provided to manipulate these.
Packit 352660
    
Packit 352660
BORDER="0"
Packit 352660
BGCOLOR="#E0E0E0"
Packit 352660
WIDTH="100%"
Packit 352660
>
Packit 352660
>
Packit 352660
>
Packit 352660
CLASS="PROGRAMLISTING"
Packit 352660
>        typedef struct _FcMatrix {
Packit 352660
                double xx, xy, yx, yy;
Packit 352660
        } FcMatrix;
Packit 352660
    
Packit 352660
>
Packit 352660
>
Packit 352660
>
Packit 352660
>
Packit 352660
    
Packit 352660
>
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
NAME="AEN41"
Packit 352660
>FcCharSet
Packit 352660
>
Packit 352660
>
Packit 352660
>An FcCharSet is an abstract type that holds the set of encoded Unicode chars
Packit 352660
in a font.  Operations to build and compare these sets are provided.
Packit 352660
    
Packit 352660
>
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
NAME="AEN44"
Packit 352660
>FcLangSet
Packit 352660
>
Packit 352660
>
Packit 352660
>An FcLangSet is an abstract type that holds the set of languages supported
Packit 352660
by a font.  Operations to build and compare these sets are provided. These
Packit 352660
are computed for a font based on orthographic information built into the
Packit 352660
fontconfig library. Fontconfig has orthographies for all of the ISO 639-1
Packit 352660
languages except for MS, NA, PA, PS, QU, RN, RW, SD, SG, SN, SU and ZA. If
Packit 352660
you have orthographic information for any of these languages, please submit
Packit 352660
them.
Packit 352660
    
Packit 352660
>
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
NAME="AEN47"
Packit 352660
>FcLangResult
Packit 352660
>
Packit 352660
>
Packit 352660
>An FcLangResult is an enumeration used to return the results of comparing
Packit 352660
two language strings or FcLangSet objects. FcLangEqual means the
Packit 352660
objects match language and territory. FcLangDifferentTerritory means
Packit 352660
the objects match in language but differ in territory.
Packit 352660
FcLangDifferentLang means the objects differ in language.
Packit 352660
    
Packit 352660
>
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
NAME="AEN50"
Packit 352660
>FcType
Packit 352660
>
Packit 352660
>
Packit 352660
>Tags the kind of data stored in an FcValue.
Packit 352660
    
Packit 352660
>
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
NAME="AEN53"
Packit 352660
>FcValue
Packit 352660
>
Packit 352660
>
Packit 352660
>An FcValue object holds a single value with one of a number of different
Packit 352660
types.  The 'type' tag indicates which member is valid.
Packit 352660
    
Packit 352660
BORDER="0"
Packit 352660
BGCOLOR="#E0E0E0"
Packit 352660
WIDTH="100%"
Packit 352660
>
Packit 352660
>
Packit 352660
>
Packit 352660
CLASS="PROGRAMLISTING"
Packit 352660
>        typedef struct _FcValue {
Packit 352660
                FcType type;
Packit 352660
                union {
Packit 352660
                        const FcChar8 *s;
Packit 352660
                        int i;
Packit 352660
                        FcBool b;
Packit 352660
                        double d;
Packit 352660
                        const FcMatrix *m;
Packit 352660
                        const FcCharSet *c;
Packit 352660
			void *f;
Packit 352660
			const FcLangSet *l;
Packit 352660
                } u;
Packit 352660
        } FcValue;
Packit 352660
    
Packit 352660
>
Packit 352660
>
Packit 352660
>
Packit 352660
>
Packit 352660
    
Packit 352660
BORDER="0"
Packit 352660
BGCOLOR="#E0E0E0"
Packit 352660
WIDTH="100%"
Packit 352660
>
Packit 352660
>
Packit 352660
>
Packit 352660
CLASS="PROGRAMLISTING"
Packit 352660
>                  FcValue Members
Packit 352660
Packit 352660
        Type            Union member    Datatype
Packit 352660
        --------------------------------
Packit 352660
        FcTypeVoid      (none)          (none)
Packit 352660
        FcTypeInteger   i               int
Packit 352660
        FcTypeDouble    d               double
Packit 352660
        FcTypeString    s               FcChar8 *
Packit 352660
        FcTypeBool      b               b
Packit 352660
        FcTypeMatrix    m               FcMatrix *
Packit 352660
        FcTypeCharSet   c               FcCharSet *
Packit 352660
	FcTypeFTFace	f		void * (FT_Face)
Packit 352660
	FcTypeLangSet	l		FcLangSet *
Packit 352660
    
Packit 352660
>
Packit 352660
>
Packit 352660
>
Packit 352660
>
Packit 352660
    
Packit 352660
>
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
NAME="AEN58"
Packit 352660
>FcPattern
Packit 352660
>
Packit 352660
>
Packit 352660
>holds a set of names with associated value lists; each name refers to a
Packit 352660
property of a font.  FcPatterns are used as inputs to the matching code as
Packit 352660
well as holding information about specific fonts.  Each property can hold
Packit 352660
one or more values; conventionally all of the same type, although the
Packit 352660
interface doesn't demand that.
Packit 352660
    
Packit 352660
>
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
NAME="AEN61"
Packit 352660
>FcFontSet
Packit 352660
>
Packit 352660
>
Packit 352660
>    
Packit 352660
BORDER="0"
Packit 352660
BGCOLOR="#E0E0E0"
Packit 352660
WIDTH="100%"
Packit 352660
>
Packit 352660
>
Packit 352660
>
Packit 352660
CLASS="PROGRAMLISTING"
Packit 352660
>        typedef struct _FcFontSet {
Packit 352660
                int nfont;
Packit 352660
                int sfont;
Packit 352660
                FcPattern **fonts;
Packit 352660
        } FcFontSet;
Packit 352660
    
Packit 352660
>
Packit 352660
>
Packit 352660
>
Packit 352660
>
Packit 352660
An FcFontSet contains a list of FcPatterns.  Internally fontconfig uses this
Packit 352660
data structure to hold sets of fonts.  Externally, fontconfig returns the
Packit 352660
results of listing fonts in this format.  'nfont' holds the number of
Packit 352660
patterns in the 'fonts' array; 'sfont' is used to indicate the size of that
Packit 352660
array.
Packit 352660
    
Packit 352660
>
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
NAME="AEN65"
Packit 352660
>FcStrSet, FcStrList
Packit 352660
>
Packit 352660
>
Packit 352660
>FcStrSet holds a list of strings that can be appended to and enumerated.
Packit 352660
Its unique characteristic is that the enumeration works even while strings
Packit 352660
are appended during enumeration.  FcStrList is used during enumeration to
Packit 352660
safely and correctly walk the list of strings even while that list is edited
Packit 352660
in the middle of enumeration.
Packit 352660
    
Packit 352660
>
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
NAME="AEN68"
Packit 352660
>FcObjectSet
Packit 352660
>
Packit 352660
>
Packit 352660
>      
Packit 352660
BORDER="0"
Packit 352660
BGCOLOR="#E0E0E0"
Packit 352660
WIDTH="100%"
Packit 352660
>
Packit 352660
>
Packit 352660
>
Packit 352660
CLASS="PROGRAMLISTING"
Packit 352660
>        typedef struct _FcObjectSet {
Packit 352660
                int nobject;
Packit 352660
                int sobject;
Packit 352660
                const char **objects;
Packit 352660
        } FcObjectSet;
Packit 352660
      
Packit 352660
>
Packit 352660
>
Packit 352660
>
Packit 352660
>
Packit 352660
holds a set of names and is used to specify which fields from fonts are
Packit 352660
placed in the the list of returned patterns when listing fonts.
Packit 352660
    
Packit 352660
>
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
NAME="AEN72"
Packit 352660
>FcObjectType
Packit 352660
>
Packit 352660
>
Packit 352660
>      
Packit 352660
BORDER="0"
Packit 352660
BGCOLOR="#E0E0E0"
Packit 352660
WIDTH="100%"
Packit 352660
>
Packit 352660
>
Packit 352660
>
Packit 352660
CLASS="PROGRAMLISTING"
Packit 352660
>        typedef struct _FcObjectType {
Packit 352660
                const char *object;
Packit 352660
                FcType type;
Packit 352660
        } FcObjectType;
Packit 352660
      
Packit 352660
>
Packit 352660
>
Packit 352660
>
Packit 352660
>
Packit 352660
marks the type of a pattern element generated when parsing font names.
Packit 352660
Applications can add new object types so that font names may contain the new
Packit 352660
elements.
Packit 352660
    
Packit 352660
>
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
NAME="AEN76"
Packit 352660
>FcConstant
Packit 352660
>
Packit 352660
>
Packit 352660
>      
Packit 352660
BORDER="0"
Packit 352660
BGCOLOR="#E0E0E0"
Packit 352660
WIDTH="100%"
Packit 352660
>
Packit 352660
>
Packit 352660
>
Packit 352660
CLASS="PROGRAMLISTING"
Packit 352660
>        typedef struct _FcConstant {
Packit 352660
            const FcChar8 *name;
Packit 352660
            const char *object;
Packit 352660
            int value;
Packit 352660
        } FcConstant;
Packit 352660
      
Packit 352660
>
Packit 352660
>
Packit 352660
>
Packit 352660
>
Packit 352660
Provides for symbolic constants for new pattern elements.  When 'name' is
Packit 352660
seen in a font name, an 'object' element is created with value 'value'.
Packit 352660
    
Packit 352660
>
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
NAME="AEN80"
Packit 352660
>FcBlanks
Packit 352660
>
Packit 352660
>
Packit 352660
>holds a list of Unicode chars which are expected to be blank; unexpectedly
Packit 352660
blank chars are assumed to be invalid and are elided from the charset
Packit 352660
associated with the font.
Packit 352660
    
Packit 352660
>
Packit 352660
>        FcBlanks is deprecated and should not be used in newly written code.
Packit 352660
        It is still accepted by some functions for compatibility with
Packit 352660
        older code but will be removed in the future.
Packit 352660
    
Packit 352660
>
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
NAME="AEN84"
Packit 352660
>FcFileCache
Packit 352660
>
Packit 352660
>
Packit 352660
>holds the per-user cache information for use while loading the font
Packit 352660
database. This is built automatically for the current configuration when
Packit 352660
that is loaded.  Applications must always pass '0' when one is requested.
Packit 352660
    
Packit 352660
>
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
NAME="AEN87"
Packit 352660
>FcConfig
Packit 352660
>
Packit 352660
>
Packit 352660
>holds a complete configuration of the library; there is one default
Packit 352660
configuration, other can be constructed from XML data structures.  All
Packit 352660
public entry points that need global data can take an optional FcConfig*
Packit 352660
argument; passing 0 uses the default configuration.  FcConfig objects hold two
Packit 352660
sets of fonts, the first contains those specified by the configuration, the
Packit 352660
second set holds those added by the application at run-time.  Interfaces
Packit 352660
that need to reference a particular set use one of the FcSetName enumerated
Packit 352660
values.
Packit 352660
    
Packit 352660
>
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
NAME="AEN90"
Packit 352660
>FcSetName
Packit 352660
>
Packit 352660
>
Packit 352660
>Specifies one of the two sets of fonts available in a configuration;
Packit 352660
FcSetSystem for those fonts specified in the configuration and
Packit 352660
FcSetApplication which holds fonts provided by the application.
Packit 352660
    
Packit 352660
>
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
NAME="AEN93"
Packit 352660
>FcResult
Packit 352660
>
Packit 352660
>
Packit 352660
>Used as a return type for functions manipulating FcPattern objects.
Packit 352660
    
Packit 352660
BORDER="0"
Packit 352660
BGCOLOR="#E0E0E0"
Packit 352660
WIDTH="100%"
Packit 352660
>
Packit 352660
>
Packit 352660
>
Packit 352660
CLASS="PROGRAMLISTING"
Packit 352660
>      FcResult Values
Packit 352660
        Result Code             Meaning
Packit 352660
        -----------------------------------------------------------
Packit 352660
        FcResultMatch           Object exists with the specified ID
Packit 352660
        FcResultNoMatch         Object doesn't exist at all
Packit 352660
        FcResultTypeMismatch    Object exists, but the type doesn't match
Packit 352660
        FcResultNoId            Object exists, but has fewer values
Packit 352660
                                than specified
Packit 352660
        FcResultOutOfMemory     malloc failed
Packit 352660
    
Packit 352660
>
Packit 352660
>
Packit 352660
>
Packit 352660
>
Packit 352660
    
Packit 352660
>
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
NAME="AEN97"
Packit 352660
>FcAtomic
Packit 352660
>
Packit 352660
>
Packit 352660
>Used for locking access to configuration files.  Provides a safe way to update
Packit 352660
configuration files.
Packit 352660
    
Packit 352660
>
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
CLASS="SECT2"
Packit 352660
>
Packit 352660
NAME="AEN100"
Packit 352660
>FcCache
Packit 352660
>
Packit 352660
>
Packit 352660
>Holds information about the fonts contained in a single directory. Normal
Packit 352660
applications need not worry about this as caches for font access are
Packit 352660
automatically managed by the library. Applications dealing with cache
Packit 352660
management may want to use some of these objects in their work, however the
Packit 352660
included 'fc-cache' program generally suffices for all of that.
Packit 352660
    
Packit 352660
>
Packit 352660
>
Packit 352660
>
Packit 352660
CLASS="NAVFOOTER"
Packit 352660
>
Packit 352660
ALIGN="LEFT"
Packit 352660
WIDTH="100%">
Packit 352660
SUMMARY="Footer navigation table"
Packit 352660
WIDTH="100%"
Packit 352660
BORDER="0"
Packit 352660
CELLPADDING="0"
Packit 352660
CELLSPACING="0"
Packit 352660
>
Packit 352660
>
Packit 352660
WIDTH="33%"
Packit 352660
ALIGN="left"
Packit 352660
VALIGN="top"
Packit 352660
>
Packit 352660
HREF="x19.html"
Packit 352660
ACCESSKEY="P"
Packit 352660
><<< Previous
Packit 352660
>
Packit 352660
>
Packit 352660
WIDTH="34%"
Packit 352660
ALIGN="center"
Packit 352660
VALIGN="top"
Packit 352660
>
Packit 352660
HREF="t1.html"
Packit 352660
ACCESSKEY="H"
Packit 352660
>Home
Packit 352660
>
Packit 352660
>
Packit 352660
WIDTH="33%"
Packit 352660
ALIGN="right"
Packit 352660
VALIGN="top"
Packit 352660
>
Packit 352660
HREF="x103.html"
Packit 352660
ACCESSKEY="N"
Packit 352660
>Next >>>
Packit 352660
>
Packit 352660
>
Packit 352660
>
Packit 352660
>
Packit 352660
WIDTH="33%"
Packit 352660
ALIGN="left"
Packit 352660
VALIGN="top"
Packit 352660
>FUNCTIONAL OVERVIEW
Packit 352660
>
Packit 352660
WIDTH="34%"
Packit 352660
ALIGN="center"
Packit 352660
VALIGN="top"
Packit 352660
Packit 352660
>
Packit 352660
WIDTH="33%"
Packit 352660
ALIGN="right"
Packit 352660
VALIGN="top"
Packit 352660
>FUNCTIONS
Packit 352660
>
Packit 352660
>
Packit 352660
>
Packit 352660
>
Packit 352660
>
Packit 352660
>