fontconfig-devel.txt revision c9710b42
1c9710b42Smrg                Fontconfig Developers Reference, Version 2.10.93
22c393a42Smrg
3ca08ab68Smrg   Copyright © 2002 Keith Packard
42c393a42Smrg
5ca08ab68Smrg   Permission to use, copy, modify, distribute, and sell this software and
6ca08ab68Smrg   its documentation for any purpose is hereby granted without fee, provided
7ca08ab68Smrg   that the above copyright notice appear in all copies and that both that
8ca08ab68Smrg   copyright notice and this permission notice appear in supporting
9ca08ab68Smrg   documentation, and that the name of the author(s) not be used in
10ca08ab68Smrg   advertising or publicity pertaining to distribution of the software
11ca08ab68Smrg   without specific, written prior permission. The authors make no
12ca08ab68Smrg   representations about the suitability of this software for any purpose. It
13ca08ab68Smrg   is provided "as is" without express or implied warranty.
142c393a42Smrg
15ca08ab68Smrg   THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
16ca08ab68Smrg   INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
17ca08ab68Smrg   EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
18ca08ab68Smrg   CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
19ca08ab68Smrg   USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
20ca08ab68Smrg   OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
21ca08ab68Smrg   PERFORMANCE OF THIS SOFTWARE.
222c393a42Smrg
23ca08ab68Smrg            -------------------------------------------------------
242c393a42Smrg
25ca08ab68Smrg   Table of Contents
26ca08ab68Smrg
27ca08ab68Smrg   [1]DESCRIPTION
28ca08ab68Smrg
29ca08ab68Smrg   [2]FUNCTIONAL OVERVIEW
30ca08ab68Smrg
31ca08ab68Smrg   [3]Datatypes
32ca08ab68Smrg
33ca08ab68Smrg   [4]FUNCTIONS
342c393a42Smrg
35a6844aabSmrgDESCRIPTION
362c393a42Smrg
37ca08ab68Smrg   Fontconfig is a library designed to provide system-wide font
38ca08ab68Smrg   configuration, customization and application access.
392c393a42Smrg
40ca08ab68Smrg   --------------------------------------------------------------------------
412c393a42Smrg
42a6844aabSmrgFUNCTIONAL OVERVIEW
43a6844aabSmrg
44ca08ab68Smrg   Fontconfig contains two essential modules, the configuration module which
45ca08ab68Smrg   builds an internal configuration from XML files and the matching module
46ca08ab68Smrg   which accepts font patterns and returns the nearest matching font.
47a6844aabSmrg
48ca08ab68Smrg   --------------------------------------------------------------------------
49a6844aabSmrg
50ca08ab68Smrg  FONT CONFIGURATION
51a6844aabSmrg
52ca08ab68Smrg   The configuration module consists of the FcConfig datatype, libexpat and
53ca08ab68Smrg   FcConfigParse which walks over an XML tree and amends a configuration with
54ca08ab68Smrg   data found within. From an external perspective, configuration of the
55ca08ab68Smrg   library consists of generating a valid XML tree and feeding that to
56ca08ab68Smrg   FcConfigParse. The only other mechanism provided to applications for
57ca08ab68Smrg   changing the running configuration is to add fonts and directories to the
58ca08ab68Smrg   list of application-provided font files.
59a6844aabSmrg
60ca08ab68Smrg   The intent is to make font configurations relatively static, and shared by
61ca08ab68Smrg   as many applications as possible. It is hoped that this will lead to more
62ca08ab68Smrg   stable font selection when passing names from one application to another.
63ca08ab68Smrg   XML was chosen as a configuration file format because it provides a format
64ca08ab68Smrg   which is easy for external agents to edit while retaining the correct
65ca08ab68Smrg   structure and syntax.
66a6844aabSmrg
67ca08ab68Smrg   Font configuration is separate from font matching; applications needing to
68ca08ab68Smrg   do their own matching can access the available fonts from the library and
69ca08ab68Smrg   perform private matching. The intent is to permit applications to pick and
70ca08ab68Smrg   choose appropriate functionality from the library instead of forcing them
71ca08ab68Smrg   to choose between this library and a private configuration mechanism. The
72ca08ab68Smrg   hope is that this will ensure that configuration of fonts for all
73ca08ab68Smrg   applications can be centralized in one place. Centralizing font
74ca08ab68Smrg   configuration will simplify and regularize font installation and
75ca08ab68Smrg   customization.
76a6844aabSmrg
77ca08ab68Smrg   --------------------------------------------------------------------------
78a6844aabSmrg
79ca08ab68Smrg  FONT PROPERTIES
80a6844aabSmrg
81ca08ab68Smrg   While font patterns may contain essentially any properties, there are some
82ca08ab68Smrg   well known properties with associated types. Fontconfig uses some of these
83ca08ab68Smrg   properties for font matching and font completion. Others are provided as a
84ca08ab68Smrg   convenience for the application's rendering mechanism.
852c393a42Smrg
862c393a42Smrg                 Property Definitions
872c393a42Smrg
88ca08ab68Smrg    Property       C Preprocessor Symbol  Type    Description
892c393a42Smrg    ----------------------------------------------------
90ca08ab68Smrg    family         FC_FAMILY              String  Font family names
91ca08ab68Smrg    familylang     FC_FAMILYLANG          String  Language corresponding to
92ca08ab68Smrg                                                  each family name
93ca08ab68Smrg    style          FC_STYLE               String  Font style. Overrides weight
94ca08ab68Smrg                                                  and slant
95ca08ab68Smrg    stylelang      FC_STYLELANG           String  Language corresponding to
96ca08ab68Smrg                                                  each style name
97ca08ab68Smrg    fullname       FC_FULLNAME            String  Font face full name where
98ca08ab68Smrg                                                  different from family and
99ca08ab68Smrg                                                  family + style
100ca08ab68Smrg    fullnamelang   FC_FULLNAMELANG        String  Language corresponding to
101ca08ab68Smrg                                                  each fullname
102ca08ab68Smrg    slant          FC_SLANT               Int     Italic, oblique or roman
103ca08ab68Smrg    weight         FC_WEIGHT              Int     Light, medium, demibold,
104ca08ab68Smrg                                                  bold or black
105ca08ab68Smrg    size           FC_SIZE                Double  Point size
106ca08ab68Smrg    width          FC_WIDTH               Int     Condensed, normal or expanded
107ca08ab68Smrg    aspect         FC_ASPECT              Double  Stretches glyphs horizontally
108ca08ab68Smrg                                                  before hinting
109ca08ab68Smrg    pixelsize      FC_PIXEL_SIZE          Double  Pixel size
110ca08ab68Smrg    spacing        FC_SPACING             Int     Proportional, dual-width,
111ca08ab68Smrg                                                  monospace or charcell
112ca08ab68Smrg    foundry        FC_FOUNDRY             String  Font foundry name
113ca08ab68Smrg    antialias      FC_ANTIALIAS           Bool    Whether glyphs can be
114ca08ab68Smrg                                                  antialiased
115ca08ab68Smrg    hinting        FC_HINTING             Bool    Whether the rasterizer should
116ca08ab68Smrg                                                  use hinting
117ca08ab68Smrg    hintstyle      FC_HINT_STYLE          Int     Automatic hinting style
118ca08ab68Smrg    verticallayout FC_VERTICAL_LAYOUT     Bool    Use vertical layout
119ca08ab68Smrg    autohint       FC_AUTOHINT            Bool    Use autohinter instead of
120ca08ab68Smrg                                                  normal hinter
121ca08ab68Smrg    globaladvance  FC_GLOBAL_ADVANCE      Bool    Use font global advance data (deprecated)
122ca08ab68Smrg    file           FC_FILE                String  The filename holding the font
123ca08ab68Smrg    index          FC_INDEX               Int     The index of the font within
124ca08ab68Smrg                                                  the file
125ca08ab68Smrg    ftface         FC_FT_FACE             FT_Face Use the specified FreeType
126ca08ab68Smrg                                                  face object
127ca08ab68Smrg    rasterizer     FC_RASTERIZER          String  Which rasterizer is in use
128ca08ab68Smrg    outline        FC_OUTLINE             Bool    Whether the glyphs are outlines
129ca08ab68Smrg    scalable       FC_SCALABLE            Bool    Whether glyphs can be scaled
130ca08ab68Smrg    scale          FC_SCALE               Double  Scale factor for point->pixel
131ca08ab68Smrg                                                  conversions
132ca08ab68Smrg    dpi            FC_DPI                 Double  Target dots per inch
133ca08ab68Smrg    rgba           FC_RGBA                Int     unknown, rgb, bgr, vrgb,
134ca08ab68Smrg                                                  vbgr, none - subpixel geometry
135ca08ab68Smrg    lcdfilter      FC_LCD_FILTER          Int     Type of LCD filter
136ca08ab68Smrg    minspace       FC_MINSPACE            Bool    Eliminate leading from line
137ca08ab68Smrg                                                  spacing
138ca08ab68Smrg    charset        FC_CHARSET             CharSet Unicode chars encoded by
139ca08ab68Smrg                                                  the font
140ca08ab68Smrg    lang           FC_LANG                LangSet Set of RFC-3066-style
141ca08ab68Smrg                                                  languages this font supports
142ca08ab68Smrg    fontversion    FC_FONTVERSION         Int     Version number of the font
143ca08ab68Smrg    capability     FC_CAPABILITY          String  List of layout capabilities in
144ca08ab68Smrg                                                  the font
145ca08ab68Smrg    embolden       FC_EMBOLDEN            Bool    Rasterizer should
146ca08ab68Smrg                                                  synthetically embolden the font
147c9710b42Smrg    fontfeatures   FC_FONT_FEATURES       String  List of extra feature tags in
148c9710b42Smrg                                                  OpenType to be enabled
149ca08ab68Smrg    namelang       FC_NAMELANG            String  Language name to be used for the
150ca08ab68Smrg                                                  default value of familylang,
151ca08ab68Smrg                                                  stylelang and fullnamelang
152c9710b42Smrg    prgname        FC_PRGNAME             String  Name of the running program
153ca08ab68Smrg
154ca08ab68Smrg
155ca08ab68Smrg   --------------------------------------------------------------------------
156a6844aabSmrg
157a6844aabSmrgDatatypes
1582c393a42Smrg
159ca08ab68Smrg   Fontconfig uses abstract data types to hide internal implementation
160ca08ab68Smrg   details for most data structures. A few structures are exposed where
161ca08ab68Smrg   appropriate.
1622c393a42Smrg
163ca08ab68Smrg   --------------------------------------------------------------------------
1642c393a42Smrg
165ca08ab68Smrg  FcChar8, FcChar16, FcChar32, FcBool
1662c393a42Smrg
167ca08ab68Smrg   These are primitive data types; the FcChar* types hold precisely the
168ca08ab68Smrg   number of bits stated (if supported by the C implementation). FcBool holds
169ca08ab68Smrg   one of two C preprocessor symbols: FcFalse or FcTrue.
1702c393a42Smrg
171ca08ab68Smrg   --------------------------------------------------------------------------
172a6844aabSmrg
173ca08ab68Smrg  FcMatrix
174a6844aabSmrg
175ca08ab68Smrg   An FcMatrix holds an affine transformation, usually used to reshape
176ca08ab68Smrg   glyphs. A small set of matrix operations are provided to manipulate these.
1772c393a42Smrg
178ca08ab68Smrg           typedef struct _FcMatrix {
179ca08ab68Smrg                   double xx, xy, yx, yy;
180ca08ab68Smrg           } FcMatrix;
1812c393a42Smrg
1822c393a42Smrg
183ca08ab68Smrg   --------------------------------------------------------------------------
184a6844aabSmrg
185ca08ab68Smrg  FcCharSet
186a6844aabSmrg
187ca08ab68Smrg   An FcCharSet is an abstract type that holds the set of encoded Unicode
188ca08ab68Smrg   chars in a font. Operations to build and compare these sets are provided.
189a6844aabSmrg
190ca08ab68Smrg   --------------------------------------------------------------------------
191a6844aabSmrg
192ca08ab68Smrg  FcLangSet
1932c393a42Smrg
194ca08ab68Smrg   An FcLangSet is an abstract type that holds the set of languages supported
195ca08ab68Smrg   by a font. Operations to build and compare these sets are provided. These
196ca08ab68Smrg   are computed for a font based on orthographic information built into the
197ca08ab68Smrg   fontconfig library. Fontconfig has orthographies for all of the ISO 639-1
198ca08ab68Smrg   languages except for MS, NA, PA, PS, QU, RN, RW, SD, SG, SN, SU and ZA. If
199ca08ab68Smrg   you have orthographic information for any of these languages, please
200ca08ab68Smrg   submit them.
2012c393a42Smrg
202ca08ab68Smrg   --------------------------------------------------------------------------
2032c393a42Smrg
204ca08ab68Smrg  FcLangResult
2052c393a42Smrg
206ca08ab68Smrg   An FcLangResult is an enumeration used to return the results of comparing
207ca08ab68Smrg   two language strings or FcLangSet objects. FcLangEqual means the objects
208ca08ab68Smrg   match language and territory. FcLangDifferentTerritory means the objects
209ca08ab68Smrg   match in language but differ in territory. FcLangDifferentLang means the
210ca08ab68Smrg   objects differ in language.
2112c393a42Smrg
212ca08ab68Smrg   --------------------------------------------------------------------------
2132c393a42Smrg
214ca08ab68Smrg  FcType
2152c393a42Smrg
216ca08ab68Smrg   Tags the kind of data stored in an FcValue.
217a6844aabSmrg
218ca08ab68Smrg   --------------------------------------------------------------------------
219a6844aabSmrg
220ca08ab68Smrg  FcValue
221a6844aabSmrg
222ca08ab68Smrg   An FcValue object holds a single value with one of a number of different
223ca08ab68Smrg   types. The 'type' tag indicates which member is valid.
2242c393a42Smrg
225ca08ab68Smrg           typedef struct _FcValue {
226ca08ab68Smrg                   FcType type;
227ca08ab68Smrg                   union {
228ca08ab68Smrg                           const FcChar8 *s;
229ca08ab68Smrg                           int i;
230ca08ab68Smrg                           FcBool b;
231ca08ab68Smrg                           double d;
232ca08ab68Smrg                           const FcMatrix *m;
233ca08ab68Smrg                           const FcCharSet *c;
234ca08ab68Smrg                           void *f;
235ca08ab68Smrg                           const FcLangSet *l;
236ca08ab68Smrg                   } u;
237ca08ab68Smrg           } FcValue;
2382c393a42Smrg
239a6844aabSmrg
240ca08ab68Smrg                     FcValue Members
2412c393a42Smrg
242ca08ab68Smrg           Type            Union member    Datatype
243ca08ab68Smrg           --------------------------------
244ca08ab68Smrg           FcTypeVoid      (none)          (none)
245ca08ab68Smrg           FcTypeInteger   i               int
246ca08ab68Smrg           FcTypeDouble    d               double
247ca08ab68Smrg           FcTypeString    s               FcChar8 *
248ca08ab68Smrg           FcTypeBool      b               b
249ca08ab68Smrg           FcTypeMatrix    m               FcMatrix *
250ca08ab68Smrg           FcTypeCharSet   c               FcCharSet *
251ca08ab68Smrg           FcTypeFTFace    f               void * (FT_Face)
252ca08ab68Smrg           FcTypeLangSet   l               FcLangSet *
2532c393a42Smrg
2542c393a42Smrg
255ca08ab68Smrg   --------------------------------------------------------------------------
256a6844aabSmrg
257ca08ab68Smrg  FcPattern
2582c393a42Smrg
259ca08ab68Smrg   holds a set of names with associated value lists; each name refers to a
260ca08ab68Smrg   property of a font. FcPatterns are used as inputs to the matching code as
261ca08ab68Smrg   well as holding information about specific fonts. Each property can hold
262ca08ab68Smrg   one or more values; conventionally all of the same type, although the
263ca08ab68Smrg   interface doesn't demand that.
264a6844aabSmrg
265ca08ab68Smrg   --------------------------------------------------------------------------
266a6844aabSmrg
267ca08ab68Smrg  FcFontSet
2682c393a42Smrg
269ca08ab68Smrg           typedef struct _FcFontSet {
270ca08ab68Smrg                   int nfont;
271ca08ab68Smrg                   int sfont;
272ca08ab68Smrg                   FcPattern **fonts;
273ca08ab68Smrg           } FcFontSet;
2742c393a42Smrg
2752c393a42Smrg
276ca08ab68Smrg   An FcFontSet contains a list of FcPatterns. Internally fontconfig uses
277ca08ab68Smrg   this data structure to hold sets of fonts. Externally, fontconfig returns
278ca08ab68Smrg   the results of listing fonts in this format. 'nfont' holds the number of
279ca08ab68Smrg   patterns in the 'fonts' array; 'sfont' is used to indicate the size of
280ca08ab68Smrg   that array.
281a6844aabSmrg
282ca08ab68Smrg   --------------------------------------------------------------------------
2832c393a42Smrg
284ca08ab68Smrg  FcStrSet, FcStrList
2852c393a42Smrg
286ca08ab68Smrg   FcStrSet holds a list of strings that can be appended to and enumerated.
287ca08ab68Smrg   Its unique characteristic is that the enumeration works even while strings
288ca08ab68Smrg   are appended during enumeration. FcStrList is used during enumeration to
289ca08ab68Smrg   safely and correctly walk the list of strings even while that list is
290ca08ab68Smrg   edited in the middle of enumeration.
291a6844aabSmrg
292ca08ab68Smrg   --------------------------------------------------------------------------
293a6844aabSmrg
294ca08ab68Smrg  FcObjectSet
2952c393a42Smrg
296ca08ab68Smrg           typedef struct _FcObjectSet {
297ca08ab68Smrg                   int nobject;
298ca08ab68Smrg                   int sobject;
299ca08ab68Smrg                   const char **objects;
300ca08ab68Smrg           } FcObjectSet;
3012c393a42Smrg
3022c393a42Smrg
303ca08ab68Smrg   holds a set of names and is used to specify which fields from fonts are
304ca08ab68Smrg   placed in the the list of returned patterns when listing fonts.
305a6844aabSmrg
306ca08ab68Smrg   --------------------------------------------------------------------------
307a6844aabSmrg
308ca08ab68Smrg  FcObjectType
3092c393a42Smrg
310ca08ab68Smrg           typedef struct _FcObjectType {
311ca08ab68Smrg                   const char *object;
312ca08ab68Smrg                   FcType type;
313ca08ab68Smrg           } FcObjectType;
3142c393a42Smrg
3152c393a42Smrg
316ca08ab68Smrg   marks the type of a pattern element generated when parsing font names.
317ca08ab68Smrg   Applications can add new object types so that font names may contain the
318ca08ab68Smrg   new elements.
319a6844aabSmrg
320ca08ab68Smrg   --------------------------------------------------------------------------
321a6844aabSmrg
322ca08ab68Smrg  FcConstant
3232c393a42Smrg
324ca08ab68Smrg           typedef struct _FcConstant {
325ca08ab68Smrg               const FcChar8 *name;
326ca08ab68Smrg               const char *object;
327ca08ab68Smrg               int value;
328ca08ab68Smrg           } FcConstant;
3292c393a42Smrg
3302c393a42Smrg
331ca08ab68Smrg   Provides for symbolic constants for new pattern elements. When 'name' is
332ca08ab68Smrg   seen in a font name, an 'object' element is created with value 'value'.
333a6844aabSmrg
334ca08ab68Smrg   --------------------------------------------------------------------------
335a6844aabSmrg
336ca08ab68Smrg  FcBlanks
337a6844aabSmrg
338ca08ab68Smrg   holds a list of Unicode chars which are expected to be blank; unexpectedly
339ca08ab68Smrg   blank chars are assumed to be invalid and are elided from the charset
340ca08ab68Smrg   associated with the font.
3412c393a42Smrg
342ca08ab68Smrg   --------------------------------------------------------------------------
3432c393a42Smrg
344ca08ab68Smrg  FcFileCache
3452c393a42Smrg
346ca08ab68Smrg   holds the per-user cache information for use while loading the font
347ca08ab68Smrg   database. This is built automatically for the current configuration when
348ca08ab68Smrg   that is loaded. Applications must always pass '0' when one is requested.
3492c393a42Smrg
350ca08ab68Smrg   --------------------------------------------------------------------------
3512c393a42Smrg
352ca08ab68Smrg  FcConfig
3532c393a42Smrg
354ca08ab68Smrg   holds a complete configuration of the library; there is one default
355ca08ab68Smrg   configuration, other can be constructed from XML data structures. All
356ca08ab68Smrg   public entry points that need global data can take an optional FcConfig*
357ca08ab68Smrg   argument; passing 0 uses the default configuration. FcConfig objects hold
358ca08ab68Smrg   two sets of fonts, the first contains those specified by the
359ca08ab68Smrg   configuration, the second set holds those added by the application at
360ca08ab68Smrg   run-time. Interfaces that need to reference a particular set use one of
361ca08ab68Smrg   the FcSetName enumerated values.
3622c393a42Smrg
363ca08ab68Smrg   --------------------------------------------------------------------------
3642c393a42Smrg
365ca08ab68Smrg  FcSetName
366a6844aabSmrg
367ca08ab68Smrg   Specifies one of the two sets of fonts available in a configuration;
368ca08ab68Smrg   FcSetSystem for those fonts specified in the configuration and
369ca08ab68Smrg   FcSetApplication which holds fonts provided by the application.
370a6844aabSmrg
371ca08ab68Smrg   --------------------------------------------------------------------------
372a6844aabSmrg
373ca08ab68Smrg  FcResult
374a6844aabSmrg
375ca08ab68Smrg   Used as a return type for functions manipulating FcPattern objects.
3762c393a42Smrg
377ca08ab68Smrg         FcResult Values
378ca08ab68Smrg           Result Code             Meaning
379ca08ab68Smrg           -----------------------------------------------------------
380ca08ab68Smrg           FcResultMatch           Object exists with the specified ID
381ca08ab68Smrg           FcResultNoMatch         Object doesn't exist at all
382ca08ab68Smrg           FcResultTypeMismatch    Object exists, but the type doesn't match
383ca08ab68Smrg           FcResultNoId            Object exists, but has fewer values
384ca08ab68Smrg                                   than specified
385ca08ab68Smrg           FcResultOutOfMemory     malloc failed
3862c393a42Smrg
3872c393a42Smrg
388ca08ab68Smrg   --------------------------------------------------------------------------
389a6844aabSmrg
390ca08ab68Smrg  FcAtomic
391a6844aabSmrg
392ca08ab68Smrg   Used for locking access to configuration files. Provides a safe way to
393ca08ab68Smrg   update configuration files.
3942c393a42Smrg
395ca08ab68Smrg   --------------------------------------------------------------------------
3962c393a42Smrg
397ca08ab68Smrg  FcCache
3982c393a42Smrg
399ca08ab68Smrg   Holds information about the fonts contained in a single directory. Normal
400ca08ab68Smrg   applications need not worry about this as caches for font access are
401ca08ab68Smrg   automatically managed by the library. Applications dealing with cache
402ca08ab68Smrg   management may want to use some of these objects in their work, however
403ca08ab68Smrg   the included 'fc-cache' program generally suffices for all of that.
4042c393a42Smrg
405ca08ab68Smrg   --------------------------------------------------------------------------
4062c393a42Smrg
407a6844aabSmrgFUNCTIONS
4082c393a42Smrg
409ca08ab68Smrg   These are grouped by functionality, often using the main data type being
410ca08ab68Smrg   manipulated.
411ca08ab68Smrg
412ca08ab68Smrg   --------------------------------------------------------------------------
4132c393a42Smrg
414ca08ab68Smrg  Initialization
415a6844aabSmrg
416ca08ab68Smrg   Table of Contents
417a6844aabSmrg
418ca08ab68Smrg   [5]FcInitLoadConfig -- load configuration
419a6844aabSmrg
420ca08ab68Smrg   [6]FcInitLoadConfigAndFonts -- load configuration and font data
4212c393a42Smrg
422ca08ab68Smrg   [7]FcInit -- initialize fontconfig library
423ca08ab68Smrg
424ca08ab68Smrg   [8]FcFini -- finalize fontconfig library
425ca08ab68Smrg
426ca08ab68Smrg   [9]FcGetVersion -- library version number
427ca08ab68Smrg
428ca08ab68Smrg   [10]FcInitReinitialize -- re-initialize library
429ca08ab68Smrg
430ca08ab68Smrg   [11]FcInitBringUptoDate -- reload configuration files if needed
431ca08ab68Smrg
432ca08ab68Smrg   These functions provide some control over how the library is initialized.
433ca08ab68Smrg
434ca08ab68Smrg                                FcInitLoadConfig
4352c393a42Smrg
4362c393a42SmrgName
4372c393a42Smrg
438ca08ab68Smrg   FcInitLoadConfig -- load configuration
4392c393a42Smrg
4402c393a42SmrgSynopsis
4412c393a42Smrg
442c9710b42Smrg   #include <fontconfig/fontconfig.h>
4432c393a42Smrg
444a6844aabSmrg
445ca08ab68Smrg   FcConfig * FcInitLoadConfig(void);
4462c393a42Smrg
4472c393a42SmrgDescription
4482c393a42Smrg
449ca08ab68Smrg   Loads the default configuration file and returns the resulting
450ca08ab68Smrg   configuration. Does not load any font information.
4512c393a42Smrg
4522c393a42SmrgVersion
4532c393a42Smrg
454c9710b42Smrg   Fontconfig version 2.10.93
4552c393a42Smrg
456ca08ab68Smrg                            FcInitLoadConfigAndFonts
4572c393a42Smrg
4582c393a42SmrgName
4592c393a42Smrg
460ca08ab68Smrg   FcInitLoadConfigAndFonts -- load configuration and font data
4612c393a42Smrg
4622c393a42SmrgSynopsis
4632c393a42Smrg
464c9710b42Smrg   #include <fontconfig/fontconfig.h>
4652c393a42Smrg
466a6844aabSmrg
467ca08ab68Smrg   FcConfig * FcInitLoadConfigAndFonts(void);
4682c393a42Smrg
4692c393a42SmrgDescription
4702c393a42Smrg
471ca08ab68Smrg   Loads the default configuration file and builds information about the
472ca08ab68Smrg   available fonts. Returns the resulting configuration.
4732c393a42Smrg
4742c393a42SmrgVersion
4752c393a42Smrg
476c9710b42Smrg   Fontconfig version 2.10.93
4772c393a42Smrg
478ca08ab68Smrg                                     FcInit
4792c393a42Smrg
4802c393a42SmrgName
4812c393a42Smrg
482ca08ab68Smrg   FcInit -- initialize fontconfig library
4832c393a42Smrg
4842c393a42SmrgSynopsis
4852c393a42Smrg
486c9710b42Smrg   #include <fontconfig/fontconfig.h>
4872c393a42Smrg
488a6844aabSmrg
489ca08ab68Smrg   FcBool FcInit(void);
4902c393a42Smrg
4912c393a42SmrgDescription
4922c393a42Smrg
493ca08ab68Smrg   Loads the default configuration file and the fonts referenced therein and
494ca08ab68Smrg   sets the default configuration to that result. Returns whether this
495ca08ab68Smrg   process succeeded or not. If the default configuration has already been
496ca08ab68Smrg   loaded, this routine does nothing and returns FcTrue.
4972c393a42Smrg
4982c393a42SmrgVersion
4992c393a42Smrg
500c9710b42Smrg   Fontconfig version 2.10.93
5012c393a42Smrg
502ca08ab68Smrg                                     FcFini
5032c393a42Smrg
5042c393a42SmrgName
5052c393a42Smrg
506ca08ab68Smrg   FcFini -- finalize fontconfig library
5072c393a42Smrg
5082c393a42SmrgSynopsis
5092c393a42Smrg
510c9710b42Smrg   #include <fontconfig/fontconfig.h>
5112c393a42Smrg
512a6844aabSmrg
513ca08ab68Smrg   void FcFini(void);
5142c393a42Smrg
5152c393a42SmrgDescription
5162c393a42Smrg
517ca08ab68Smrg   Frees all data structures allocated by previous calls to fontconfig
518ca08ab68Smrg   functions. Fontconfig returns to an uninitialized state, requiring a new
519ca08ab68Smrg   call to one of the FcInit functions before any other fontconfig function
520ca08ab68Smrg   may be called.
5212c393a42Smrg
5222c393a42SmrgVersion
5232c393a42Smrg
524c9710b42Smrg   Fontconfig version 2.10.93
5252c393a42Smrg
526ca08ab68Smrg                                  FcGetVersion
5272c393a42Smrg
5282c393a42SmrgName
5292c393a42Smrg
530ca08ab68Smrg   FcGetVersion -- library version number
5312c393a42Smrg
5322c393a42SmrgSynopsis
5332c393a42Smrg
534c9710b42Smrg   #include <fontconfig/fontconfig.h>
5352c393a42Smrg
536a6844aabSmrg
537ca08ab68Smrg   int FcGetVersion(void);
5382c393a42Smrg
5392c393a42SmrgDescription
5402c393a42Smrg
541ca08ab68Smrg   Returns the version number of the library.
5422c393a42Smrg
5432c393a42SmrgVersion
5442c393a42Smrg
545c9710b42Smrg   Fontconfig version 2.10.93
5462c393a42Smrg
547ca08ab68Smrg                               FcInitReinitialize
5482c393a42Smrg
5492c393a42SmrgName
5502c393a42Smrg
551ca08ab68Smrg   FcInitReinitialize -- re-initialize library
5522c393a42Smrg
5532c393a42SmrgSynopsis
5542c393a42Smrg
555c9710b42Smrg   #include <fontconfig/fontconfig.h>
5562c393a42Smrg
557a6844aabSmrg
558ca08ab68Smrg   FcBool FcInitReinitialize(void);
5592c393a42Smrg
5602c393a42SmrgDescription
5612c393a42Smrg
562ca08ab68Smrg   Forces the default configuration file to be reloaded and resets the
563ca08ab68Smrg   default configuration. Returns FcFalse if the configuration cannot be
564ca08ab68Smrg   reloaded (due to configuration file errors, allocation failures or other
565ca08ab68Smrg   issues) and leaves the existing configuration unchanged. Otherwise returns
566ca08ab68Smrg   FcTrue.
5672c393a42Smrg
5682c393a42SmrgVersion
5692c393a42Smrg
570c9710b42Smrg   Fontconfig version 2.10.93
5712c393a42Smrg
572ca08ab68Smrg                              FcInitBringUptoDate
5732c393a42Smrg
5742c393a42SmrgName
5752c393a42Smrg
576ca08ab68Smrg   FcInitBringUptoDate -- reload configuration files if needed
5772c393a42Smrg
5782c393a42SmrgSynopsis
5792c393a42Smrg
580c9710b42Smrg   #include <fontconfig/fontconfig.h>
5812c393a42Smrg
582a6844aabSmrg
583ca08ab68Smrg   FcBool FcInitBringUptoDate(void);
5842c393a42Smrg
5852c393a42SmrgDescription
5862c393a42Smrg
587ca08ab68Smrg   Checks the rescan interval in the default configuration, checking the
588ca08ab68Smrg   configuration if the interval has passed and reloading the configuration
589ca08ab68Smrg   if when any changes are detected. Returns FcFalse if the configuration
590ca08ab68Smrg   cannot be reloaded (see FcInitReinitialize). Otherwise returns FcTrue.
5912c393a42Smrg
5922c393a42SmrgVersion
5932c393a42Smrg
594c9710b42Smrg   Fontconfig version 2.10.93
595ca08ab68Smrg
596ca08ab68Smrg   --------------------------------------------------------------------------
597ca08ab68Smrg
598ca08ab68Smrg  FcPattern
599ca08ab68Smrg
600ca08ab68Smrg   Table of Contents
601ca08ab68Smrg
602ca08ab68Smrg   [12]FcPatternCreate -- Create a pattern
603ca08ab68Smrg
604ca08ab68Smrg   [13]FcPatternDuplicate -- Copy a pattern
605ca08ab68Smrg
606ca08ab68Smrg   [14]FcPatternReference -- Increment pattern reference count
607ca08ab68Smrg
608ca08ab68Smrg   [15]FcPatternDestroy -- Destroy a pattern
609ca08ab68Smrg
610ca08ab68Smrg   [16]FcPatternEqual -- Compare patterns
611ca08ab68Smrg
612ca08ab68Smrg   [17]FcPatternEqualSubset -- Compare portions of patterns
613ca08ab68Smrg
614ca08ab68Smrg   [18]FcPatternFilter -- Filter the objects of pattern
615ca08ab68Smrg
616ca08ab68Smrg   [19]FcPatternHash -- Compute a pattern hash value
617ca08ab68Smrg
618ca08ab68Smrg   [20]FcPatternAdd -- Add a value to a pattern
619ca08ab68Smrg
620ca08ab68Smrg   [21]FcPatternAddWeak -- Add a value to a pattern with weak binding
621ca08ab68Smrg
622ca08ab68Smrg   [22]FcPatternAdd-Type -- Add a typed value to a pattern
623ca08ab68Smrg
624ca08ab68Smrg   [23]FcPatternGet -- Return a value from a pattern
625ca08ab68Smrg
626ca08ab68Smrg   [24]FcPatternGet-Type -- Return a typed value from a pattern
627ca08ab68Smrg
628ca08ab68Smrg   [25]FcPatternBuild -- Create patterns from arguments
629ca08ab68Smrg
630ca08ab68Smrg   [26]FcPatternDel -- Delete a property from a pattern
631ca08ab68Smrg
632ca08ab68Smrg   [27]FcPatternRemove -- Remove one object of the specified type from the
633ca08ab68Smrg   pattern
634ca08ab68Smrg
635ca08ab68Smrg   [28]FcPatternPrint -- Print a pattern for debugging
636ca08ab68Smrg
637ca08ab68Smrg   [29]FcDefaultSubstitute -- Perform default substitutions in a pattern
6382c393a42Smrg
639ca08ab68Smrg   [30]FcNameParse -- Parse a pattern string
6402c393a42Smrg
641ca08ab68Smrg   [31]FcNameUnparse -- Convert a pattern back into a string that can be
642ca08ab68Smrg   parsed
6432c393a42Smrg
644ca08ab68Smrg   [32]FcPatternFormat -- Format a pattern into a string according to a
645ca08ab68Smrg   format specifier
6462c393a42Smrg
647ca08ab68Smrg   An FcPattern is an opaque type that holds both patterns to match against
648ca08ab68Smrg   the available fonts, as well as the information about each font.
6492c393a42Smrg
650ca08ab68Smrg                                FcPatternCreate
6512c393a42Smrg
6522c393a42SmrgName
6532c393a42Smrg
654ca08ab68Smrg   FcPatternCreate -- Create a pattern
6552c393a42Smrg
6562c393a42SmrgSynopsis
6572c393a42Smrg
658c9710b42Smrg   #include <fontconfig/fontconfig.h>
6592c393a42Smrg
660a6844aabSmrg
661ca08ab68Smrg   FcPattern * FcPatternCreate(void);
6622c393a42Smrg
6632c393a42SmrgDescription
6642c393a42Smrg
665ca08ab68Smrg   Creates a pattern with no properties; used to build patterns from scratch.
6662c393a42Smrg
6672c393a42SmrgVersion
6682c393a42Smrg
669c9710b42Smrg   Fontconfig version 2.10.93
6702c393a42Smrg
671ca08ab68Smrg                               FcPatternDuplicate
6722c393a42Smrg
6732c393a42SmrgName
6742c393a42Smrg
675ca08ab68Smrg   FcPatternDuplicate -- Copy a pattern
6762c393a42Smrg
6772c393a42SmrgSynopsis
6782c393a42Smrg
679c9710b42Smrg   #include <fontconfig/fontconfig.h>
6802c393a42Smrg
681a6844aabSmrg
682ca08ab68Smrg   FcPattern * FcPatternDuplicate(const FcPattern *p);
6832c393a42Smrg
6842c393a42SmrgDescription
6852c393a42Smrg
686ca08ab68Smrg   Copy a pattern, returning a new pattern that matches p. Each pattern may
687ca08ab68Smrg   be modified without affecting the other.
6882c393a42Smrg
6892c393a42SmrgVersion
6902c393a42Smrg
691c9710b42Smrg   Fontconfig version 2.10.93
6922c393a42Smrg
693ca08ab68Smrg                               FcPatternReference
6942c393a42Smrg
6952c393a42SmrgName
6962c393a42Smrg
697ca08ab68Smrg   FcPatternReference -- Increment pattern reference count
6982c393a42Smrg
6992c393a42SmrgSynopsis
7002c393a42Smrg
701c9710b42Smrg   #include <fontconfig/fontconfig.h>
7022c393a42Smrg
703a6844aabSmrg
704ca08ab68Smrg   void FcPatternReference(FcPattern *p);
7052c393a42Smrg
7062c393a42SmrgDescription
7072c393a42Smrg
708ca08ab68Smrg   Add another reference to p. Patterns are freed only when the reference
709ca08ab68Smrg   count reaches zero.
7102c393a42Smrg
7112c393a42SmrgVersion
7122c393a42Smrg
713c9710b42Smrg   Fontconfig version 2.10.93
7142c393a42Smrg
715ca08ab68Smrg                                FcPatternDestroy
7162c393a42Smrg
7172c393a42SmrgName
7182c393a42Smrg
719ca08ab68Smrg   FcPatternDestroy -- Destroy a pattern
7202c393a42Smrg
7212c393a42SmrgSynopsis
7222c393a42Smrg
723c9710b42Smrg   #include <fontconfig/fontconfig.h>
7242c393a42Smrg
725a6844aabSmrg
726ca08ab68Smrg   void FcPatternDestroy(FcPattern *p);
7272c393a42Smrg
7282c393a42SmrgDescription
7292c393a42Smrg
730ca08ab68Smrg   Decrement the pattern reference count. If all references are gone,
731ca08ab68Smrg   destroys the pattern, in the process destroying all related values.
7322c393a42Smrg
7332c393a42SmrgVersion
7342c393a42Smrg
735c9710b42Smrg   Fontconfig version 2.10.93
7362c393a42Smrg
737ca08ab68Smrg                                 FcPatternEqual
7382c393a42Smrg
7392c393a42SmrgName
7402c393a42Smrg
741ca08ab68Smrg   FcPatternEqual -- Compare patterns
7422c393a42Smrg
7432c393a42SmrgSynopsis
7442c393a42Smrg
745c9710b42Smrg   #include <fontconfig/fontconfig.h>
7462c393a42Smrg
747a6844aabSmrg
748ca08ab68Smrg   FcBool FcPatternEqual(const FcPattern *pa, const FcPattern *pb);
7492c393a42Smrg
7502c393a42SmrgDescription
7512c393a42Smrg
752ca08ab68Smrg   Returns whether pa and pb are exactly alike.
7532c393a42Smrg
7542c393a42SmrgVersion
7552c393a42Smrg
756c9710b42Smrg   Fontconfig version 2.10.93
7572c393a42Smrg
758ca08ab68Smrg                              FcPatternEqualSubset
7592c393a42Smrg
7602c393a42SmrgName
7612c393a42Smrg
762ca08ab68Smrg   FcPatternEqualSubset -- Compare portions of patterns
7632c393a42Smrg
7642c393a42SmrgSynopsis
7652c393a42Smrg
766c9710b42Smrg   #include <fontconfig/fontconfig.h>
7672c393a42Smrg
768a6844aabSmrg
769ca08ab68Smrg   FcBool FcPatternEqualSubset(const FcPattern *pa, const FcPattern *pb,
770ca08ab68Smrg   const FcObjectSet *os);
7712c393a42Smrg
7722c393a42SmrgDescription
7732c393a42Smrg
774ca08ab68Smrg   Returns whether pa and pb have exactly the same values for all of the
775ca08ab68Smrg   objects in os.
7762c393a42Smrg
7772c393a42SmrgVersion
7782c393a42Smrg
779c9710b42Smrg   Fontconfig version 2.10.93
780a6844aabSmrg
781ca08ab68Smrg                                FcPatternFilter
782a6844aabSmrg
783a6844aabSmrgName
784a6844aabSmrg
785ca08ab68Smrg   FcPatternFilter -- Filter the objects of pattern
786a6844aabSmrg
787a6844aabSmrgSynopsis
788a6844aabSmrg
789c9710b42Smrg   #include <fontconfig/fontconfig.h>
790a6844aabSmrg
791a6844aabSmrg
792ca08ab68Smrg   FcPattern * FcPatternFilter(FcPattern *p, const FcObjectSet *);
793a6844aabSmrg
794a6844aabSmrgDescription
795a6844aabSmrg
796ca08ab68Smrg   Returns a new pattern that only has those objects from p that are in os.
797ca08ab68Smrg   If os is NULL, a duplicate of p is returned.
798a6844aabSmrg
799a6844aabSmrgVersion
800a6844aabSmrg
801c9710b42Smrg   Fontconfig version 2.10.93
8022c393a42Smrg
803ca08ab68Smrg                                 FcPatternHash
8042c393a42Smrg
8052c393a42SmrgName
8062c393a42Smrg
807ca08ab68Smrg   FcPatternHash -- Compute a pattern hash value
8082c393a42Smrg
8092c393a42SmrgSynopsis
8102c393a42Smrg
811c9710b42Smrg   #include <fontconfig/fontconfig.h>
8122c393a42Smrg
813a6844aabSmrg
814ca08ab68Smrg   FcChar32 FcPatternHash(const FcPattern *p);
8152c393a42Smrg
8162c393a42SmrgDescription
8172c393a42Smrg
818ca08ab68Smrg   Returns a 32-bit number which is the same for any two patterns which are
819ca08ab68Smrg   equal.
8202c393a42Smrg
8212c393a42SmrgVersion
8222c393a42Smrg
823c9710b42Smrg   Fontconfig version 2.10.93
8242c393a42Smrg
825ca08ab68Smrg                                  FcPatternAdd
8262c393a42Smrg
8272c393a42SmrgName
8282c393a42Smrg
829ca08ab68Smrg   FcPatternAdd -- Add a value to a pattern
8302c393a42Smrg
8312c393a42SmrgSynopsis
8322c393a42Smrg
833c9710b42Smrg   #include <fontconfig/fontconfig.h>
8342c393a42Smrg
835a6844aabSmrg
836ca08ab68Smrg   FcBool FcPatternAdd(FcPattern *p, const char *object, FcValue value,
837ca08ab68Smrg   FcBool append);
8382c393a42Smrg
8392c393a42SmrgDescription
8402c393a42Smrg
841ca08ab68Smrg   Adds a single value to the list of values associated with the property
842ca08ab68Smrg   named `object. If `append is FcTrue, the value is added at the end of any
843ca08ab68Smrg   existing list, otherwise it is inserted at the beginning. `value' is saved
844ca08ab68Smrg   (with FcValueSave) when inserted into the pattern so that the library
845ca08ab68Smrg   retains no reference to any application-supplied data structure.
8462c393a42Smrg
8472c393a42SmrgVersion
8482c393a42Smrg
849c9710b42Smrg   Fontconfig version 2.10.93
8502c393a42Smrg
851ca08ab68Smrg                                FcPatternAddWeak
8522c393a42Smrg
8532c393a42SmrgName
8542c393a42Smrg
855ca08ab68Smrg   FcPatternAddWeak -- Add a value to a pattern with weak binding
8562c393a42Smrg
8572c393a42SmrgSynopsis
8582c393a42Smrg
859c9710b42Smrg   #include <fontconfig/fontconfig.h>
8602c393a42Smrg
861a6844aabSmrg
862ca08ab68Smrg   FcBool FcPatternAddWeak(FcPattern *p, const char *object, FcValue value,
863ca08ab68Smrg   FcBool append);
8642c393a42Smrg
8652c393a42SmrgDescription
8662c393a42Smrg
867ca08ab68Smrg   FcPatternAddWeak is essentially the same as FcPatternAdd except that any
868ca08ab68Smrg   values added to the list have binding weak instead of strong.
8692c393a42Smrg
8702c393a42SmrgVersion
8712c393a42Smrg
872c9710b42Smrg   Fontconfig version 2.10.93
8732c393a42Smrg
874ca08ab68Smrg                               FcPatternAdd-Type
8752c393a42Smrg
8762c393a42SmrgName
8772c393a42Smrg
878ca08ab68Smrg   FcPatternAddInteger, FcPatternAddDouble, FcPatternAddString,
879ca08ab68Smrg   FcPatternAddMatrix, FcPatternAddCharSet, FcPatternAddBool,
880ca08ab68Smrg   FcPatternAddFTFace, FcPatternAddLangSet -- Add a typed value to a pattern
8812c393a42Smrg
8822c393a42SmrgSynopsis
8832c393a42Smrg
884c9710b42Smrg   #include <fontconfig/fontconfig.h>
8852c393a42Smrg
8862c393a42Smrg
887ca08ab68Smrg   FcBool FcPatternAddInteger(FcPattern *p, const char *object, int i);
888a6844aabSmrg
889ca08ab68Smrg   FcBool FcPatternAddDouble(FcPattern *p, const char *object, double d);
8902c393a42Smrg
891ca08ab68Smrg   FcBool FcPatternAddString(FcPattern *p, const char *object, const FcChar8
892ca08ab68Smrg   *s);
8932c393a42Smrg
894ca08ab68Smrg   FcBool FcPatternAddMatrix(FcPattern *p, const char *object, const FcMatrix
895ca08ab68Smrg   *m);
8962c393a42Smrg
897ca08ab68Smrg   FcBool FcPatternAddCharSet(FcPattern *p, const char *object, const
898ca08ab68Smrg   FcCharSet *c);
8992c393a42Smrg
900ca08ab68Smrg   FcBool FcPatternAddBool(FcPattern *p, const char *object, FcBool b);
9012c393a42Smrg
902ca08ab68Smrg   FcBool FcPatternAddFTFace(FcPattern *p, const char *object, const
903ca08ab68Smrg   FT_Facef);
9042c393a42Smrg
905ca08ab68Smrg   FcBool FcPatternAddLangSet(FcPattern *p, const char *object, const
906ca08ab68Smrg   FcLangSet *l);
9072c393a42Smrg
9082c393a42SmrgDescription
9092c393a42Smrg
910ca08ab68Smrg   These are all convenience functions that insert objects of the specified
911ca08ab68Smrg   type into the pattern. Use these in preference to FcPatternAdd as they
912ca08ab68Smrg   will provide compile-time typechecking. These all append values to any
913ca08ab68Smrg   existing list of values.
9142c393a42Smrg
9152c393a42SmrgVersion
9162c393a42Smrg
917c9710b42Smrg   Fontconfig version 2.10.93
9182c393a42Smrg
919ca08ab68Smrg                                  FcPatternGet
9202c393a42Smrg
9212c393a42SmrgName
9222c393a42Smrg
923ca08ab68Smrg   FcPatternGet -- Return a value from a pattern
9242c393a42Smrg
9252c393a42SmrgSynopsis
9262c393a42Smrg
927c9710b42Smrg   #include <fontconfig/fontconfig.h>
9282c393a42Smrg
929a6844aabSmrg
930ca08ab68Smrg   FcResult FcPatternGet(FcPattern *p, const char *object, int id, FcValue
931ca08ab68Smrg   *v);
9322c393a42Smrg
9332c393a42SmrgDescription
9342c393a42Smrg
935ca08ab68Smrg   Returns in v the id'th value associated with the property object. The
936ca08ab68Smrg   value returned is not a copy, but rather refers to the data stored within
937ca08ab68Smrg   the pattern directly. Applications must not free this value.
9382c393a42Smrg
9392c393a42SmrgVersion
9402c393a42Smrg
941c9710b42Smrg   Fontconfig version 2.10.93
9422c393a42Smrg
943ca08ab68Smrg                               FcPatternGet-Type
9442c393a42Smrg
9452c393a42SmrgName
9462c393a42Smrg
947ca08ab68Smrg   FcPatternGetInteger, FcPatternGetDouble, FcPatternGetString,
948ca08ab68Smrg   FcPatternGetMatrix, FcPatternGetCharSet, FcPatternGetBool,
949ca08ab68Smrg   FcPatternGetFTFace, FcPatternGetLangSet -- Return a typed value from a
950ca08ab68Smrg   pattern
9512c393a42Smrg
9522c393a42SmrgSynopsis
9532c393a42Smrg
954c9710b42Smrg   #include <fontconfig/fontconfig.h>
9552c393a42Smrg
9562c393a42Smrg
957ca08ab68Smrg   FcResult FcPatternGetInteger(FcPattern *p, const char *object, int n, int
958ca08ab68Smrg   *i);
959a6844aabSmrg
960ca08ab68Smrg   FcResult FcPatternGetDouble(FcPattern *p, const char *object, int n,
961ca08ab68Smrg   double *d);
9622c393a42Smrg
963ca08ab68Smrg   FcResult FcPatternGetString(FcPattern *p, const char *object, int n,
964ca08ab68Smrg   FcChar8 **s);
9652c393a42Smrg
966ca08ab68Smrg   FcResult FcPatternGetMatrix(FcPattern *p, const char *object, int n,
967ca08ab68Smrg   FcMatrix **s);
9682c393a42Smrg
969ca08ab68Smrg   FcResult FcPatternGetCharSet(FcPattern *p, const char *object, int n,
970ca08ab68Smrg   FcCharSet **c);
9712c393a42Smrg
972ca08ab68Smrg   FcResult FcPatternGetBool(FcPattern *p, const char *object, int n, FcBool
973ca08ab68Smrg   *b);
9742c393a42Smrg
975ca08ab68Smrg   FcResult FcPatternGetFTFace(FcPattern *p, const char *object, int n);
9762c393a42Smrg
977ca08ab68Smrg   FcResult FcPatternGetLangSet(FcPattern *p, const char *object, FT_Face
978ca08ab68Smrg   *f);
9792c393a42Smrg
9802c393a42SmrgDescription
9812c393a42Smrg
982ca08ab68Smrg   These are convenience functions that call FcPatternGet and verify that the
983ca08ab68Smrg   returned data is of the expected type. They return FcResultTypeMismatch if
984ca08ab68Smrg   this is not the case. Note that these (like FcPatternGet) do not make a
985ca08ab68Smrg   copy of any data structure referenced by the return value. Use these in
986ca08ab68Smrg   preference to FcPatternGet to provide compile-time typechecking.
9872c393a42Smrg
9882c393a42SmrgVersion
9892c393a42Smrg
990c9710b42Smrg   Fontconfig version 2.10.93
9912c393a42Smrg
992ca08ab68Smrg                                 FcPatternBuild
9932c393a42Smrg
9942c393a42SmrgName
9952c393a42Smrg
996ca08ab68Smrg   FcPatternBuild, FcPatternVaBuild, FcPatternVapBuild -- Create patterns
997ca08ab68Smrg   from arguments
9982c393a42Smrg
9992c393a42SmrgSynopsis
10002c393a42Smrg
1001c9710b42Smrg   #include <fontconfig/fontconfig.h>
10022c393a42Smrg
10032c393a42Smrg
1004ca08ab68Smrg   FcPattern * FcPatternBuild(FcPattern *pattern, ...);
10052c393a42Smrg
1006ca08ab68Smrg   FcPattern * FcPatternVaBuild(FcPattern *pattern, va_list va);
1007a6844aabSmrg
1008ca08ab68Smrg   void FcPatternVapBuild(FcPattern *result, FcPattern *pattern, va_list va);
10092c393a42Smrg
10102c393a42SmrgDescription
10112c393a42Smrg
1012ca08ab68Smrg   Builds a pattern using a list of objects, types and values. Each value to
1013ca08ab68Smrg   be entered in the pattern is specified with three arguments:
1014a6844aabSmrg
1015ca08ab68Smrg    1. Object name, a string describing the property to be added.
1016a6844aabSmrg
1017ca08ab68Smrg    2. Object type, one of the FcType enumerated values
10182c393a42Smrg
1019ca08ab68Smrg    3. Value, not an FcValue, but the raw type as passed to any of the
1020ca08ab68Smrg       FcPatternAdd<type> functions. Must match the type of the second
1021ca08ab68Smrg       argument.
10222c393a42Smrg
1023ca08ab68Smrg   The argument list is terminated by a null object name, no object type nor
1024ca08ab68Smrg   value need be passed for this. The values are added to `pattern', if
1025ca08ab68Smrg   `pattern' is null, a new pattern is created. In either case, the pattern
1026ca08ab68Smrg   is returned. Example
10272c393a42Smrg
1028ca08ab68Smrg   pattern = FcPatternBuild (0, FC_FAMILY, FcTypeString, "Times", (char *) 0);
1029a6844aabSmrg
1030ca08ab68Smrg   FcPatternVaBuild is used when the arguments are already in the form of a
1031ca08ab68Smrg   varargs value. FcPatternVapBuild is a macro version of FcPatternVaBuild
1032ca08ab68Smrg   which returns its result directly in the result variable.
10332c393a42Smrg
10342c393a42SmrgVersion
10352c393a42Smrg
1036c9710b42Smrg   Fontconfig version 2.10.93
10372c393a42Smrg
1038ca08ab68Smrg                                  FcPatternDel
10392c393a42Smrg
10402c393a42SmrgName
10412c393a42Smrg
1042ca08ab68Smrg   FcPatternDel -- Delete a property from a pattern
10432c393a42Smrg
10442c393a42SmrgSynopsis
10452c393a42Smrg
1046c9710b42Smrg   #include <fontconfig/fontconfig.h>
10472c393a42Smrg
1048a6844aabSmrg
1049ca08ab68Smrg   FcBool FcPatternDel(FcPattern *p, const char *object);
10502c393a42Smrg
10512c393a42SmrgDescription
10522c393a42Smrg
1053ca08ab68Smrg   Deletes all values associated with the property `object', returning
1054ca08ab68Smrg   whether the property existed or not.
10552c393a42Smrg
10562c393a42SmrgVersion
10572c393a42Smrg
1058c9710b42Smrg   Fontconfig version 2.10.93
10592c393a42Smrg
1060ca08ab68Smrg                                FcPatternRemove
10612c393a42Smrg
10622c393a42SmrgName
10632c393a42Smrg
1064ca08ab68Smrg   FcPatternRemove -- Remove one object of the specified type from the
1065ca08ab68Smrg   pattern
10662c393a42Smrg
10672c393a42SmrgSynopsis
10682c393a42Smrg
1069c9710b42Smrg   #include <fontconfig/fontconfig.h>
10702c393a42Smrg
1071a6844aabSmrg
1072ca08ab68Smrg   FcBool FcPatternRemove(FcPattern *p, const char *object, int id);
10732c393a42Smrg
10742c393a42SmrgDescription
10752c393a42Smrg
1076ca08ab68Smrg   Removes the value associated with the property `object' at position `id',
1077ca08ab68Smrg   returning whether the property existed and had a value at that position or
1078ca08ab68Smrg   not.
10792c393a42Smrg
10802c393a42SmrgVersion
10812c393a42Smrg
1082c9710b42Smrg   Fontconfig version 2.10.93
10832c393a42Smrg
1084ca08ab68Smrg                                 FcPatternPrint
10852c393a42Smrg
10862c393a42SmrgName
10872c393a42Smrg
1088ca08ab68Smrg   FcPatternPrint -- Print a pattern for debugging
10892c393a42Smrg
10902c393a42SmrgSynopsis
10912c393a42Smrg
1092c9710b42Smrg   #include <fontconfig/fontconfig.h>
10932c393a42Smrg
1094a6844aabSmrg
1095ca08ab68Smrg   void FcPatternPrint(const FcPattern *p);
10962c393a42Smrg
10972c393a42SmrgDescription
10982c393a42Smrg
1099ca08ab68Smrg   Prints an easily readable version of the pattern to stdout. There is no
1100ca08ab68Smrg   provision for reparsing data in this format, it's just for diagnostics and
1101ca08ab68Smrg   debugging.
11022c393a42Smrg
11032c393a42SmrgVersion
11042c393a42Smrg
1105c9710b42Smrg   Fontconfig version 2.10.93
11062c393a42Smrg
1107ca08ab68Smrg                              FcDefaultSubstitute
11082c393a42Smrg
11092c393a42SmrgName
11102c393a42Smrg
1111ca08ab68Smrg   FcDefaultSubstitute -- Perform default substitutions in a pattern
11122c393a42Smrg
11132c393a42SmrgSynopsis
11142c393a42Smrg
1115c9710b42Smrg   #include <fontconfig/fontconfig.h>
11162c393a42Smrg
1117a6844aabSmrg
1118ca08ab68Smrg   void FcDefaultSubstitute(FcPattern *pattern);
11192c393a42Smrg
11202c393a42SmrgDescription
11212c393a42Smrg
1122ca08ab68Smrg   Supplies default values for underspecified font patterns:
1123a6844aabSmrg
1124ca08ab68Smrg     * Patterns without a specified style or weight are set to Medium
11252c393a42Smrg
1126ca08ab68Smrg     * Patterns without a specified style or slant are set to Roman
1127a6844aabSmrg
1128ca08ab68Smrg     * Patterns without a specified pixel size are given one computed from
1129ca08ab68Smrg       any specified point size (default 12), dpi (default 75) and scale
1130ca08ab68Smrg       (default 1).
11312c393a42Smrg
11322c393a42SmrgVersion
11332c393a42Smrg
1134c9710b42Smrg   Fontconfig version 2.10.93
11352c393a42Smrg
1136ca08ab68Smrg                                  FcNameParse
11372c393a42Smrg
11382c393a42SmrgName
11392c393a42Smrg
1140ca08ab68Smrg   FcNameParse -- Parse a pattern string
11412c393a42Smrg
11422c393a42SmrgSynopsis
11432c393a42Smrg
1144c9710b42Smrg   #include <fontconfig/fontconfig.h>
11452c393a42Smrg
1146a6844aabSmrg
1147ca08ab68Smrg   FcPattern * FcNameParse(const FcChar8 *name);
11482c393a42Smrg
11492c393a42SmrgDescription
11502c393a42Smrg
1151ca08ab68Smrg   Converts name from the standard text format described above into a
1152ca08ab68Smrg   pattern.
11532c393a42Smrg
11542c393a42SmrgVersion
11552c393a42Smrg
1156c9710b42Smrg   Fontconfig version 2.10.93
11572c393a42Smrg
1158ca08ab68Smrg                                 FcNameUnparse
11592c393a42Smrg
11602c393a42SmrgName
11612c393a42Smrg
1162ca08ab68Smrg   FcNameUnparse -- Convert a pattern back into a string that can be parsed
11632c393a42Smrg
11642c393a42SmrgSynopsis
11652c393a42Smrg
1166c9710b42Smrg   #include <fontconfig/fontconfig.h>
11672c393a42Smrg
1168a6844aabSmrg
1169ca08ab68Smrg   FcChar8 * FcNameUnparse(FcPattern *pat);
11702c393a42Smrg
11712c393a42SmrgDescription
11722c393a42Smrg
1173ca08ab68Smrg   Converts the given pattern into the standard text format described above.
1174ca08ab68Smrg   The return value is not static, but instead refers to newly allocated
1175ca08ab68Smrg   memory which should be freed by the caller using free().
1176a6844aabSmrg
1177a6844aabSmrgVersion
1178a6844aabSmrg
1179c9710b42Smrg   Fontconfig version 2.10.93
1180a6844aabSmrg
1181ca08ab68Smrg                                FcPatternFormat
1182a6844aabSmrg
1183a6844aabSmrgName
1184a6844aabSmrg
1185ca08ab68Smrg   FcPatternFormat -- Format a pattern into a string according to a format
1186ca08ab68Smrg   specifier
1187a6844aabSmrg
1188a6844aabSmrgSynopsis
1189a6844aabSmrg
1190c9710b42Smrg   #include <fontconfig/fontconfig.h>
1191a6844aabSmrg
1192a6844aabSmrg
1193ca08ab68Smrg   FcChar8 * FcPatternFormat(FcPattern *pat, const FcChar8 *format);
1194a6844aabSmrg
1195a6844aabSmrgDescription
1196a6844aabSmrg
1197ca08ab68Smrg   Converts given pattern pat into text described by the format specifier
1198ca08ab68Smrg   format. The return value refers to newly allocated memory which should be
1199ca08ab68Smrg   freed by the caller using free(), or NULL if format is invalid.
1200a6844aabSmrg
1201ca08ab68Smrg    The format is loosely modeled after printf-style format string. The
1202ca08ab68Smrg   format string is composed of zero or more directives: ordinary characters
1203ca08ab68Smrg   (not "%"), which are copied unchanged to the output stream; and tags which
1204ca08ab68Smrg   are interpreted to construct text from the pattern in a variety of ways
1205ca08ab68Smrg   (explained below). Special characters can be escaped using backslash.
1206ca08ab68Smrg   C-string style special characters like \n and \r are also supported (this
1207ca08ab68Smrg   is useful when the format string is not a C string literal). It is
1208ca08ab68Smrg   advisable to always escape curly braces that are meant to be copied to the
1209ca08ab68Smrg   output as ordinary characters.
1210a6844aabSmrg
1211ca08ab68Smrg    Each tag is introduced by the character "%", followed by an optional
1212ca08ab68Smrg   minimum field width, followed by tag contents in curly braces ({}). If the
1213ca08ab68Smrg   minimum field width value is provided the tag will be expanded and the
1214ca08ab68Smrg   result padded to achieve the minimum width. If the minimum field width is
1215ca08ab68Smrg   positive, the padding will right-align the text. Negative field width will
1216ca08ab68Smrg   left-align. The rest of this section describes various supported tag
1217ca08ab68Smrg   contents and their expansion.
1218a6844aabSmrg
1219ca08ab68Smrg    A simple tag is one where the content is an identifier. When simple tags
1220ca08ab68Smrg   are expanded, the named identifier will be looked up in pattern and the
1221ca08ab68Smrg   resulting list of values returned, joined together using comma. For
1222ca08ab68Smrg   example, to print the family name and style of the pattern, use the format
1223ca08ab68Smrg   "%{family} %{style}\n". To extend the family column to forty characters
1224ca08ab68Smrg   use "%-40{family}%{style}\n".
1225a6844aabSmrg
1226ca08ab68Smrg    Simple tags expand to list of all values for an element. To only choose
1227ca08ab68Smrg   one of the values, one can index using the syntax "%{elt[idx]}". For
1228ca08ab68Smrg   example, to get the first family name only, use "%{family[0]}".
1229a6844aabSmrg
1230ca08ab68Smrg    If a simple tag ends with "=" and the element is found in the pattern,
1231ca08ab68Smrg   the name of the element followed by "=" will be output before the list of
1232ca08ab68Smrg   values. For example, "%{weight=}" may expand to the string "weight=80". Or
1233ca08ab68Smrg   to the empty string if pattern does not have weight set.
1234a6844aabSmrg
1235ca08ab68Smrg    If a simple tag starts with ":" and the element is found in the pattern,
1236ca08ab68Smrg   ":" will be printed first. For example, combining this with the =, the
1237ca08ab68Smrg   format "%{:weight=}" may expand to ":weight=80" or to the empty string if
1238ca08ab68Smrg   pattern does not have weight set.
1239a6844aabSmrg
1240ca08ab68Smrg    If a simple tag contains the string ":-", the rest of the the tag
1241ca08ab68Smrg   contents will be used as a default string. The default string is output if
1242ca08ab68Smrg   the element is not found in the pattern. For example, the format
1243ca08ab68Smrg   "%{:weight=:-123}" may expand to ":weight=80" or to the string
1244ca08ab68Smrg   ":weight=123" if pattern does not have weight set.
1245a6844aabSmrg
1246ca08ab68Smrg    A count tag is one that starts with the character "#" followed by an
1247ca08ab68Smrg   element name, and expands to the number of values for the element in the
1248ca08ab68Smrg   pattern. For example, "%{#family}" expands to the number of family names
1249ca08ab68Smrg   pattern has set, which may be zero.
1250a6844aabSmrg
1251ca08ab68Smrg    A sub-expression tag is one that expands a sub-expression. The tag
1252ca08ab68Smrg   contents are the sub-expression to expand placed inside another set of
1253ca08ab68Smrg   curly braces. Sub-expression tags are useful for aligning an entire
1254ca08ab68Smrg   sub-expression, or to apply converters (explained later) to the entire
1255ca08ab68Smrg   sub-expression output. For example, the format "%40{{%{family} %{style}}}"
1256ca08ab68Smrg   expands the sub-expression to construct the family name followed by the
1257ca08ab68Smrg   style, then takes the entire string and pads it on the left to be at least
1258ca08ab68Smrg   forty characters.
1259a6844aabSmrg
1260ca08ab68Smrg    A filter-out tag is one starting with the character "-" followed by a
1261ca08ab68Smrg   comma-separated list of element names, followed by a sub-expression
1262ca08ab68Smrg   enclosed in curly braces. The sub-expression will be expanded but with a
1263ca08ab68Smrg   pattern that has the listed elements removed from it. For example, the
1264ca08ab68Smrg   format "%{-size,pixelsize{sub-expr}}" will expand "sub-expr" with pattern
1265ca08ab68Smrg   sans the size and pixelsize elements.
1266a6844aabSmrg
1267ca08ab68Smrg    A filter-in tag is one starting with the character "+" followed by a
1268ca08ab68Smrg   comma-separated list of element names, followed by a sub-expression
1269ca08ab68Smrg   enclosed in curly braces. The sub-expression will be expanded but with a
1270ca08ab68Smrg   pattern that only has the listed elements from the surrounding pattern.
1271ca08ab68Smrg   For example, the format "%{+family,familylang{sub-expr}}" will expand
1272ca08ab68Smrg   "sub-expr" with a sub-pattern consisting only the family and family lang
1273ca08ab68Smrg   elements of pattern.
1274a6844aabSmrg
1275ca08ab68Smrg    A conditional tag is one starting with the character "?" followed by a
1276ca08ab68Smrg   comma-separated list of element conditions, followed by two sub-expression
1277ca08ab68Smrg   enclosed in curly braces. An element condition can be an element name, in
1278ca08ab68Smrg   which case it tests whether the element is defined in pattern, or the
1279ca08ab68Smrg   character "!" followed by an element name, in which case the test is
1280ca08ab68Smrg   negated. The conditional passes if all the element conditions pass. The
1281ca08ab68Smrg   tag expands the first sub-expression if the conditional passes, and
1282ca08ab68Smrg   expands the second sub-expression otherwise. For example, the format
1283ca08ab68Smrg   "%{?size,dpi,!pixelsize{pass}{fail}}" will expand to "pass" if pattern has
1284ca08ab68Smrg   size and dpi elements but no pixelsize element, and to "fail" otherwise.
1285a6844aabSmrg
1286ca08ab68Smrg    An enumerate tag is one starting with the string "[]" followed by a
1287ca08ab68Smrg   comma-separated list of element names, followed by a sub-expression
1288ca08ab68Smrg   enclosed in curly braces. The list of values for the named elements are
1289ca08ab68Smrg   walked in parallel and the sub-expression expanded each time with a
1290ca08ab68Smrg   pattern just having a single value for those elements, starting from the
1291ca08ab68Smrg   first value and continuing as long as any of those elements has a value.
1292ca08ab68Smrg   For example, the format "%{[]family,familylang{%{family}
1293ca08ab68Smrg   (%{familylang})\n}}" will expand the pattern "%{family} (%{familylang})\n"
1294ca08ab68Smrg   with a pattern having only the first value of the family and familylang
1295ca08ab68Smrg   elements, then expands it with the second values, then the third, etc.
1296a6844aabSmrg
1297ca08ab68Smrg    As a special case, if an enumerate tag has only one element, and that
1298ca08ab68Smrg   element has only one value in the pattern, and that value is of type
1299ca08ab68Smrg   FcLangSet, the individual languages in the language set are enumerated.
1300a6844aabSmrg
1301ca08ab68Smrg    A builtin tag is one starting with the character "=" followed by a
1302ca08ab68Smrg   builtin name. The following builtins are defined:
1303a6844aabSmrg
1304ca08ab68Smrg   unparse
1305a6844aabSmrg
1306ca08ab68Smrg           Expands to the result of calling FcNameUnparse() on the pattern.
1307a6844aabSmrg
1308ca08ab68Smrg   fcmatch
1309a6844aabSmrg
1310ca08ab68Smrg           Expands to the output of the default output format of the fc-match
1311ca08ab68Smrg           command on the pattern, without the final newline.
1312a6844aabSmrg
1313ca08ab68Smrg   fclist
1314a6844aabSmrg
1315ca08ab68Smrg           Expands to the output of the default output format of the fc-list
1316ca08ab68Smrg           command on the pattern, without the final newline.
1317a6844aabSmrg
1318ca08ab68Smrg   fccat
1319a6844aabSmrg
1320ca08ab68Smrg           Expands to the output of the default output format of the fc-cat
1321ca08ab68Smrg           command on the pattern, without the final newline.
1322a6844aabSmrg
1323ca08ab68Smrg   pkgkit
1324a6844aabSmrg
1325ca08ab68Smrg           Expands to the list of PackageKit font() tags for the pattern.
1326ca08ab68Smrg           Currently this includes tags for each family name, and each
1327ca08ab68Smrg           language from the pattern, enumerated and sanitized into a set of
1328ca08ab68Smrg           tags terminated by newline. Package management systems can use
1329ca08ab68Smrg           these tags to tag their packages accordingly.
1330a6844aabSmrg
1331ca08ab68Smrg   For example, the format "%{+family,style{%{=unparse}}}\n" will expand to
1332ca08ab68Smrg   an unparsed name containing only the family and style element values from
1333ca08ab68Smrg   pattern.
1334a6844aabSmrg
1335ca08ab68Smrg    The contents of any tag can be followed by a set of zero or more
1336ca08ab68Smrg   converters. A converter is specified by the character "|" followed by the
1337ca08ab68Smrg   converter name and arguments. The following converters are defined:
1338a6844aabSmrg
1339ca08ab68Smrg   basename
1340a6844aabSmrg
1341ca08ab68Smrg           Replaces text with the results of calling FcStrBasename() on it.
1342a6844aabSmrg
1343ca08ab68Smrg   dirname
1344a6844aabSmrg
1345ca08ab68Smrg           Replaces text with the results of calling FcStrDirname() on it.
1346a6844aabSmrg
1347ca08ab68Smrg   downcase
1348a6844aabSmrg
1349ca08ab68Smrg           Replaces text with the results of calling FcStrDowncase() on it.
1350a6844aabSmrg
1351ca08ab68Smrg   shescape
1352a6844aabSmrg
1353ca08ab68Smrg           Escapes text for one level of shell expansion. (Escapes
1354ca08ab68Smrg           single-quotes, also encloses text in single-quotes.)
1355a6844aabSmrg
1356ca08ab68Smrg   cescape
1357a6844aabSmrg
1358ca08ab68Smrg           Escapes text such that it can be used as part of a C string
1359ca08ab68Smrg           literal. (Escapes backslash and double-quotes.)
1360a6844aabSmrg
1361ca08ab68Smrg   xmlescape
1362a6844aabSmrg
1363ca08ab68Smrg           Escapes text such that it can be used in XML and HTML. (Escapes
1364ca08ab68Smrg           less-than, greater-than, and ampersand.)
1365a6844aabSmrg
1366ca08ab68Smrg   delete(chars)
1367a6844aabSmrg
1368ca08ab68Smrg           Deletes all occurrences of each of the characters in chars from
1369ca08ab68Smrg           the text. FIXME: This converter is not UTF-8 aware yet.
1370a6844aabSmrg
1371ca08ab68Smrg   escape(chars)
1372a6844aabSmrg
1373ca08ab68Smrg           Escapes all occurrences of each of the characters in chars by
1374ca08ab68Smrg           prepending it by the first character in chars. FIXME: This
1375ca08ab68Smrg           converter is not UTF-8 aware yet.
1376a6844aabSmrg
1377ca08ab68Smrg   translate(from,to)
1378ca08ab68Smrg
1379ca08ab68Smrg           Translates all occurrences of each of the characters in from by
1380ca08ab68Smrg           replacing them with their corresponding character in to. If to has
1381ca08ab68Smrg           fewer characters than from, it will be extended by repeating its
1382ca08ab68Smrg           last character. FIXME: This converter is not UTF-8 aware yet.
1383ca08ab68Smrg
1384ca08ab68Smrg   For example, the format "%{family|downcase|delete( )}\n" will expand to
1385ca08ab68Smrg   the values of the family element in pattern, lower-cased and with spaces
1386ca08ab68Smrg   removed.
13872c393a42Smrg
13882c393a42SmrgVersion
13892c393a42Smrg
1390c9710b42Smrg   Fontconfig version 2.10.93
1391ca08ab68Smrg
1392ca08ab68Smrg   --------------------------------------------------------------------------
1393ca08ab68Smrg
1394ca08ab68Smrg  FcFontSet
1395ca08ab68Smrg
1396ca08ab68Smrg   Table of Contents
1397ca08ab68Smrg
1398ca08ab68Smrg   [33]FcFontSetCreate -- Create a font set
1399ca08ab68Smrg
1400ca08ab68Smrg   [34]FcFontSetDestroy -- Destroy a font set
1401ca08ab68Smrg
1402ca08ab68Smrg   [35]FcFontSetAdd -- Add to a font set
1403ca08ab68Smrg
1404ca08ab68Smrg   [36]FcFontSetList -- List fonts from a set of font sets
1405a6844aabSmrg
1406ca08ab68Smrg   [37]FcFontSetMatch -- Return the best font from a set of font sets
14072c393a42Smrg
1408ca08ab68Smrg   [38]FcFontSetPrint -- Print a set of patterns to stdout
14092c393a42Smrg
1410ca08ab68Smrg   [39]FcFontSetSort -- Add to a font set
14112c393a42Smrg
1412ca08ab68Smrg   [40]FcFontSetSortDestroy -- DEPRECATED destroy a font set
14132c393a42Smrg
1414ca08ab68Smrg   An FcFontSet simply holds a list of patterns; these are used to return the
1415ca08ab68Smrg   results of listing available fonts.
1416ca08ab68Smrg
1417ca08ab68Smrg                                FcFontSetCreate
14182c393a42Smrg
14192c393a42SmrgName
14202c393a42Smrg
1421ca08ab68Smrg   FcFontSetCreate -- Create a font set
14222c393a42Smrg
14232c393a42SmrgSynopsis
14242c393a42Smrg
1425c9710b42Smrg   #include <fontconfig/fontconfig.h>
14262c393a42Smrg
1427a6844aabSmrg
1428ca08ab68Smrg   FcFontSet * FcFontSetCreate(void);
14292c393a42Smrg
14302c393a42SmrgDescription
14312c393a42Smrg
1432ca08ab68Smrg   Creates an empty font set.
14332c393a42Smrg
14342c393a42SmrgVersion
14352c393a42Smrg
1436c9710b42Smrg   Fontconfig version 2.10.93
14372c393a42Smrg
1438ca08ab68Smrg                                FcFontSetDestroy
14392c393a42Smrg
14402c393a42SmrgName
14412c393a42Smrg
1442ca08ab68Smrg   FcFontSetDestroy -- Destroy a font set
14432c393a42Smrg
14442c393a42SmrgSynopsis
14452c393a42Smrg
1446c9710b42Smrg   #include <fontconfig/fontconfig.h>
14472c393a42Smrg
1448a6844aabSmrg
1449ca08ab68Smrg   void FcFontSetDestroy(FcFontSet *s);
14502c393a42Smrg
14512c393a42SmrgDescription
14522c393a42Smrg
1453ca08ab68Smrg   Destroys a font set. Note that this destroys any referenced patterns as
1454ca08ab68Smrg   well.
14552c393a42Smrg
14562c393a42SmrgVersion
14572c393a42Smrg
1458c9710b42Smrg   Fontconfig version 2.10.93
14592c393a42Smrg
1460ca08ab68Smrg                                  FcFontSetAdd
14612c393a42Smrg
14622c393a42SmrgName
14632c393a42Smrg
1464ca08ab68Smrg   FcFontSetAdd -- Add to a font set
14652c393a42Smrg
14662c393a42SmrgSynopsis
14672c393a42Smrg
1468c9710b42Smrg   #include <fontconfig/fontconfig.h>
14692c393a42Smrg
1470a6844aabSmrg
1471ca08ab68Smrg   FcBool FcFontSetAdd(FcFontSet *s, FcPattern *font);
14722c393a42Smrg
14732c393a42SmrgDescription
14742c393a42Smrg
1475ca08ab68Smrg   Adds a pattern to a font set. Note that the pattern is not copied before
1476ca08ab68Smrg   being inserted into the set. Returns FcFalse if the pattern cannot be
1477ca08ab68Smrg   inserted into the set (due to allocation failure). Otherwise returns
1478ca08ab68Smrg   FcTrue.
14792c393a42Smrg
14802c393a42SmrgVersion
14812c393a42Smrg
1482c9710b42Smrg   Fontconfig version 2.10.93
14832c393a42Smrg
1484ca08ab68Smrg                                 FcFontSetList
14852c393a42Smrg
14862c393a42SmrgName
14872c393a42Smrg
1488ca08ab68Smrg   FcFontSetList -- List fonts from a set of font sets
14892c393a42Smrg
14902c393a42SmrgSynopsis
14912c393a42Smrg
1492c9710b42Smrg   #include <fontconfig/fontconfig.h>
14932c393a42Smrg
1494a6844aabSmrg
1495ca08ab68Smrg   FcFontSet * FcFontSetList(FcConfig *config, FcFontSet **sets, intnsets,
1496ca08ab68Smrg   FcPattern *pattern, FcObjectSet *object_set);
14972c393a42Smrg
14982c393a42SmrgDescription
14992c393a42Smrg
1500ca08ab68Smrg   Selects fonts matching pattern from sets, creates patterns from those
1501ca08ab68Smrg   fonts containing only the objects in object_set and returns the set of
1502ca08ab68Smrg   unique such patterns. If config is NULL, the default configuration is
1503ca08ab68Smrg   checked to be up to date, and used.
15042c393a42Smrg
15052c393a42SmrgVersion
15062c393a42Smrg
1507c9710b42Smrg   Fontconfig version 2.10.93
15082c393a42Smrg
1509ca08ab68Smrg                                 FcFontSetMatch
15102c393a42Smrg
15112c393a42SmrgName
15122c393a42Smrg
1513ca08ab68Smrg   FcFontSetMatch -- Return the best font from a set of font sets
15142c393a42Smrg
15152c393a42SmrgSynopsis
15162c393a42Smrg
1517c9710b42Smrg   #include <fontconfig/fontconfig.h>
15182c393a42Smrg
1519a6844aabSmrg
1520ca08ab68Smrg   FcPattern * FcFontSetMatch(FcConfig *config, FcFontSet **sets, intnsets,
1521ca08ab68Smrg   FcPattern *pattern, FcResult *result);
15222c393a42Smrg
15232c393a42SmrgDescription
15242c393a42Smrg
1525ca08ab68Smrg   Finds the font in sets most closely matching pattern and returns the
1526ca08ab68Smrg   result of FcFontRenderPrepare for that font and the provided pattern. This
1527ca08ab68Smrg   function should be called only after FcConfigSubstitute and
1528ca08ab68Smrg   FcDefaultSubstitute have been called for pattern; otherwise the results
1529ca08ab68Smrg   will not be correct. If config is NULL, the current configuration is used.
1530ca08ab68Smrg   Returns NULL if an error occurs during this process.
15312c393a42Smrg
15322c393a42SmrgVersion
15332c393a42Smrg
1534c9710b42Smrg   Fontconfig version 2.10.93
15352c393a42Smrg
1536ca08ab68Smrg                                 FcFontSetPrint
15372c393a42Smrg
15382c393a42SmrgName
15392c393a42Smrg
1540ca08ab68Smrg   FcFontSetPrint -- Print a set of patterns to stdout
15412c393a42Smrg
15422c393a42SmrgSynopsis
15432c393a42Smrg
1544c9710b42Smrg   #include <fontconfig/fontconfig.h>
15452c393a42Smrg
1546a6844aabSmrg
1547ca08ab68Smrg   void FcFontSetPrint(FcFontSet *set);
15482c393a42Smrg
15492c393a42SmrgDescription
15502c393a42Smrg
1551ca08ab68Smrg   This function is useful for diagnosing font related issues, printing the
1552ca08ab68Smrg   complete contents of every pattern in set. The format of the output is
1553ca08ab68Smrg   designed to be of help to users and developers, and may change at any
1554ca08ab68Smrg   time.
15552c393a42Smrg
15562c393a42SmrgVersion
15572c393a42Smrg
1558c9710b42Smrg   Fontconfig version 2.10.93
15592c393a42Smrg
1560ca08ab68Smrg                                 FcFontSetSort
15612c393a42Smrg
15622c393a42SmrgName
15632c393a42Smrg
1564ca08ab68Smrg   FcFontSetSort -- Add to a font set
15652c393a42Smrg
15662c393a42SmrgSynopsis
15672c393a42Smrg
1568c9710b42Smrg   #include <fontconfig/fontconfig.h>
15692c393a42Smrg
1570a6844aabSmrg
1571ca08ab68Smrg   FcFontSetSort(FcConfig *config, FcFontSet **sets, intnsets, FcPattern
1572ca08ab68Smrg   *pattern, FcBool trim, FcCharSet **csp, FcResult *result);
15732c393a42Smrg
15742c393a42SmrgDescription
15752c393a42Smrg
1576ca08ab68Smrg   Returns the list of fonts from sets sorted by closeness to pattern. If
1577ca08ab68Smrg   trim is FcTrue, elements in the list which don't include Unicode coverage
1578ca08ab68Smrg   not provided by earlier elements in the list are elided. The union of
1579ca08ab68Smrg   Unicode coverage of all of the fonts is returned in csp, if csp is not
1580ca08ab68Smrg   NULL. This function should be called only after FcConfigSubstitute and
1581ca08ab68Smrg   FcDefaultSubstitute have been called for p; otherwise the results will not
1582ca08ab68Smrg   be correct.
15832c393a42Smrg
1584ca08ab68Smrg   The returned FcFontSet references FcPattern structures which may be shared
1585ca08ab68Smrg   by the return value from multiple FcFontSort calls, applications cannot
1586ca08ab68Smrg   modify these patterns. Instead, they should be passed, along with pattern
1587ca08ab68Smrg   to FcFontRenderPrepare which combines them into a complete pattern.
15882c393a42Smrg
1589ca08ab68Smrg   The FcFontSet returned by FcFontSetSort is destroyed by calling
1590ca08ab68Smrg   FcFontSetDestroy.
15912c393a42Smrg
15922c393a42SmrgVersion
15932c393a42Smrg
1594c9710b42Smrg   Fontconfig version 2.10.93
15952c393a42Smrg
1596ca08ab68Smrg                              FcFontSetSortDestroy
15972c393a42Smrg
15982c393a42SmrgName
15992c393a42Smrg
1600ca08ab68Smrg   FcFontSetSortDestroy -- DEPRECATED destroy a font set
16012c393a42Smrg
16022c393a42SmrgSynopsis
16032c393a42Smrg
1604c9710b42Smrg   #include <fontconfig/fontconfig.h>
16052c393a42Smrg
1606a6844aabSmrg
1607ca08ab68Smrg   FcFontSetSortDestroy(FcFontSet *set);
16082c393a42Smrg
16092c393a42SmrgDescription
16102c393a42Smrg
1611ca08ab68Smrg   This function is DEPRECATED. FcFontSetSortDestroy destroys set by calling
1612ca08ab68Smrg   FcFontSetDestroy. Applications should use FcFontSetDestroy directly
1613ca08ab68Smrg   instead.
16142c393a42Smrg
16152c393a42SmrgVersion
16162c393a42Smrg
1617c9710b42Smrg   Fontconfig version 2.10.93
1618ca08ab68Smrg
1619ca08ab68Smrg   --------------------------------------------------------------------------
1620ca08ab68Smrg
1621ca08ab68Smrg  FcObjectSet
1622ca08ab68Smrg
1623ca08ab68Smrg   Table of Contents
1624ca08ab68Smrg
1625ca08ab68Smrg   [41]FcObjectSetCreate -- Create an object set
1626a6844aabSmrg
1627ca08ab68Smrg   [42]FcObjectSetAdd -- Add to an object set
16282c393a42Smrg
1629ca08ab68Smrg   [43]FcObjectSetDestroy -- Destroy an object set
16302c393a42Smrg
1631ca08ab68Smrg   [44]FcObjectSetBuild -- Build object set from args
16322c393a42Smrg
1633ca08ab68Smrg   An FcObjectSet holds a list of pattern property names; it is used to
1634ca08ab68Smrg   indicate which properties are to be returned in the patterns from
1635ca08ab68Smrg   FcFontList.
16362c393a42Smrg
1637ca08ab68Smrg                               FcObjectSetCreate
16382c393a42Smrg
16392c393a42SmrgName
16402c393a42Smrg
1641ca08ab68Smrg   FcObjectSetCreate -- Create an object set
16422c393a42Smrg
16432c393a42SmrgSynopsis
16442c393a42Smrg
1645c9710b42Smrg   #include <fontconfig/fontconfig.h>
16462c393a42Smrg
1647a6844aabSmrg
1648ca08ab68Smrg   FcObjectSet * FcObjectSetCreate(void);
16492c393a42Smrg
16502c393a42SmrgDescription
16512c393a42Smrg
1652ca08ab68Smrg   Creates an empty set.
16532c393a42Smrg
16542c393a42SmrgVersion
16552c393a42Smrg
1656c9710b42Smrg   Fontconfig version 2.10.93
16572c393a42Smrg
1658ca08ab68Smrg                                 FcObjectSetAdd
16592c393a42Smrg
16602c393a42SmrgName
16612c393a42Smrg
1662ca08ab68Smrg   FcObjectSetAdd -- Add to an object set
16632c393a42Smrg
16642c393a42SmrgSynopsis
16652c393a42Smrg
1666c9710b42Smrg   #include <fontconfig/fontconfig.h>
16672c393a42Smrg
1668a6844aabSmrg
1669ca08ab68Smrg   FcBool FcObjectSetAdd(FcObjectSet *os, const char *object);
16702c393a42Smrg
16712c393a42SmrgDescription
16722c393a42Smrg
1673ca08ab68Smrg   Adds a property name to the set. Returns FcFalse if the property name
1674ca08ab68Smrg   cannot be inserted into the set (due to allocation failure). Otherwise
1675ca08ab68Smrg   returns FcTrue.
16762c393a42Smrg
16772c393a42SmrgVersion
16782c393a42Smrg
1679c9710b42Smrg   Fontconfig version 2.10.93
16802c393a42Smrg
1681ca08ab68Smrg                               FcObjectSetDestroy
16822c393a42Smrg
16832c393a42SmrgName
16842c393a42Smrg
1685ca08ab68Smrg   FcObjectSetDestroy -- Destroy an object set
16862c393a42Smrg
16872c393a42SmrgSynopsis
16882c393a42Smrg
1689c9710b42Smrg   #include <fontconfig/fontconfig.h>
16902c393a42Smrg
1691a6844aabSmrg
1692ca08ab68Smrg   void FcObjectSetDestroy(FcObjectSet *os);
16932c393a42Smrg
16942c393a42SmrgDescription
16952c393a42Smrg
1696ca08ab68Smrg   Destroys an object set.
16972c393a42Smrg
16982c393a42SmrgVersion
16992c393a42Smrg
1700c9710b42Smrg   Fontconfig version 2.10.93
17012c393a42Smrg
1702ca08ab68Smrg                                FcObjectSetBuild
17032c393a42Smrg
17042c393a42SmrgName
17052c393a42Smrg
1706ca08ab68Smrg   FcObjectSetBuild, FcObjectSetVaBuild, FcObjectSetVapBuild -- Build object
1707ca08ab68Smrg   set from args
17082c393a42Smrg
17092c393a42SmrgSynopsis
17102c393a42Smrg
1711c9710b42Smrg   #include <fontconfig/fontconfig.h>
17122c393a42Smrg
17132c393a42Smrg
1714ca08ab68Smrg   FcObjectSet * FcObjectSetBuild(const char *first, ...);
17152c393a42Smrg
1716ca08ab68Smrg   FcObjectSet * FcObjectSetVaBuild(const char *first, va_list va);
1717a6844aabSmrg
1718ca08ab68Smrg   void FcObjectSetVapBuild(FcObjectSet *result, const char *first, va_list
1719ca08ab68Smrg   va);
17202c393a42Smrg
17212c393a42SmrgDescription
17222c393a42Smrg
1723ca08ab68Smrg   These build an object set from a null-terminated list of property names.
1724ca08ab68Smrg   FcObjectSetVapBuild is a macro version of FcObjectSetVaBuild which returns
1725ca08ab68Smrg   the result in the result variable directly.
17262c393a42Smrg
17272c393a42SmrgVersion
17282c393a42Smrg
1729c9710b42Smrg   Fontconfig version 2.10.93
1730ca08ab68Smrg
1731ca08ab68Smrg   --------------------------------------------------------------------------
1732ca08ab68Smrg
1733ca08ab68Smrg  FreeType specific functions
1734ca08ab68Smrg
1735ca08ab68Smrg   Table of Contents
1736ca08ab68Smrg
1737ca08ab68Smrg   [45]FcFreeTypeCharIndex -- map Unicode to glyph id
17382c393a42Smrg
1739ca08ab68Smrg   [46]FcFreeTypeCharSet -- compute Unicode coverage
17402c393a42Smrg
1741ca08ab68Smrg   [47]FcFreeTypeCharSetAndSpacing -- compute Unicode coverage and spacing
1742ca08ab68Smrg   type
17432c393a42Smrg
1744ca08ab68Smrg   [48]FcFreeTypeQuery -- compute pattern from font file (and index)
17452c393a42Smrg
1746ca08ab68Smrg   [49]FcFreeTypeQueryFace -- compute pattern from FT_Face
17472c393a42Smrg
1748ca08ab68Smrg   While the fontconfig library doesn't insist that FreeType be used as the
1749ca08ab68Smrg   rasterization mechanism for fonts, it does provide some convenience
1750ca08ab68Smrg   functions.
1751ca08ab68Smrg
1752ca08ab68Smrg                              FcFreeTypeCharIndex
17532c393a42Smrg
17542c393a42SmrgName
17552c393a42Smrg
1756ca08ab68Smrg   FcFreeTypeCharIndex -- map Unicode to glyph id
17572c393a42Smrg
17582c393a42SmrgSynopsis
17592c393a42Smrg
1760ca08ab68Smrg   #include <fontconfig.h>
1761ca08ab68Smrg   #include <fcfreetype.h>
17622c393a42Smrg
1763a6844aabSmrg
1764ca08ab68Smrg   FT_UInt FcFreeTypeCharIndex(FT_Face face, FcChar32 ucs4);
17652c393a42Smrg
17662c393a42SmrgDescription
17672c393a42Smrg
1768ca08ab68Smrg   Maps a Unicode char to a glyph index. This function uses information from
1769ca08ab68Smrg   several possible underlying encoding tables to work around broken fonts.
1770ca08ab68Smrg   As a result, this function isn't designed to be used in performance
1771ca08ab68Smrg   sensitive areas; results from this function are intended to be cached by
1772ca08ab68Smrg   higher level functions.
17732c393a42Smrg
17742c393a42SmrgVersion
17752c393a42Smrg
1776c9710b42Smrg   Fontconfig version 2.10.93
17772c393a42Smrg
1778ca08ab68Smrg                               FcFreeTypeCharSet
17792c393a42Smrg
17802c393a42SmrgName
17812c393a42Smrg
1782ca08ab68Smrg   FcFreeTypeCharSet -- compute Unicode coverage
17832c393a42Smrg
17842c393a42SmrgSynopsis
17852c393a42Smrg
1786ca08ab68Smrg   #include <fontconfig.h>
1787ca08ab68Smrg   #include <fcfreetype.h>
17882c393a42Smrg
1789a6844aabSmrg
1790ca08ab68Smrg   FcCharSet * FcFreeTypeCharSet(FT_Face face, FcBlanks *blanks);
17912c393a42Smrg
17922c393a42SmrgDescription
17932c393a42Smrg
1794ca08ab68Smrg   Scans a FreeType face and returns the set of encoded Unicode chars. This
1795ca08ab68Smrg   scans several encoding tables to build as complete a list as possible. If
1796ca08ab68Smrg   'blanks' is not 0, the glyphs in the font are examined and any blank
1797ca08ab68Smrg   glyphs not in 'blanks' are not placed in the returned FcCharSet.
17982c393a42Smrg
17992c393a42SmrgVersion
18002c393a42Smrg
1801c9710b42Smrg   Fontconfig version 2.10.93
18022c393a42Smrg
1803ca08ab68Smrg                          FcFreeTypeCharSetAndSpacing
18042c393a42Smrg
18052c393a42SmrgName
18062c393a42Smrg
1807ca08ab68Smrg   FcFreeTypeCharSetAndSpacing -- compute Unicode coverage and spacing type
18082c393a42Smrg
18092c393a42SmrgSynopsis
18102c393a42Smrg
1811ca08ab68Smrg   #include <fontconfig.h>
1812ca08ab68Smrg   #include <fcfreetype.h>
18132c393a42Smrg
1814a6844aabSmrg
1815ca08ab68Smrg   FcCharSet * FcFreeTypeCharSetAndSpacing(FT_Face face, FcBlanks *blanks,
1816ca08ab68Smrg   int *spacing);
18172c393a42Smrg
18182c393a42SmrgDescription
18192c393a42Smrg
1820ca08ab68Smrg   Scans a FreeType face and returns the set of encoded Unicode chars. This
1821ca08ab68Smrg   scans several encoding tables to build as complete a list as possible. If
1822ca08ab68Smrg   'blanks' is not 0, the glyphs in the font are examined and any blank
1823ca08ab68Smrg   glyphs not in 'blanks' are not placed in the returned FcCharSet. spacing
1824ca08ab68Smrg   receives the computed spacing type of the font, one of FC_MONO for a font
1825ca08ab68Smrg   where all glyphs have the same width, FC_DUAL, where the font has glyphs
1826ca08ab68Smrg   in precisely two widths, one twice as wide as the other, or
1827ca08ab68Smrg   FC_PROPORTIONAL where the font has glyphs of many widths.
18282c393a42Smrg
18292c393a42SmrgVersion
18302c393a42Smrg
1831c9710b42Smrg   Fontconfig version 2.10.93
18322c393a42Smrg
1833ca08ab68Smrg                                FcFreeTypeQuery
18342c393a42Smrg
18352c393a42SmrgName
18362c393a42Smrg
1837ca08ab68Smrg   FcFreeTypeQuery -- compute pattern from font file (and index)
18382c393a42Smrg
18392c393a42SmrgSynopsis
18402c393a42Smrg
1841ca08ab68Smrg   #include <fontconfig.h>
1842ca08ab68Smrg   #include <fcfreetype.h>
18432c393a42Smrg
1844a6844aabSmrg
1845ca08ab68Smrg   FcPattern * FcFreeTypeQuery(const FcChar8 *file, int id, FcBlanks *blanks,
1846ca08ab68Smrg   int *count);
18472c393a42Smrg
18482c393a42SmrgDescription
18492c393a42Smrg
1850ca08ab68Smrg   Constructs a pattern representing the 'id'th font in 'file'. The number of
1851ca08ab68Smrg   fonts in 'file' is returned in 'count'.
18522c393a42Smrg
18532c393a42SmrgVersion
18542c393a42Smrg
1855c9710b42Smrg   Fontconfig version 2.10.93
18562c393a42Smrg
1857ca08ab68Smrg                              FcFreeTypeQueryFace
18582c393a42Smrg
18592c393a42SmrgName
18602c393a42Smrg
1861ca08ab68Smrg   FcFreeTypeQueryFace -- compute pattern from FT_Face
18622c393a42Smrg
18632c393a42SmrgSynopsis
18642c393a42Smrg
1865ca08ab68Smrg   #include <fontconfig.h>
1866ca08ab68Smrg   #include <fcfreetype.h>
18672c393a42Smrg
1868a6844aabSmrg
1869ca08ab68Smrg   FcPattern * FcFreeTypeQueryFace(const FT_Face face, const FcChar8 *file,
1870ca08ab68Smrg   int id, FcBlanks *blanks);
18712c393a42Smrg
18722c393a42SmrgDescription
18732c393a42Smrg
1874ca08ab68Smrg   Constructs a pattern representing 'face'. 'file' and 'id' are used solely
1875ca08ab68Smrg   as data for pattern elements (FC_FILE, FC_INDEX and sometimes FC_FAMILY).
18762c393a42Smrg
18772c393a42SmrgVersion
18782c393a42Smrg
1879c9710b42Smrg   Fontconfig version 2.10.93
1880ca08ab68Smrg
1881ca08ab68Smrg   --------------------------------------------------------------------------
1882ca08ab68Smrg
1883ca08ab68Smrg  FcValue
1884ca08ab68Smrg
1885ca08ab68Smrg   Table of Contents
1886ca08ab68Smrg
1887ca08ab68Smrg   [50]FcValueDestroy -- Free a value
1888a6844aabSmrg
1889ca08ab68Smrg   [51]FcValueSave -- Copy a value
18902c393a42Smrg
1891ca08ab68Smrg   [52]FcValuePrint -- Print a value to stdout
18922c393a42Smrg
1893ca08ab68Smrg   [53]FcValueEqual -- Test two values for equality
18942c393a42Smrg
1895ca08ab68Smrg   FcValue is a structure containing a type tag and a union of all possible
1896ca08ab68Smrg   datatypes. The tag is an enum of type FcType and is intended to provide a
1897ca08ab68Smrg   measure of run-time typechecking, although that depends on careful
1898ca08ab68Smrg   programming.
18992c393a42Smrg
1900ca08ab68Smrg                                 FcValueDestroy
19012c393a42Smrg
19022c393a42SmrgName
19032c393a42Smrg
1904ca08ab68Smrg   FcValueDestroy -- Free a value
19052c393a42Smrg
19062c393a42SmrgSynopsis
19072c393a42Smrg
1908c9710b42Smrg   #include <fontconfig/fontconfig.h>
19092c393a42Smrg
1910a6844aabSmrg
1911ca08ab68Smrg   void FcValueDestroy(FcValue v);
19122c393a42Smrg
19132c393a42SmrgDescription
19142c393a42Smrg
1915ca08ab68Smrg   Frees any memory referenced by v. Values of type FcTypeString,
1916ca08ab68Smrg   FcTypeMatrix and FcTypeCharSet reference memory, the other types do not.
19172c393a42Smrg
19182c393a42SmrgVersion
19192c393a42Smrg
1920c9710b42Smrg   Fontconfig version 2.10.93
19212c393a42Smrg
1922ca08ab68Smrg                                  FcValueSave
19232c393a42Smrg
19242c393a42SmrgName
19252c393a42Smrg
1926ca08ab68Smrg   FcValueSave -- Copy a value
19272c393a42Smrg
19282c393a42SmrgSynopsis
19292c393a42Smrg
1930c9710b42Smrg   #include <fontconfig/fontconfig.h>
19312c393a42Smrg
1932a6844aabSmrg
1933ca08ab68Smrg   FcValue FcValueSave(FcValue v);
19342c393a42Smrg
19352c393a42SmrgDescription
19362c393a42Smrg
1937ca08ab68Smrg   Returns a copy of v duplicating any object referenced by it so that v may
1938ca08ab68Smrg   be safely destroyed without harming the new value.
19392c393a42Smrg
19402c393a42SmrgVersion
19412c393a42Smrg
1942c9710b42Smrg   Fontconfig version 2.10.93
19432c393a42Smrg
1944ca08ab68Smrg                                  FcValuePrint
19452c393a42Smrg
19462c393a42SmrgName
19472c393a42Smrg
1948ca08ab68Smrg   FcValuePrint -- Print a value to stdout
19492c393a42Smrg
19502c393a42SmrgSynopsis
19512c393a42Smrg
1952c9710b42Smrg   #include <fontconfig/fontconfig.h>
19532c393a42Smrg
1954a6844aabSmrg
1955ca08ab68Smrg   void FcValuePrint(FcValue v);
19562c393a42Smrg
19572c393a42SmrgDescription
19582c393a42Smrg
1959ca08ab68Smrg   Prints a human-readable representation of v to stdout. The format should
1960ca08ab68Smrg   not be considered part of the library specification as it may change in
1961ca08ab68Smrg   the future.
19622c393a42Smrg
19632c393a42SmrgVersion
19642c393a42Smrg
1965c9710b42Smrg   Fontconfig version 2.10.93
19662c393a42Smrg
1967ca08ab68Smrg                                  FcValueEqual
19682c393a42Smrg
19692c393a42SmrgName
19702c393a42Smrg
1971ca08ab68Smrg   FcValueEqual -- Test two values for equality
19722c393a42Smrg
19732c393a42SmrgSynopsis
19742c393a42Smrg
1975c9710b42Smrg   #include <fontconfig/fontconfig.h>
19762c393a42Smrg
1977a6844aabSmrg
1978ca08ab68Smrg   FcBool FcValueEqual(FcValue v_a, FcValue v_b);
19792c393a42Smrg
19802c393a42SmrgDescription
19812c393a42Smrg
1982ca08ab68Smrg   Compares two values. Integers and Doubles are compared as numbers;
1983ca08ab68Smrg   otherwise the two values have to be the same type to be considered equal.
1984ca08ab68Smrg   Strings are compared ignoring case.
19852c393a42Smrg
19862c393a42SmrgVersion
19872c393a42Smrg
1988c9710b42Smrg   Fontconfig version 2.10.93
1989ca08ab68Smrg
1990ca08ab68Smrg   --------------------------------------------------------------------------
1991ca08ab68Smrg
1992ca08ab68Smrg  FcCharSet
1993ca08ab68Smrg
1994ca08ab68Smrg   Table of Contents
1995ca08ab68Smrg
1996ca08ab68Smrg   [54]FcCharSetCreate -- Create an empty character set
1997ca08ab68Smrg
1998ca08ab68Smrg   [55]FcCharSetDestroy -- Destroy a character set
1999ca08ab68Smrg
2000ca08ab68Smrg   [56]FcCharSetAddChar -- Add a character to a charset
2001ca08ab68Smrg
2002ca08ab68Smrg   [57]FcCharSetDelChar -- Add a character to a charset
2003ca08ab68Smrg
2004ca08ab68Smrg   [58]FcCharSetCopy -- Copy a charset
2005ca08ab68Smrg
2006ca08ab68Smrg   [59]FcCharSetEqual -- Compare two charsets
2007ca08ab68Smrg
2008ca08ab68Smrg   [60]FcCharSetIntersect -- Intersect charsets
2009ca08ab68Smrg
2010ca08ab68Smrg   [61]FcCharSetUnion -- Add charsets
2011ca08ab68Smrg
2012ca08ab68Smrg   [62]FcCharSetSubtract -- Subtract charsets
2013ca08ab68Smrg
2014ca08ab68Smrg   [63]FcCharSetMerge -- Merge charsets
20152c393a42Smrg
2016ca08ab68Smrg   [64]FcCharSetHasChar -- Check a charset for a char
20172c393a42Smrg
2018ca08ab68Smrg   [65]FcCharSetCount -- Count entries in a charset
20192c393a42Smrg
2020ca08ab68Smrg   [66]FcCharSetIntersectCount -- Intersect and count charsets
20212c393a42Smrg
2022ca08ab68Smrg   [67]FcCharSetSubtractCount -- Subtract and count charsets
20232c393a42Smrg
2024ca08ab68Smrg   [68]FcCharSetIsSubset -- Test for charset inclusion
2025ca08ab68Smrg
2026ca08ab68Smrg   [69]FcCharSetFirstPage -- Start enumerating charset contents
2027ca08ab68Smrg
2028ca08ab68Smrg   [70]FcCharSetNextPage -- Continue enumerating charset contents
2029ca08ab68Smrg
2030ca08ab68Smrg   [71]FcCharSetCoverage -- DEPRECATED return coverage for a Unicode page
2031ca08ab68Smrg
2032ca08ab68Smrg   [72]FcCharSetNew -- DEPRECATED alias for FcCharSetCreate
2033ca08ab68Smrg
2034ca08ab68Smrg   An FcCharSet is a boolean array indicating a set of Unicode chars. Those
2035ca08ab68Smrg   associated with a font are marked constant and cannot be edited.
2036ca08ab68Smrg   FcCharSets may be reference counted internally to reduce memory
2037ca08ab68Smrg   consumption; this may be visible to applications as the result of
2038ca08ab68Smrg   FcCharSetCopy may return it's argument, and that CharSet may remain
2039ca08ab68Smrg   unmodifiable.
2040ca08ab68Smrg
2041ca08ab68Smrg                                FcCharSetCreate
2042ca08ab68Smrg
2043ca08ab68SmrgName
2044ca08ab68Smrg
2045ca08ab68Smrg   FcCharSetCreate -- Create an empty character set
2046ca08ab68Smrg
2047ca08ab68SmrgSynopsis
2048ca08ab68Smrg
2049c9710b42Smrg   #include <fontconfig/fontconfig.h>
2050ca08ab68Smrg
2051ca08ab68Smrg
2052ca08ab68Smrg   FcCharSet * FcCharSetCreate(void);
2053ca08ab68Smrg
2054ca08ab68SmrgDescription
2055ca08ab68Smrg
2056ca08ab68Smrg   FcCharSetCreate allocates and initializes a new empty character set
2057ca08ab68Smrg   object.
2058ca08ab68Smrg
2059ca08ab68SmrgVersion
2060ca08ab68Smrg
2061c9710b42Smrg   Fontconfig version 2.10.93
2062ca08ab68Smrg
2063ca08ab68Smrg                                FcCharSetDestroy
20642c393a42Smrg
20652c393a42SmrgName
20662c393a42Smrg
2067ca08ab68Smrg   FcCharSetDestroy -- Destroy a character set
20682c393a42Smrg
20692c393a42SmrgSynopsis
20702c393a42Smrg
2071c9710b42Smrg   #include <fontconfig/fontconfig.h>
20722c393a42Smrg
2073a6844aabSmrg
2074ca08ab68Smrg   void FcCharSetDestroy(FcCharSet *fcs);
20752c393a42Smrg
20762c393a42SmrgDescription
20772c393a42Smrg
2078ca08ab68Smrg   FcCharSetDestroy decrements the reference count fcs. If the reference
2079ca08ab68Smrg   count becomes zero, all memory referenced is freed.
20802c393a42Smrg
20812c393a42SmrgVersion
20822c393a42Smrg
2083c9710b42Smrg   Fontconfig version 2.10.93
20842c393a42Smrg
2085ca08ab68Smrg                                FcCharSetAddChar
20862c393a42Smrg
20872c393a42SmrgName
20882c393a42Smrg
2089ca08ab68Smrg   FcCharSetAddChar -- Add a character to a charset
20902c393a42Smrg
20912c393a42SmrgSynopsis
20922c393a42Smrg
2093c9710b42Smrg   #include <fontconfig/fontconfig.h>
20942c393a42Smrg
2095a6844aabSmrg
2096ca08ab68Smrg   FcBool FcCharSetAddChar(FcCharSet *fcs, FcChar32 ucs4);
20972c393a42Smrg
20982c393a42SmrgDescription
20992c393a42Smrg
2100ca08ab68Smrg   FcCharSetAddChar adds a single Unicode char to the set, returning FcFalse
2101ca08ab68Smrg   on failure, either as a result of a constant set or from running out of
2102ca08ab68Smrg   memory.
21032c393a42Smrg
21042c393a42SmrgVersion
21052c393a42Smrg
2106c9710b42Smrg   Fontconfig version 2.10.93
21072c393a42Smrg
2108ca08ab68Smrg                                FcCharSetDelChar
21092c393a42Smrg
21102c393a42SmrgName
21112c393a42Smrg
2112ca08ab68Smrg   FcCharSetDelChar -- Add a character to a charset
21132c393a42Smrg
21142c393a42SmrgSynopsis
21152c393a42Smrg
2116c9710b42Smrg   #include <fontconfig/fontconfig.h>
21172c393a42Smrg
2118a6844aabSmrg
2119ca08ab68Smrg   FcBool FcCharSetDelChar(FcCharSet *fcs, FcChar32 ucs4);
21202c393a42Smrg
21212c393a42SmrgDescription
21222c393a42Smrg
2123ca08ab68Smrg   FcCharSetDelChar deletes a single Unicode char from the set, returning
2124ca08ab68Smrg   FcFalse on failure, either as a result of a constant set or from running
2125ca08ab68Smrg   out of memory.
21262c393a42Smrg
21272c393a42SmrgVersion
21282c393a42Smrg
2129c9710b42Smrg   Fontconfig version 2.10.93
21302c393a42Smrg
2131ca08ab68Smrg                                 FcCharSetCopy
21322c393a42Smrg
21332c393a42SmrgName
21342c393a42Smrg
2135ca08ab68Smrg   FcCharSetCopy -- Copy a charset
21362c393a42Smrg
21372c393a42SmrgSynopsis
21382c393a42Smrg
2139c9710b42Smrg   #include <fontconfig/fontconfig.h>
21402c393a42Smrg
2141a6844aabSmrg
2142ca08ab68Smrg   FcCharSet * FcCharSetCopy(FcCharSet *src);
21432c393a42Smrg
21442c393a42SmrgDescription
21452c393a42Smrg
2146ca08ab68Smrg   Makes a copy of src; note that this may not actually do anything more than
2147ca08ab68Smrg   increment the reference count on src.
21482c393a42Smrg
21492c393a42SmrgVersion
21502c393a42Smrg
2151c9710b42Smrg   Fontconfig version 2.10.93
21522c393a42Smrg
2153ca08ab68Smrg                                 FcCharSetEqual
21542c393a42Smrg
21552c393a42SmrgName
21562c393a42Smrg
2157ca08ab68Smrg   FcCharSetEqual -- Compare two charsets
21582c393a42Smrg
21592c393a42SmrgSynopsis
21602c393a42Smrg
2161c9710b42Smrg   #include <fontconfig/fontconfig.h>
21622c393a42Smrg
2163a6844aabSmrg
2164ca08ab68Smrg   FcBool FcCharSetEqual(const FcCharSet *a, const FcCharSet *b);
21652c393a42Smrg
21662c393a42SmrgDescription
21672c393a42Smrg
2168ca08ab68Smrg   Returns whether a and b contain the same set of Unicode chars.
21692c393a42Smrg
21702c393a42SmrgVersion
21712c393a42Smrg
2172c9710b42Smrg   Fontconfig version 2.10.93
21732c393a42Smrg
2174ca08ab68Smrg                               FcCharSetIntersect
21752c393a42Smrg
21762c393a42SmrgName
21772c393a42Smrg
2178ca08ab68Smrg   FcCharSetIntersect -- Intersect charsets
21792c393a42Smrg
21802c393a42SmrgSynopsis
21812c393a42Smrg
2182c9710b42Smrg   #include <fontconfig/fontconfig.h>
21832c393a42Smrg
2184a6844aabSmrg
2185ca08ab68Smrg   FcCharSet * FcCharSetIntersect(const FcCharSet *a, const FcCharSet *b);
21862c393a42Smrg
21872c393a42SmrgDescription
21882c393a42Smrg
2189ca08ab68Smrg   Returns a set including only those chars found in both a and b.
21902c393a42Smrg
21912c393a42SmrgVersion
21922c393a42Smrg
2193c9710b42Smrg   Fontconfig version 2.10.93
21942c393a42Smrg
2195ca08ab68Smrg                                 FcCharSetUnion
21962c393a42Smrg
21972c393a42SmrgName
21982c393a42Smrg
2199ca08ab68Smrg   FcCharSetUnion -- Add charsets
22002c393a42Smrg
22012c393a42SmrgSynopsis
22022c393a42Smrg
2203c9710b42Smrg   #include <fontconfig/fontconfig.h>
22042c393a42Smrg
2205a6844aabSmrg
2206ca08ab68Smrg   FcCharSet * FcCharSetUnion(const FcCharSet *a, const FcCharSet *b);
22072c393a42Smrg
22082c393a42SmrgDescription
22092c393a42Smrg
2210ca08ab68Smrg   Returns a set including only those chars found in either a or b.
22112c393a42Smrg
22122c393a42SmrgVersion
22132c393a42Smrg
2214c9710b42Smrg   Fontconfig version 2.10.93
22152c393a42Smrg
2216ca08ab68Smrg                               FcCharSetSubtract
22172c393a42Smrg
22182c393a42SmrgName
22192c393a42Smrg
2220ca08ab68Smrg   FcCharSetSubtract -- Subtract charsets
22212c393a42Smrg
22222c393a42SmrgSynopsis
22232c393a42Smrg
2224c9710b42Smrg   #include <fontconfig/fontconfig.h>
22252c393a42Smrg
2226a6844aabSmrg
2227ca08ab68Smrg   FcCharSet * FcCharSetSubtract(const FcCharSet *a, const FcCharSet *b);
22282c393a42Smrg
22292c393a42SmrgDescription
22302c393a42Smrg
2231ca08ab68Smrg   Returns a set including only those chars found in a but not b.
22322c393a42Smrg
22332c393a42SmrgVersion
22342c393a42Smrg
2235c9710b42Smrg   Fontconfig version 2.10.93
2236a6844aabSmrg
2237ca08ab68Smrg                                 FcCharSetMerge
2238a6844aabSmrg
2239a6844aabSmrgName
2240a6844aabSmrg
2241ca08ab68Smrg   FcCharSetMerge -- Merge charsets
2242a6844aabSmrg
2243a6844aabSmrgSynopsis
2244a6844aabSmrg
2245c9710b42Smrg   #include <fontconfig/fontconfig.h>
2246a6844aabSmrg
2247a6844aabSmrg
2248ca08ab68Smrg   FcBool FcCharSetMerge(FcCharSet *a, const FcCharSet *b, FcBool *changed);
2249a6844aabSmrg
2250a6844aabSmrgDescription
2251a6844aabSmrg
2252ca08ab68Smrg   Adds all chars in b to a. In other words, this is an in-place version of
2253ca08ab68Smrg   FcCharSetUnion. If changed is not NULL, then it returns whether any new
2254ca08ab68Smrg   chars from b were added to a. Returns FcFalse on failure, either when a is
2255ca08ab68Smrg   a constant set or from running out of memory.
2256a6844aabSmrg
2257a6844aabSmrgVersion
2258a6844aabSmrg
2259c9710b42Smrg   Fontconfig version 2.10.93
22602c393a42Smrg
2261ca08ab68Smrg                                FcCharSetHasChar
22622c393a42Smrg
22632c393a42SmrgName
22642c393a42Smrg
2265ca08ab68Smrg   FcCharSetHasChar -- Check a charset for a char
22662c393a42Smrg
22672c393a42SmrgSynopsis
22682c393a42Smrg
2269c9710b42Smrg   #include <fontconfig/fontconfig.h>
22702c393a42Smrg
2271a6844aabSmrg
2272ca08ab68Smrg   FcBool FcCharSetHasChar(const FcCharSet *fcs, FcChar32 ucs4);
22732c393a42Smrg
22742c393a42SmrgDescription
22752c393a42Smrg
2276ca08ab68Smrg   Returns whether fcs contains the char ucs4.
22772c393a42Smrg
22782c393a42SmrgVersion
22792c393a42Smrg
2280c9710b42Smrg   Fontconfig version 2.10.93
22812c393a42Smrg
2282ca08ab68Smrg                                 FcCharSetCount
22832c393a42Smrg
22842c393a42SmrgName
22852c393a42Smrg
2286ca08ab68Smrg   FcCharSetCount -- Count entries in a charset
22872c393a42Smrg
22882c393a42SmrgSynopsis
22892c393a42Smrg
2290c9710b42Smrg   #include <fontconfig/fontconfig.h>
22912c393a42Smrg
2292a6844aabSmrg
2293ca08ab68Smrg   FcChar32 FcCharSetCount(const FcCharSet *a);
22942c393a42Smrg
22952c393a42SmrgDescription
22962c393a42Smrg
2297ca08ab68Smrg   Returns the total number of Unicode chars in a.
22982c393a42Smrg
22992c393a42SmrgVersion
23002c393a42Smrg
2301c9710b42Smrg   Fontconfig version 2.10.93
23022c393a42Smrg
2303ca08ab68Smrg                            FcCharSetIntersectCount
23042c393a42Smrg
23052c393a42SmrgName
23062c393a42Smrg
2307ca08ab68Smrg   FcCharSetIntersectCount -- Intersect and count charsets
23082c393a42Smrg
23092c393a42SmrgSynopsis
23102c393a42Smrg
2311c9710b42Smrg   #include <fontconfig/fontconfig.h>
23122c393a42Smrg
2313a6844aabSmrg
2314ca08ab68Smrg   FcChar32 FcCharSetIntersectCount(const FcCharSet *a, const FcCharSet *b);
23152c393a42Smrg
23162c393a42SmrgDescription
23172c393a42Smrg
2318ca08ab68Smrg   Returns the number of chars that are in both a and b.
23192c393a42Smrg
23202c393a42SmrgVersion
23212c393a42Smrg
2322c9710b42Smrg   Fontconfig version 2.10.93
23232c393a42Smrg
2324ca08ab68Smrg                             FcCharSetSubtractCount
23252c393a42Smrg
23262c393a42SmrgName
23272c393a42Smrg
2328ca08ab68Smrg   FcCharSetSubtractCount -- Subtract and count charsets
23292c393a42Smrg
23302c393a42SmrgSynopsis
23312c393a42Smrg
2332c9710b42Smrg   #include <fontconfig/fontconfig.h>
23332c393a42Smrg
2334a6844aabSmrg
2335ca08ab68Smrg   FcChar32 FcCharSetSubtractCount(const FcCharSet *a, const FcCharSet *b);
23362c393a42Smrg
23372c393a42SmrgDescription
23382c393a42Smrg
2339ca08ab68Smrg   Returns the number of chars that are in a but not in b.
23402c393a42Smrg
23412c393a42SmrgVersion
23422c393a42Smrg
2343c9710b42Smrg   Fontconfig version 2.10.93
23442c393a42Smrg
2345ca08ab68Smrg                               FcCharSetIsSubset
23462c393a42Smrg
23472c393a42SmrgName
23482c393a42Smrg
2349ca08ab68Smrg   FcCharSetIsSubset -- Test for charset inclusion
23502c393a42Smrg
23512c393a42SmrgSynopsis
23522c393a42Smrg
2353c9710b42Smrg   #include <fontconfig/fontconfig.h>
23542c393a42Smrg
2355a6844aabSmrg
2356ca08ab68Smrg   FcBool FcCharSetIsSubset(const FcCharSet *a, const FcCharSet *b);
23572c393a42Smrg
23582c393a42SmrgDescription
23592c393a42Smrg
2360ca08ab68Smrg   Returns whether a is a subset of b.
23612c393a42Smrg
23622c393a42SmrgVersion
23632c393a42Smrg
2364c9710b42Smrg   Fontconfig version 2.10.93
23652c393a42Smrg
2366ca08ab68Smrg                               FcCharSetFirstPage
23672c393a42Smrg
23682c393a42SmrgName
23692c393a42Smrg
2370ca08ab68Smrg   FcCharSetFirstPage -- Start enumerating charset contents
23712c393a42Smrg
23722c393a42SmrgSynopsis
23732c393a42Smrg
2374c9710b42Smrg   #include <fontconfig/fontconfig.h>
23752c393a42Smrg
2376a6844aabSmrg
2377ca08ab68Smrg   FcChar32 FcCharSetFirstPage(const FcCharSet *a,
2378ca08ab68Smrg   FcChar32[FC_CHARSET_MAP_SIZE] map, FcChar32 *next);
23792c393a42Smrg
23802c393a42SmrgDescription
23812c393a42Smrg
2382ca08ab68Smrg   Builds an array of bits marking the first page of Unicode coverage of a.
2383ca08ab68Smrg   Returns the base of the array. next contains the next page in the font.
23842c393a42Smrg
23852c393a42SmrgVersion
23862c393a42Smrg
2387c9710b42Smrg   Fontconfig version 2.10.93
23882c393a42Smrg
2389ca08ab68Smrg                               FcCharSetNextPage
23902c393a42Smrg
23912c393a42SmrgName
23922c393a42Smrg
2393ca08ab68Smrg   FcCharSetNextPage -- Continue enumerating charset contents
23942c393a42Smrg
23952c393a42SmrgSynopsis
23962c393a42Smrg
2397c9710b42Smrg   #include <fontconfig/fontconfig.h>
23982c393a42Smrg
2399a6844aabSmrg
2400ca08ab68Smrg   FcChar32 FcCharSetNextPage(const FcCharSet *a,
2401ca08ab68Smrg   FcChar32[FC_CHARSET_MAP_SIZE] map, FcChar32 *next);
24022c393a42Smrg
24032c393a42SmrgDescription
24042c393a42Smrg
2405ca08ab68Smrg   Builds an array of bits marking the Unicode coverage of a for page *next.
2406ca08ab68Smrg   Returns the base of the array. next contains the next page in the font.
24072c393a42Smrg
24082c393a42SmrgVersion
24092c393a42Smrg
2410c9710b42Smrg   Fontconfig version 2.10.93
24112c393a42Smrg
2412ca08ab68Smrg                               FcCharSetCoverage
24132c393a42Smrg
24142c393a42SmrgName
24152c393a42Smrg
2416ca08ab68Smrg   FcCharSetCoverage -- DEPRECATED return coverage for a Unicode page
24172c393a42Smrg
24182c393a42SmrgSynopsis
24192c393a42Smrg
2420c9710b42Smrg   #include <fontconfig/fontconfig.h>
24212c393a42Smrg
2422a6844aabSmrg
2423ca08ab68Smrg   FcChar32 FcCharSetCoverage(const FcCharSet *a, FcChar32page,
2424ca08ab68Smrg   FcChar32[8]result);
24252c393a42Smrg
24262c393a42SmrgDescription
24272c393a42Smrg
2428ca08ab68Smrg   DEPRECATED This function returns a bitmask in result which indicates which
2429ca08ab68Smrg   code points in page are included in a. FcCharSetCoverage returns the next
2430ca08ab68Smrg   page in the charset which has any coverage.
24312c393a42Smrg
24322c393a42SmrgVersion
24332c393a42Smrg
2434c9710b42Smrg   Fontconfig version 2.10.93
24352c393a42Smrg
2436ca08ab68Smrg                                  FcCharSetNew
24372c393a42Smrg
24382c393a42SmrgName
24392c393a42Smrg
2440ca08ab68Smrg   FcCharSetNew -- DEPRECATED alias for FcCharSetCreate
24412c393a42Smrg
24422c393a42SmrgSynopsis
24432c393a42Smrg
2444c9710b42Smrg   #include <fontconfig/fontconfig.h>
24452c393a42Smrg
2446a6844aabSmrg
2447ca08ab68Smrg   FcCharSet * FcCharSetNew(void);
24482c393a42Smrg
24492c393a42SmrgDescription
24502c393a42Smrg
2451ca08ab68Smrg   FcCharSetNew is a DEPRECATED alias for FcCharSetCreate.
24522c393a42Smrg
24532c393a42SmrgVersion
24542c393a42Smrg
2455c9710b42Smrg   Fontconfig version 2.10.93
2456ca08ab68Smrg
2457ca08ab68Smrg   --------------------------------------------------------------------------
2458ca08ab68Smrg
2459ca08ab68Smrg  FcLangSet
2460ca08ab68Smrg
2461ca08ab68Smrg   Table of Contents
2462ca08ab68Smrg
2463ca08ab68Smrg   [73]FcLangSetCreate -- create a langset object
2464ca08ab68Smrg
2465ca08ab68Smrg   [74]FcLangSetDestroy -- destroy a langset object
2466ca08ab68Smrg
2467ca08ab68Smrg   [75]FcLangSetCopy -- copy a langset object
2468ca08ab68Smrg
2469ca08ab68Smrg   [76]FcLangSetAdd -- add a language to a langset
2470ca08ab68Smrg
2471ca08ab68Smrg   [77]FcLangSetDel -- delete a language from a langset
2472ca08ab68Smrg
2473ca08ab68Smrg   [78]FcLangSetUnion -- Add langsets
2474ca08ab68Smrg
2475ca08ab68Smrg   [79]FcLangSetSubtract -- Subtract langsets
2476ca08ab68Smrg
2477ca08ab68Smrg   [80]FcLangSetCompare -- compare language sets
2478ca08ab68Smrg
2479ca08ab68Smrg   [81]FcLangSetContains -- check langset subset relation
2480ca08ab68Smrg
2481ca08ab68Smrg   [82]FcLangSetEqual -- test for matching langsets
2482ca08ab68Smrg
2483ca08ab68Smrg   [83]FcLangSetHash -- return a hash value for a langset
2484ca08ab68Smrg
2485ca08ab68Smrg   [84]FcLangSetHasLang -- test langset for language support
2486ca08ab68Smrg
2487ca08ab68Smrg   [85]FcGetDefaultLangs -- Get the default languages list
2488ca08ab68Smrg
2489ca08ab68Smrg   [86]FcGetLangs -- Get list of languages
2490ca08ab68Smrg
2491c9710b42Smrg   [87]FcLangNormalize -- Normalize the language string
2492c9710b42Smrg
2493c9710b42Smrg   [88]FcLangGetCharSet -- Get character map for a language
2494ca08ab68Smrg
2495ca08ab68Smrg   An FcLangSet is a set of language names (each of which include language
2496ca08ab68Smrg   and an optional territory). They are used when selecting fonts to indicate
2497ca08ab68Smrg   which languages the fonts need to support. Each font is marked, using
2498ca08ab68Smrg   language orthography information built into fontconfig, with the set of
2499ca08ab68Smrg   supported languages.
2500ca08ab68Smrg
2501ca08ab68Smrg                                FcLangSetCreate
2502ca08ab68Smrg
2503ca08ab68SmrgName
2504ca08ab68Smrg
2505ca08ab68Smrg   FcLangSetCreate -- create a langset object
2506ca08ab68Smrg
2507ca08ab68SmrgSynopsis
2508ca08ab68Smrg
2509c9710b42Smrg   #include <fontconfig/fontconfig.h>
2510ca08ab68Smrg
2511ca08ab68Smrg
2512ca08ab68Smrg   FcLangSet * FcLangSetCreate(void);
2513ca08ab68Smrg
2514ca08ab68SmrgDescription
2515ca08ab68Smrg
2516ca08ab68Smrg   FcLangSetCreate creates a new FcLangSet object.
2517ca08ab68Smrg
2518ca08ab68SmrgVersion
2519ca08ab68Smrg
2520c9710b42Smrg   Fontconfig version 2.10.93
2521ca08ab68Smrg
2522ca08ab68Smrg                                FcLangSetDestroy
2523ca08ab68Smrg
2524ca08ab68SmrgName
2525ca08ab68Smrg
2526ca08ab68Smrg   FcLangSetDestroy -- destroy a langset object
2527ca08ab68Smrg
2528ca08ab68SmrgSynopsis
2529ca08ab68Smrg
2530c9710b42Smrg   #include <fontconfig/fontconfig.h>
2531ca08ab68Smrg
2532ca08ab68Smrg
2533ca08ab68Smrg   void FcLangSetDestroy(FcLangSet *ls);
2534ca08ab68Smrg
2535ca08ab68SmrgDescription
2536ca08ab68Smrg
2537ca08ab68Smrg   FcLangSetDestroy destroys a FcLangSet object, freeing all memory
2538ca08ab68Smrg   associated with it.
2539ca08ab68Smrg
2540ca08ab68SmrgVersion
2541ca08ab68Smrg
2542c9710b42Smrg   Fontconfig version 2.10.93
2543ca08ab68Smrg
2544ca08ab68Smrg                                 FcLangSetCopy
2545a6844aabSmrg
2546ca08ab68SmrgName
2547ca08ab68Smrg
2548ca08ab68Smrg   FcLangSetCopy -- copy a langset object
2549ca08ab68Smrg
2550ca08ab68SmrgSynopsis
2551ca08ab68Smrg
2552c9710b42Smrg   #include <fontconfig/fontconfig.h>
2553ca08ab68Smrg
2554ca08ab68Smrg
2555ca08ab68Smrg   FcLangSet * FcLangSetCopy(const FcLangSet *ls);
2556ca08ab68Smrg
2557ca08ab68SmrgDescription
25582c393a42Smrg
2559ca08ab68Smrg   FcLangSetCopy creates a new FcLangSet object and populates it with the
2560ca08ab68Smrg   contents of ls.
25612c393a42Smrg
2562ca08ab68SmrgVersion
25632c393a42Smrg
2564c9710b42Smrg   Fontconfig version 2.10.93
25652c393a42Smrg
2566ca08ab68Smrg                                  FcLangSetAdd
25672c393a42Smrg
25682c393a42SmrgName
25692c393a42Smrg
2570ca08ab68Smrg   FcLangSetAdd -- add a language to a langset
25712c393a42Smrg
25722c393a42SmrgSynopsis
25732c393a42Smrg
2574c9710b42Smrg   #include <fontconfig/fontconfig.h>
25752c393a42Smrg
2576a6844aabSmrg
2577ca08ab68Smrg   FcBool FcLangSetAdd(FcLangSet *ls, const FcChar8 *lang);
25782c393a42Smrg
25792c393a42SmrgDescription
25802c393a42Smrg
2581ca08ab68Smrg   lang is added to ls. lang should be of the form Ll-Tt where Ll is a two or
2582ca08ab68Smrg   three letter language from ISO 639 and Tt is a territory from ISO 3166.
25832c393a42Smrg
25842c393a42SmrgVersion
25852c393a42Smrg
2586c9710b42Smrg   Fontconfig version 2.10.93
25872c393a42Smrg
2588ca08ab68Smrg                                  FcLangSetDel
25892c393a42Smrg
25902c393a42SmrgName
25912c393a42Smrg
2592ca08ab68Smrg   FcLangSetDel -- delete a language from a langset
25932c393a42Smrg
25942c393a42SmrgSynopsis
25952c393a42Smrg
2596c9710b42Smrg   #include <fontconfig/fontconfig.h>
25972c393a42Smrg
2598a6844aabSmrg
2599ca08ab68Smrg   FcBool FcLangSetDel(FcLangSet *ls, const FcChar8 *lang);
26002c393a42Smrg
26012c393a42SmrgDescription
26022c393a42Smrg
2603ca08ab68Smrg   lang is removed from ls. lang should be of the form Ll-Tt where Ll is a
2604ca08ab68Smrg   two or three letter language from ISO 639 and Tt is a territory from ISO
2605ca08ab68Smrg   3166.
26062c393a42Smrg
26072c393a42SmrgVersion
26082c393a42Smrg
2609c9710b42Smrg   Fontconfig version 2.10.93
26102c393a42Smrg
2611ca08ab68Smrg                                 FcLangSetUnion
26122c393a42Smrg
26132c393a42SmrgName
26142c393a42Smrg
2615ca08ab68Smrg   FcLangSetUnion -- Add langsets
26162c393a42Smrg
26172c393a42SmrgSynopsis
26182c393a42Smrg
2619c9710b42Smrg   #include <fontconfig/fontconfig.h>
26202c393a42Smrg
2621a6844aabSmrg
2622ca08ab68Smrg   FcLangSet * FcLangSetUnion(const FcLangSet *ls_a, const FcLangSet *ls_b);
26232c393a42Smrg
26242c393a42SmrgDescription
26252c393a42Smrg
2626ca08ab68Smrg   Returns a set including only those languages found in either ls_a or ls_b.
26272c393a42Smrg
26282c393a42SmrgVersion
26292c393a42Smrg
2630c9710b42Smrg   Fontconfig version 2.10.93
26312c393a42Smrg
2632ca08ab68Smrg                               FcLangSetSubtract
26332c393a42Smrg
26342c393a42SmrgName
26352c393a42Smrg
2636ca08ab68Smrg   FcLangSetSubtract -- Subtract langsets
26372c393a42Smrg
26382c393a42SmrgSynopsis
26392c393a42Smrg
2640c9710b42Smrg   #include <fontconfig/fontconfig.h>
26412c393a42Smrg
2642a6844aabSmrg
2643ca08ab68Smrg   FcLangSet * FcLangSetSubtract(const FcLangSet *ls_a, const FcLangSet
2644ca08ab68Smrg   *ls_b);
26452c393a42Smrg
26462c393a42SmrgDescription
26472c393a42Smrg
2648ca08ab68Smrg   Returns a set including only those languages found in ls_a but not in
2649ca08ab68Smrg   ls_b.
26502c393a42Smrg
26512c393a42SmrgVersion
26522c393a42Smrg
2653c9710b42Smrg   Fontconfig version 2.10.93
26542c393a42Smrg
2655ca08ab68Smrg                                FcLangSetCompare
26562c393a42Smrg
26572c393a42SmrgName
26582c393a42Smrg
2659ca08ab68Smrg   FcLangSetCompare -- compare language sets
26602c393a42Smrg
26612c393a42SmrgSynopsis
26622c393a42Smrg
2663c9710b42Smrg   #include <fontconfig/fontconfig.h>
26642c393a42Smrg
2665a6844aabSmrg
2666ca08ab68Smrg   FcLangResult FcLangSetCompare(const FcLangSet *ls_a, const FcLangSet
2667ca08ab68Smrg   *ls_b);
26682c393a42Smrg
26692c393a42SmrgDescription
26702c393a42Smrg
2671ca08ab68Smrg   FcLangSetCompare compares language coverage for ls_a and ls_b. If they
2672ca08ab68Smrg   share any language and territory pair, this function returns FcLangEqual.
2673ca08ab68Smrg   If they share a language but differ in which territory that language is
2674ca08ab68Smrg   for, this function returns FcLangDifferentTerritory. If they share no
2675ca08ab68Smrg   languages in common, this function returns FcLangDifferentLang.
26762c393a42Smrg
26772c393a42SmrgVersion
26782c393a42Smrg
2679c9710b42Smrg   Fontconfig version 2.10.93
26802c393a42Smrg
2681ca08ab68Smrg                               FcLangSetContains
26822c393a42Smrg
26832c393a42SmrgName
26842c393a42Smrg
2685ca08ab68Smrg   FcLangSetContains -- check langset subset relation
26862c393a42Smrg
26872c393a42SmrgSynopsis
26882c393a42Smrg
2689c9710b42Smrg   #include <fontconfig/fontconfig.h>
26902c393a42Smrg
2691a6844aabSmrg
2692ca08ab68Smrg   FcBool FcLangSetContains(const FcLangSet *ls_a, const FcLangSet *ls_b);
26932c393a42Smrg
26942c393a42SmrgDescription
26952c393a42Smrg
2696ca08ab68Smrg   FcLangSetContains returns FcTrue if ls_a contains every language in ls_b.
2697ca08ab68Smrg   ls_a will 'contain' a language from ls_b if ls_a has exactly the language,
2698ca08ab68Smrg   or either the language or ls_a has no territory.
26992c393a42Smrg
27002c393a42SmrgVersion
27012c393a42Smrg
2702c9710b42Smrg   Fontconfig version 2.10.93
27032c393a42Smrg
2704ca08ab68Smrg                                 FcLangSetEqual
27052c393a42Smrg
27062c393a42SmrgName
27072c393a42Smrg
2708ca08ab68Smrg   FcLangSetEqual -- test for matching langsets
27092c393a42Smrg
27102c393a42SmrgSynopsis
27112c393a42Smrg
2712c9710b42Smrg   #include <fontconfig/fontconfig.h>
27132c393a42Smrg
2714a6844aabSmrg
2715ca08ab68Smrg   FcBool FcLangSetEqual(const FcLangSet *ls_a, const FcLangSet *ls_b);
27162c393a42Smrg
27172c393a42SmrgDescription
27182c393a42Smrg
2719ca08ab68Smrg   Returns FcTrue if and only if ls_a supports precisely the same language
2720ca08ab68Smrg   and territory combinations as ls_b.
27212c393a42Smrg
27222c393a42SmrgVersion
27232c393a42Smrg
2724c9710b42Smrg   Fontconfig version 2.10.93
27252c393a42Smrg
2726ca08ab68Smrg                                 FcLangSetHash
27272c393a42Smrg
27282c393a42SmrgName
27292c393a42Smrg
2730ca08ab68Smrg   FcLangSetHash -- return a hash value for a langset
27312c393a42Smrg
27322c393a42SmrgSynopsis
27332c393a42Smrg
2734c9710b42Smrg   #include <fontconfig/fontconfig.h>
27352c393a42Smrg
2736a6844aabSmrg
2737ca08ab68Smrg   FcChar32 FcLangSetHash(const FcLangSet *ls);
27382c393a42Smrg
27392c393a42SmrgDescription
27402c393a42Smrg
2741ca08ab68Smrg   This function returns a value which depends solely on the languages
2742ca08ab68Smrg   supported by ls. Any language which equals ls will have the same result
2743ca08ab68Smrg   from FcLangSetHash. However, two langsets with the same hash value may not
2744ca08ab68Smrg   be equal.
27452c393a42Smrg
27462c393a42SmrgVersion
27472c393a42Smrg
2748c9710b42Smrg   Fontconfig version 2.10.93
27492c393a42Smrg
2750ca08ab68Smrg                                FcLangSetHasLang
27512c393a42Smrg
27522c393a42SmrgName
27532c393a42Smrg
2754ca08ab68Smrg   FcLangSetHasLang -- test langset for language support
2755a6844aabSmrg
2756a6844aabSmrgSynopsis
2757a6844aabSmrg
2758c9710b42Smrg   #include <fontconfig/fontconfig.h>
2759a6844aabSmrg
2760a6844aabSmrg
2761ca08ab68Smrg   FcLangResult FcLangSetHasLang(const FcLangSet *ls, const FcChar8 *lang);
2762a6844aabSmrg
2763a6844aabSmrgDescription
2764a6844aabSmrg
2765ca08ab68Smrg   FcLangSetHasLang checks whether ls supports lang. If ls has a matching
2766ca08ab68Smrg   language and territory pair, this function returns FcLangEqual. If ls has
2767ca08ab68Smrg   a matching language but differs in which territory that language is for,
2768ca08ab68Smrg   this function returns FcLangDifferentTerritory. If ls has no matching
2769ca08ab68Smrg   language, this function returns FcLangDifferentLang.
2770a6844aabSmrg
2771a6844aabSmrgVersion
2772a6844aabSmrg
2773c9710b42Smrg   Fontconfig version 2.10.93
2774a6844aabSmrg
2775ca08ab68Smrg                               FcGetDefaultLangs
2776a6844aabSmrg
2777a6844aabSmrgName
2778a6844aabSmrg
2779ca08ab68Smrg   FcGetDefaultLangs -- Get the default languages list
27802c393a42Smrg
27812c393a42SmrgSynopsis
27822c393a42Smrg
2783c9710b42Smrg   #include <fontconfig/fontconfig.h>
27842c393a42Smrg
2785a6844aabSmrg
2786ca08ab68Smrg   FcStrSet * FcGetDefaultLangs(voidls);
27872c393a42Smrg
27882c393a42SmrgDescription
27892c393a42Smrg
2790ca08ab68Smrg   Returns a string set of the default languages according to the environment
2791ca08ab68Smrg   variables on the system. This function looks for them in order of FC_LANG,
2792ca08ab68Smrg   LC_ALL, LC_CTYPE and LANG then. If there are no valid values in those
2793ca08ab68Smrg   environment variables, "en" will be set as fallback.
27942c393a42Smrg
27952c393a42SmrgVersion
27962c393a42Smrg
2797c9710b42Smrg   Fontconfig version 2.10.93
27982c393a42Smrg
2799ca08ab68Smrg                                   FcGetLangs
28002c393a42Smrg
28012c393a42SmrgName
28022c393a42Smrg
2803ca08ab68Smrg   FcGetLangs -- Get list of languages
28042c393a42Smrg
28052c393a42SmrgSynopsis
28062c393a42Smrg
2807c9710b42Smrg   #include <fontconfig/fontconfig.h>
28082c393a42Smrg
2809a6844aabSmrg
2810ca08ab68Smrg   FcStrSet * FcGetLangs(void);
28112c393a42Smrg
28122c393a42SmrgDescription
28132c393a42Smrg
2814ca08ab68Smrg   Returns a string set of all known languages.
28152c393a42Smrg
28162c393a42SmrgVersion
28172c393a42Smrg
2818c9710b42Smrg   Fontconfig version 2.10.93
2819c9710b42Smrg
2820c9710b42Smrg                                FcLangNormalize
2821c9710b42Smrg
2822c9710b42SmrgName
2823c9710b42Smrg
2824c9710b42Smrg   FcLangNormalize -- Normalize the language string
2825c9710b42Smrg
2826c9710b42SmrgSynopsis
2827c9710b42Smrg
2828c9710b42Smrg   #include <fontconfig/fontconfig.h>
2829c9710b42Smrg
2830c9710b42Smrg
2831c9710b42Smrg   FcChar8 * FcLangNormalize(const FcChar8 *lang);
2832c9710b42Smrg
2833c9710b42SmrgDescription
2834c9710b42Smrg
2835c9710b42Smrg   Returns a string to make lang suitable on fontconfig.
2836c9710b42Smrg
2837c9710b42SmrgVersion
2838c9710b42Smrg
2839c9710b42Smrg   Fontconfig version 2.10.93
28402c393a42Smrg
2841ca08ab68Smrg                                FcLangGetCharSet
28422c393a42Smrg
28432c393a42SmrgName
28442c393a42Smrg
2845ca08ab68Smrg   FcLangGetCharSet -- Get character map for a language
28462c393a42Smrg
28472c393a42SmrgSynopsis
28482c393a42Smrg
2849c9710b42Smrg   #include <fontconfig/fontconfig.h>
28502c393a42Smrg
2851a6844aabSmrg
2852ca08ab68Smrg   const FcCharSet * FcLangGetCharSet(const FcChar8 *lang);
28532c393a42Smrg
28542c393a42SmrgDescription
28552c393a42Smrg
2856ca08ab68Smrg   Returns the FcCharMap for a language.
28572c393a42Smrg
28582c393a42SmrgVersion
28592c393a42Smrg
2860c9710b42Smrg   Fontconfig version 2.10.93
2861ca08ab68Smrg
2862ca08ab68Smrg   --------------------------------------------------------------------------
2863ca08ab68Smrg
2864ca08ab68Smrg  FcMatrix
2865ca08ab68Smrg
2866ca08ab68Smrg   Table of Contents
2867ca08ab68Smrg
2868c9710b42Smrg   [89]FcMatrixInit -- initialize an FcMatrix structure
2869a6844aabSmrg
2870c9710b42Smrg   [90]FcMatrixCopy -- Copy a matrix
28712c393a42Smrg
2872c9710b42Smrg   [91]FcMatrixEqual -- Compare two matrices
28732c393a42Smrg
2874c9710b42Smrg   [92]FcMatrixMultiply -- Multiply matrices
28752c393a42Smrg
2876c9710b42Smrg   [93]FcMatrixRotate -- Rotate a matrix
28772c393a42Smrg
2878c9710b42Smrg   [94]FcMatrixScale -- Scale a matrix
2879ca08ab68Smrg
2880c9710b42Smrg   [95]FcMatrixShear -- Shear a matrix
2881ca08ab68Smrg
2882ca08ab68Smrg   FcMatrix structures hold an affine transformation in matrix form.
2883ca08ab68Smrg
2884ca08ab68Smrg                                  FcMatrixInit
28852c393a42Smrg
28862c393a42SmrgName
28872c393a42Smrg
2888ca08ab68Smrg   FcMatrixInit -- initialize an FcMatrix structure
28892c393a42Smrg
28902c393a42SmrgSynopsis
28912c393a42Smrg
2892c9710b42Smrg   #include <fontconfig/fontconfig.h>
28932c393a42Smrg
2894a6844aabSmrg
2895ca08ab68Smrg   void FcMatrixInit(FcMatrix *matrix);
28962c393a42Smrg
28972c393a42SmrgDescription
28982c393a42Smrg
2899ca08ab68Smrg   FcMatrixInit initializes matrix to the identity matrix.
29002c393a42Smrg
29012c393a42SmrgVersion
29022c393a42Smrg
2903c9710b42Smrg   Fontconfig version 2.10.93
29042c393a42Smrg
2905ca08ab68Smrg                                  FcMatrixCopy
29062c393a42Smrg
29072c393a42SmrgName
29082c393a42Smrg
2909ca08ab68Smrg   FcMatrixCopy -- Copy a matrix
29102c393a42Smrg
29112c393a42SmrgSynopsis
29122c393a42Smrg
2913c9710b42Smrg   #include <fontconfig/fontconfig.h>
29142c393a42Smrg
2915a6844aabSmrg
2916ca08ab68Smrg   void FcMatrixCopy(const FcMatrix *matrix);
29172c393a42Smrg
29182c393a42SmrgDescription
29192c393a42Smrg
2920ca08ab68Smrg   FcMatrixCopy allocates a new FcMatrix and copies mat into it.
29212c393a42Smrg
29222c393a42SmrgVersion
29232c393a42Smrg
2924c9710b42Smrg   Fontconfig version 2.10.93
29252c393a42Smrg
2926ca08ab68Smrg                                 FcMatrixEqual
29272c393a42Smrg
29282c393a42SmrgName
29292c393a42Smrg
2930ca08ab68Smrg   FcMatrixEqual -- Compare two matrices
29312c393a42Smrg
29322c393a42SmrgSynopsis
29332c393a42Smrg
2934c9710b42Smrg   #include <fontconfig/fontconfig.h>
29352c393a42Smrg
2936a6844aabSmrg
2937ca08ab68Smrg   void FcMatrixEqual(const FcMatrix *matrix1, const FcMatrix *matrix2);
29382c393a42Smrg
29392c393a42SmrgDescription
29402c393a42Smrg
2941ca08ab68Smrg   FcMatrixEqual compares matrix1 and matrix2 returning FcTrue when they are
2942ca08ab68Smrg   equal and FcFalse when they are not.
29432c393a42Smrg
29442c393a42SmrgVersion
29452c393a42Smrg
2946c9710b42Smrg   Fontconfig version 2.10.93
29472c393a42Smrg
2948ca08ab68Smrg                                FcMatrixMultiply
29492c393a42Smrg
29502c393a42SmrgName
29512c393a42Smrg
2952ca08ab68Smrg   FcMatrixMultiply -- Multiply matrices
29532c393a42Smrg
29542c393a42SmrgSynopsis
29552c393a42Smrg
2956c9710b42Smrg   #include <fontconfig/fontconfig.h>
29572c393a42Smrg
2958a6844aabSmrg
2959ca08ab68Smrg   void FcMatrixMultiply(FcMatrix *result, const FcMatrix *matrix1, const
2960ca08ab68Smrg   FcMatrix *matrix2);
29612c393a42Smrg
29622c393a42SmrgDescription
29632c393a42Smrg
2964ca08ab68Smrg   FcMatrixMultiply multiplies matrix1 and matrix2 storing the result in
2965ca08ab68Smrg   result.
29662c393a42Smrg
29672c393a42SmrgVersion
29682c393a42Smrg
2969c9710b42Smrg   Fontconfig version 2.10.93
29702c393a42Smrg
2971ca08ab68Smrg                                 FcMatrixRotate
29722c393a42Smrg
29732c393a42SmrgName
29742c393a42Smrg
2975ca08ab68Smrg   FcMatrixRotate -- Rotate a matrix
29762c393a42Smrg
29772c393a42SmrgSynopsis
29782c393a42Smrg
2979c9710b42Smrg   #include <fontconfig/fontconfig.h>
29802c393a42Smrg
2981a6844aabSmrg
2982ca08ab68Smrg   void FcMatrixRotate(FcMatrix *matrix, double cos, double sin);
29832c393a42Smrg
29842c393a42SmrgDescription
29852c393a42Smrg
2986ca08ab68Smrg   FcMatrixRotate rotates matrix by the angle who's sine is sin and cosine is
2987ca08ab68Smrg   cos. This is done by multiplying by the matrix:
2988a6844aabSmrg
2989ca08ab68Smrg     cos -sin
2990ca08ab68Smrg     sin  cos
29912c393a42Smrg
29922c393a42SmrgVersion
29932c393a42Smrg
2994c9710b42Smrg   Fontconfig version 2.10.93
29952c393a42Smrg
2996ca08ab68Smrg                                 FcMatrixScale
29972c393a42Smrg
29982c393a42SmrgName
29992c393a42Smrg
3000ca08ab68Smrg   FcMatrixScale -- Scale a matrix
30012c393a42Smrg
30022c393a42SmrgSynopsis
30032c393a42Smrg
3004c9710b42Smrg   #include <fontconfig/fontconfig.h>
30052c393a42Smrg
3006a6844aabSmrg
3007ca08ab68Smrg   void FcMatrixScale(FcMatrix *matrix, double sx, double dy);
30082c393a42Smrg
30092c393a42SmrgDescription
30102c393a42Smrg
3011ca08ab68Smrg   FcMatrixScale multiplies matrix x values by sx and y values by dy. This is
3012ca08ab68Smrg   done by multiplying by the matrix:
3013a6844aabSmrg
3014ca08ab68Smrg      sx  0
3015ca08ab68Smrg      0   dy
30162c393a42Smrg
30172c393a42SmrgVersion
30182c393a42Smrg
3019c9710b42Smrg   Fontconfig version 2.10.93
30202c393a42Smrg
3021ca08ab68Smrg                                 FcMatrixShear
30222c393a42Smrg
30232c393a42SmrgName
30242c393a42Smrg
3025ca08ab68Smrg   FcMatrixShear -- Shear a matrix
30262c393a42Smrg
30272c393a42SmrgSynopsis
30282c393a42Smrg
3029c9710b42Smrg   #include <fontconfig/fontconfig.h>
30302c393a42Smrg
3031a6844aabSmrg
3032ca08ab68Smrg   void FcMatrixShear(FcMatrix *matrix, double sh, double sv);
30332c393a42Smrg
30342c393a42SmrgDescription
30352c393a42Smrg
3036ca08ab68Smrg   FcMatrixShare shears matrix horizontally by sh and vertically by sv. This
3037ca08ab68Smrg   is done by multiplying by the matrix:
3038a6844aabSmrg
3039ca08ab68Smrg     1  sh
3040ca08ab68Smrg     sv  1
30412c393a42Smrg
30422c393a42SmrgVersion
30432c393a42Smrg
3044c9710b42Smrg   Fontconfig version 2.10.93
3045ca08ab68Smrg
3046ca08ab68Smrg   --------------------------------------------------------------------------
3047ca08ab68Smrg
3048ca08ab68Smrg  FcConfig
3049ca08ab68Smrg
3050ca08ab68Smrg   Table of Contents
3051ca08ab68Smrg
3052c9710b42Smrg   [96]FcConfigCreate -- Create a configuration
3053ca08ab68Smrg
3054c9710b42Smrg   [97]FcConfigReference -- Increment config reference count
3055ca08ab68Smrg
3056c9710b42Smrg   [98]FcConfigDestroy -- Destroy a configuration
3057ca08ab68Smrg
3058c9710b42Smrg   [99]FcConfigSetCurrent -- Set configuration as default
3059ca08ab68Smrg
3060c9710b42Smrg   [100]FcConfigGetCurrent -- Return current configuration
3061ca08ab68Smrg
3062c9710b42Smrg   [101]FcConfigUptoDate -- Check timestamps on config files
3063ca08ab68Smrg
3064c9710b42Smrg   [102]FcConfigHome -- return the current home directory.
3065ca08ab68Smrg
3066c9710b42Smrg   [103]FcConfigEnableHome -- controls use of the home directory.
3067ca08ab68Smrg
3068c9710b42Smrg   [104]FcConfigBuildFonts -- Build font database
3069ca08ab68Smrg
3070c9710b42Smrg   [105]FcConfigGetConfigDirs -- Get config directories
3071ca08ab68Smrg
3072c9710b42Smrg   [106]FcConfigGetFontDirs -- Get font directories
3073ca08ab68Smrg
3074c9710b42Smrg   [107]FcConfigGetConfigFiles -- Get config files
3075ca08ab68Smrg
3076c9710b42Smrg   [108]FcConfigGetCache -- DEPRECATED used to return per-user cache filename
3077ca08ab68Smrg
3078c9710b42Smrg   [109]FcConfigGetCacheDirs -- return the list of directories searched for
3079ca08ab68Smrg   cache files
3080ca08ab68Smrg
3081c9710b42Smrg   [110]FcConfigGetFonts -- Get config font set
3082ca08ab68Smrg
3083c9710b42Smrg   [111]FcConfigGetBlanks -- Get config blanks
3084a6844aabSmrg
3085c9710b42Smrg   [112]FcConfigGetRescanInterval -- Get config rescan interval
3086a6844aabSmrg
3087c9710b42Smrg   [113]FcConfigSetRescanInterval -- Set config rescan interval
3088a6844aabSmrg
3089c9710b42Smrg   [114]FcConfigAppFontAddFile -- Add font file to font database
3090a6844aabSmrg
3091c9710b42Smrg   [115]FcConfigAppFontAddDir -- Add fonts from directory to font database
30922c393a42Smrg
3093c9710b42Smrg   [116]FcConfigAppFontClear -- Remove all app fonts from font database
3094ca08ab68Smrg
3095c9710b42Smrg   [117]FcConfigSubstituteWithPat -- Execute substitutions
3096ca08ab68Smrg
3097c9710b42Smrg   [118]FcConfigSubstitute -- Execute substitutions
3098ca08ab68Smrg
3099c9710b42Smrg   [119]FcFontMatch -- Return best font
3100ca08ab68Smrg
3101c9710b42Smrg   [120]FcFontSort -- Return list of matching fonts
3102ca08ab68Smrg
3103c9710b42Smrg   [121]FcFontRenderPrepare -- Prepare pattern for loading font file
3104ca08ab68Smrg
3105c9710b42Smrg   [122]FcFontList -- List fonts
3106ca08ab68Smrg
3107c9710b42Smrg   [123]FcConfigFilename -- Find a config file
3108ca08ab68Smrg
3109c9710b42Smrg   [124]FcConfigParseAndLoad -- load a configuration file
3110c9710b42Smrg
3111c9710b42Smrg   [125]FcConfigGetSysRoot -- Obtain the system root directory
3112c9710b42Smrg
3113c9710b42Smrg   [126]FcConfigSetSysRoot -- Set the system root directory
3114ca08ab68Smrg
3115ca08ab68Smrg   An FcConfig object holds the internal representation of a configuration.
3116ca08ab68Smrg   There is a default configuration which applications may use by passing 0
3117ca08ab68Smrg   to any function using the data within an FcConfig.
3118ca08ab68Smrg
3119ca08ab68Smrg                                 FcConfigCreate
31202c393a42Smrg
31212c393a42SmrgName
31222c393a42Smrg
3123ca08ab68Smrg   FcConfigCreate -- Create a configuration
31242c393a42Smrg
31252c393a42SmrgSynopsis
31262c393a42Smrg
3127c9710b42Smrg   #include <fontconfig/fontconfig.h>
31282c393a42Smrg
3129a6844aabSmrg
3130ca08ab68Smrg   FcConfig * FcConfigCreate(void);
31312c393a42Smrg
31322c393a42SmrgDescription
31332c393a42Smrg
3134ca08ab68Smrg   Creates an empty configuration.
31352c393a42Smrg
31362c393a42SmrgVersion
31372c393a42Smrg
3138c9710b42Smrg   Fontconfig version 2.10.93
3139a6844aabSmrg
3140ca08ab68Smrg                               FcConfigReference
3141a6844aabSmrg
3142a6844aabSmrgName
3143a6844aabSmrg
3144ca08ab68Smrg   FcConfigReference -- Increment config reference count
3145a6844aabSmrg
3146a6844aabSmrgSynopsis
3147a6844aabSmrg
3148c9710b42Smrg   #include <fontconfig/fontconfig.h>
3149a6844aabSmrg
3150a6844aabSmrg
3151ca08ab68Smrg   FcConfig * FcConfigReference(FcConfig *config);
3152a6844aabSmrg
3153a6844aabSmrgDescription
3154a6844aabSmrg
3155ca08ab68Smrg   Add another reference to config. Configs are freed only when the reference
3156ca08ab68Smrg   count reaches zero. If config is NULL, the current configuration is used.
3157ca08ab68Smrg   In that case this function will be similar to FcConfigGetCurrent() except
3158ca08ab68Smrg   that it increments the reference count before returning and the user is
3159ca08ab68Smrg   responsible for destroying the configuration when not needed anymore.
3160a6844aabSmrg
3161a6844aabSmrgVersion
3162a6844aabSmrg
3163c9710b42Smrg   Fontconfig version 2.10.93
31642c393a42Smrg
3165ca08ab68Smrg                                FcConfigDestroy
31662c393a42Smrg
31672c393a42SmrgName
31682c393a42Smrg
3169ca08ab68Smrg   FcConfigDestroy -- Destroy a configuration
31702c393a42Smrg
31712c393a42SmrgSynopsis
31722c393a42Smrg
3173c9710b42Smrg   #include <fontconfig/fontconfig.h>
31742c393a42Smrg
3175a6844aabSmrg
3176ca08ab68Smrg   void FcConfigDestroy(FcConfig *config);
31772c393a42Smrg
31782c393a42SmrgDescription
31792c393a42Smrg
3180ca08ab68Smrg   Decrements the config reference count. If all references are gone,
3181ca08ab68Smrg   destroys the configuration and any data associated with it. Note that
3182ca08ab68Smrg   calling this function with the return from FcConfigGetCurrent will cause a
3183ca08ab68Smrg   new configuration to be created for use as current configuration.
31842c393a42Smrg
31852c393a42SmrgVersion
31862c393a42Smrg
3187c9710b42Smrg   Fontconfig version 2.10.93
31882c393a42Smrg
3189ca08ab68Smrg                               FcConfigSetCurrent
31902c393a42Smrg
31912c393a42SmrgName
31922c393a42Smrg
3193ca08ab68Smrg   FcConfigSetCurrent -- Set configuration as default
31942c393a42Smrg
31952c393a42SmrgSynopsis
31962c393a42Smrg
3197c9710b42Smrg   #include <fontconfig/fontconfig.h>
31982c393a42Smrg
3199a6844aabSmrg
3200ca08ab68Smrg   FcBool FcConfigSetCurrent(FcConfig *config);
32012c393a42Smrg
32022c393a42SmrgDescription
32032c393a42Smrg
3204ca08ab68Smrg   Sets the current default configuration to config. Implicitly calls
3205ca08ab68Smrg   FcConfigBuildFonts if necessary, returning FcFalse if that call fails.
32062c393a42Smrg
32072c393a42SmrgVersion
32082c393a42Smrg
3209c9710b42Smrg   Fontconfig version 2.10.93
32102c393a42Smrg
3211ca08ab68Smrg                               FcConfigGetCurrent
32122c393a42Smrg
32132c393a42SmrgName
32142c393a42Smrg
3215ca08ab68Smrg   FcConfigGetCurrent -- Return current configuration
32162c393a42Smrg
32172c393a42SmrgSynopsis
32182c393a42Smrg
3219c9710b42Smrg   #include <fontconfig/fontconfig.h>
32202c393a42Smrg
3221a6844aabSmrg
3222ca08ab68Smrg   FcConfig * FcConfigGetCurrent(void);
32232c393a42Smrg
32242c393a42SmrgDescription
32252c393a42Smrg
3226ca08ab68Smrg   Returns the current default configuration.
32272c393a42Smrg
32282c393a42SmrgVersion
32292c393a42Smrg
3230c9710b42Smrg   Fontconfig version 2.10.93
32312c393a42Smrg
3232ca08ab68Smrg                                FcConfigUptoDate
32332c393a42Smrg
32342c393a42SmrgName
32352c393a42Smrg
3236ca08ab68Smrg   FcConfigUptoDate -- Check timestamps on config files
32372c393a42Smrg
32382c393a42SmrgSynopsis
32392c393a42Smrg
3240c9710b42Smrg   #include <fontconfig/fontconfig.h>
32412c393a42Smrg
3242a6844aabSmrg
3243ca08ab68Smrg   FcBool FcConfigUptoDate(FcConfig *config);
32442c393a42Smrg
32452c393a42SmrgDescription
32462c393a42Smrg
3247ca08ab68Smrg   Checks all of the files related to config and returns whether any of them
3248ca08ab68Smrg   has been modified since the configuration was created. If config is NULL,
3249ca08ab68Smrg   the current configuration is used.
32502c393a42Smrg
32512c393a42SmrgVersion
32522c393a42Smrg
3253c9710b42Smrg   Fontconfig version 2.10.93
32542c393a42Smrg
3255ca08ab68Smrg                                  FcConfigHome
32562c393a42Smrg
32572c393a42SmrgName
32582c393a42Smrg
3259ca08ab68Smrg   FcConfigHome -- return the current home directory.
32602c393a42Smrg
32612c393a42SmrgSynopsis
32622c393a42Smrg
3263c9710b42Smrg   #include <fontconfig/fontconfig.h>
32642c393a42Smrg
3265a6844aabSmrg
3266ca08ab68Smrg   FcChar8 * FcConfigHome(void);
32672c393a42Smrg
32682c393a42SmrgDescription
32692c393a42Smrg
3270ca08ab68Smrg   Return the current user's home directory, if it is available, and if using
3271ca08ab68Smrg   it is enabled, and NULL otherwise. See also FcConfigEnableHome).
32722c393a42Smrg
32732c393a42SmrgVersion
32742c393a42Smrg
3275c9710b42Smrg   Fontconfig version 2.10.93
32762c393a42Smrg
3277ca08ab68Smrg                               FcConfigEnableHome
32782c393a42Smrg
32792c393a42SmrgName
32802c393a42Smrg
3281ca08ab68Smrg   FcConfigEnableHome -- controls use of the home directory.
32822c393a42Smrg
32832c393a42SmrgSynopsis
32842c393a42Smrg
3285c9710b42Smrg   #include <fontconfig/fontconfig.h>
32862c393a42Smrg
3287a6844aabSmrg
3288ca08ab68Smrg   FcBool FcConfigEnableHome(FcBool enable);
32892c393a42Smrg
32902c393a42SmrgDescription
32912c393a42Smrg
3292ca08ab68Smrg   If enable is FcTrue, then Fontconfig will use various files which are
3293ca08ab68Smrg   specified relative to the user's home directory (using the ~ notation in
3294ca08ab68Smrg   the configuration). When enable is FcFalse, then all use of the home
3295ca08ab68Smrg   directory in these contexts will be disabled. The previous setting of the
3296ca08ab68Smrg   value is returned.
32972c393a42Smrg
32982c393a42SmrgVersion
32992c393a42Smrg
3300c9710b42Smrg   Fontconfig version 2.10.93
33012c393a42Smrg
3302ca08ab68Smrg                               FcConfigBuildFonts
33032c393a42Smrg
33042c393a42SmrgName
33052c393a42Smrg
3306ca08ab68Smrg   FcConfigBuildFonts -- Build font database
33072c393a42Smrg
33082c393a42SmrgSynopsis
33092c393a42Smrg
3310c9710b42Smrg   #include <fontconfig/fontconfig.h>
33112c393a42Smrg
3312a6844aabSmrg
3313ca08ab68Smrg   FcBool FcConfigBuildFonts(FcConfig *config);
33142c393a42Smrg
33152c393a42SmrgDescription
33162c393a42Smrg
3317ca08ab68Smrg   Builds the set of available fonts for the given configuration. Note that
3318ca08ab68Smrg   any changes to the configuration after this call have indeterminate
3319ca08ab68Smrg   effects. Returns FcFalse if this operation runs out of memory. If config
3320ca08ab68Smrg   is NULL, the current configuration is used.
33212c393a42Smrg
33222c393a42SmrgVersion
33232c393a42Smrg
3324c9710b42Smrg   Fontconfig version 2.10.93
33252c393a42Smrg
3326ca08ab68Smrg                             FcConfigGetConfigDirs
33272c393a42Smrg
33282c393a42SmrgName
33292c393a42Smrg
3330ca08ab68Smrg   FcConfigGetConfigDirs -- Get config directories
33312c393a42Smrg
33322c393a42SmrgSynopsis
33332c393a42Smrg
3334c9710b42Smrg   #include <fontconfig/fontconfig.h>
33352c393a42Smrg
3336a6844aabSmrg
3337ca08ab68Smrg   FcStrList * FcConfigGetConfigDirs(FcConfig *config);
33382c393a42Smrg
33392c393a42SmrgDescription
33402c393a42Smrg
3341ca08ab68Smrg   Returns the list of font directories specified in the configuration files
3342ca08ab68Smrg   for config. Does not include any subdirectories. If config is NULL, the
3343ca08ab68Smrg   current configuration is used.
33442c393a42Smrg
33452c393a42SmrgVersion
33462c393a42Smrg
3347c9710b42Smrg   Fontconfig version 2.10.93
33482c393a42Smrg
3349ca08ab68Smrg                              FcConfigGetFontDirs
33502c393a42Smrg
33512c393a42SmrgName
33522c393a42Smrg
3353ca08ab68Smrg   FcConfigGetFontDirs -- Get font directories
33542c393a42Smrg
33552c393a42SmrgSynopsis
33562c393a42Smrg
3357c9710b42Smrg   #include <fontconfig/fontconfig.h>
33582c393a42Smrg
3359a6844aabSmrg
3360ca08ab68Smrg   FcStrList * FcConfigGetFontDirs(FcConfig *config);
33612c393a42Smrg
33622c393a42SmrgDescription
33632c393a42Smrg
3364ca08ab68Smrg   Returns the list of font directories in config. This includes the
3365ca08ab68Smrg   configured font directories along with any directories below those in the
3366ca08ab68Smrg   filesystem. If config is NULL, the current configuration is used.
33672c393a42Smrg
33682c393a42SmrgVersion
33692c393a42Smrg
3370c9710b42Smrg   Fontconfig version 2.10.93
33712c393a42Smrg
3372ca08ab68Smrg                             FcConfigGetConfigFiles
33732c393a42Smrg
33742c393a42SmrgName
33752c393a42Smrg
3376ca08ab68Smrg   FcConfigGetConfigFiles -- Get config files
33772c393a42Smrg
33782c393a42SmrgSynopsis
33792c393a42Smrg
3380c9710b42Smrg   #include <fontconfig/fontconfig.h>
33812c393a42Smrg
3382a6844aabSmrg
3383ca08ab68Smrg   FcStrList * FcConfigGetConfigFiles(FcConfig *config);
33842c393a42Smrg
33852c393a42SmrgDescription
33862c393a42Smrg
3387ca08ab68Smrg   Returns the list of known configuration files used to generate config. If
3388ca08ab68Smrg   config is NULL, the current configuration is used.
33892c393a42Smrg
33902c393a42SmrgVersion
33912c393a42Smrg
3392c9710b42Smrg   Fontconfig version 2.10.93
33932c393a42Smrg
3394ca08ab68Smrg                                FcConfigGetCache
33952c393a42Smrg
33962c393a42SmrgName
33972c393a42Smrg
3398ca08ab68Smrg   FcConfigGetCache -- DEPRECATED used to return per-user cache filename
33992c393a42Smrg
34002c393a42SmrgSynopsis
34012c393a42Smrg
3402c9710b42Smrg   #include <fontconfig/fontconfig.h>
34032c393a42Smrg
3404a6844aabSmrg
3405ca08ab68Smrg   FcChar8 * FcConfigGetCache(FcConfig *config);
34062c393a42Smrg
34072c393a42SmrgDescription
34082c393a42Smrg
3409ca08ab68Smrg   With fontconfig no longer using per-user cache files, this function now
3410ca08ab68Smrg   simply returns NULL to indicate that no per-user file exists.
34112c393a42Smrg
34122c393a42SmrgVersion
34132c393a42Smrg
3414c9710b42Smrg   Fontconfig version 2.10.93
34152c393a42Smrg
3416ca08ab68Smrg                              FcConfigGetCacheDirs
34172c393a42Smrg
34182c393a42SmrgName
34192c393a42Smrg
3420ca08ab68Smrg   FcConfigGetCacheDirs -- return the list of directories searched for cache
3421ca08ab68Smrg   files
34222c393a42Smrg
34232c393a42SmrgSynopsis
34242c393a42Smrg
3425c9710b42Smrg   #include <fontconfig/fontconfig.h>
34262c393a42Smrg
3427a6844aabSmrg
3428ca08ab68Smrg   FcStrList * FcConfigGetCacheDirs(const FcConfig *config);
34292c393a42Smrg
34302c393a42SmrgDescription
34312c393a42Smrg
3432ca08ab68Smrg   FcConfigGetCacheDirs returns a string list containing all of the
3433ca08ab68Smrg   directories that fontconfig will search when attempting to load a cache
3434ca08ab68Smrg   file for a font directory. If config is NULL, the current configuration is
3435ca08ab68Smrg   used.
34362c393a42Smrg
34372c393a42SmrgVersion
34382c393a42Smrg
3439c9710b42Smrg   Fontconfig version 2.10.93
34402c393a42Smrg
3441ca08ab68Smrg                                FcConfigGetFonts
34422c393a42Smrg
34432c393a42SmrgName
34442c393a42Smrg
3445ca08ab68Smrg   FcConfigGetFonts -- Get config font set
34462c393a42Smrg
34472c393a42SmrgSynopsis
34482c393a42Smrg
3449c9710b42Smrg   #include <fontconfig/fontconfig.h>
34502c393a42Smrg
3451a6844aabSmrg
3452ca08ab68Smrg   FcFontSet * FcConfigGetFonts(FcConfig *config, FcSetName set);
34532c393a42Smrg
34542c393a42SmrgDescription
34552c393a42Smrg
3456ca08ab68Smrg   Returns one of the two sets of fonts from the configuration as specified
3457ca08ab68Smrg   by set. This font set is owned by the library and must not be modified or
3458ca08ab68Smrg   freed. If config is NULL, the current configuration is used.
34592c393a42Smrg
34602c393a42SmrgVersion
34612c393a42Smrg
3462c9710b42Smrg   Fontconfig version 2.10.93
34632c393a42Smrg
3464ca08ab68Smrg                               FcConfigGetBlanks
34652c393a42Smrg
34662c393a42SmrgName
34672c393a42Smrg
3468ca08ab68Smrg   FcConfigGetBlanks -- Get config blanks
34692c393a42Smrg
34702c393a42SmrgSynopsis
34712c393a42Smrg
3472c9710b42Smrg   #include <fontconfig/fontconfig.h>
34732c393a42Smrg
3474a6844aabSmrg
3475ca08ab68Smrg   FcBlanks * FcConfigGetBlanks(FcConfig *config);
34762c393a42Smrg
34772c393a42SmrgDescription
34782c393a42Smrg
3479ca08ab68Smrg   Returns the FcBlanks object associated with the given configuration, if no
3480ca08ab68Smrg   blanks were present in the configuration, this function will return 0. The
3481ca08ab68Smrg   returned FcBlanks object if not NULL, is valid as long as the owning
3482ca08ab68Smrg   FcConfig is alive. If config is NULL, the current configuration is used.
34832c393a42Smrg
34842c393a42SmrgVersion
34852c393a42Smrg
3486c9710b42Smrg   Fontconfig version 2.10.93
34872c393a42Smrg
3488ca08ab68Smrg                           FcConfigGetRescanInterval
34892c393a42Smrg
34902c393a42SmrgName
34912c393a42Smrg
3492ca08ab68Smrg   FcConfigGetRescanInterval -- Get config rescan interval
34932c393a42Smrg
34942c393a42SmrgSynopsis
34952c393a42Smrg
3496c9710b42Smrg   #include <fontconfig/fontconfig.h>
34972c393a42Smrg
3498a6844aabSmrg
3499ca08ab68Smrg   int FcConfigGetRescanInterval(FcConfig *config);
35002c393a42Smrg
35012c393a42SmrgDescription
35022c393a42Smrg
3503ca08ab68Smrg   Returns the interval between automatic checks of the configuration (in
3504ca08ab68Smrg   seconds) specified in config. The configuration is checked during a call
3505ca08ab68Smrg   to FcFontList when this interval has passed since the last check. An
3506ca08ab68Smrg   interval setting of zero disables automatic checks. If config is NULL, the
3507ca08ab68Smrg   current configuration is used.
35082c393a42Smrg
35092c393a42SmrgVersion
35102c393a42Smrg
3511c9710b42Smrg   Fontconfig version 2.10.93
35122c393a42Smrg
3513ca08ab68Smrg                           FcConfigSetRescanInterval
35142c393a42Smrg
35152c393a42SmrgName
35162c393a42Smrg
3517ca08ab68Smrg   FcConfigSetRescanInterval -- Set config rescan interval
35182c393a42Smrg
35192c393a42SmrgSynopsis
35202c393a42Smrg
3521c9710b42Smrg   #include <fontconfig/fontconfig.h>
35222c393a42Smrg
3523a6844aabSmrg
3524ca08ab68Smrg   FcBool FcConfigSetRescanInterval(FcConfig *config, int rescanInterval);
35252c393a42Smrg
35262c393a42SmrgDescription
35272c393a42Smrg
3528ca08ab68Smrg   Sets the rescan interval. Returns FcFalse if the interval cannot be set
3529ca08ab68Smrg   (due to allocation failure). Otherwise returns FcTrue. An interval setting
3530ca08ab68Smrg   of zero disables automatic checks. If config is NULL, the current
3531ca08ab68Smrg   configuration is used.
35322c393a42Smrg
35332c393a42SmrgVersion
35342c393a42Smrg
3535c9710b42Smrg   Fontconfig version 2.10.93
35362c393a42Smrg
3537ca08ab68Smrg                             FcConfigAppFontAddFile
35382c393a42Smrg
35392c393a42SmrgName
35402c393a42Smrg
3541ca08ab68Smrg   FcConfigAppFontAddFile -- Add font file to font database
35422c393a42Smrg
35432c393a42SmrgSynopsis
35442c393a42Smrg
3545c9710b42Smrg   #include <fontconfig/fontconfig.h>
35462c393a42Smrg
3547a6844aabSmrg
3548ca08ab68Smrg   FcBool FcConfigAppFontAddFile(FcConfig *config, const FcChar8 *file);
35492c393a42Smrg
35502c393a42SmrgDescription
35512c393a42Smrg
3552ca08ab68Smrg   Adds an application-specific font to the configuration. Returns FcFalse if
3553ca08ab68Smrg   the fonts cannot be added (due to allocation failure). Otherwise returns
3554ca08ab68Smrg   FcTrue. If config is NULL, the current configuration is used.
35552c393a42Smrg
35562c393a42SmrgVersion
35572c393a42Smrg
3558c9710b42Smrg   Fontconfig version 2.10.93
35592c393a42Smrg
3560ca08ab68Smrg                             FcConfigAppFontAddDir
35612c393a42Smrg
35622c393a42SmrgName
35632c393a42Smrg
3564ca08ab68Smrg   FcConfigAppFontAddDir -- Add fonts from directory to font database
35652c393a42Smrg
35662c393a42SmrgSynopsis
35672c393a42Smrg
3568c9710b42Smrg   #include <fontconfig/fontconfig.h>
35692c393a42Smrg
3570a6844aabSmrg
3571ca08ab68Smrg   FcBool FcConfigAppFontAddDir(FcConfig *config, const FcChar8 *dir);
35722c393a42Smrg
35732c393a42SmrgDescription
35742c393a42Smrg
3575ca08ab68Smrg   Scans the specified directory for fonts, adding each one found to the
3576ca08ab68Smrg   application-specific set of fonts. Returns FcFalse if the fonts cannot be
3577ca08ab68Smrg   added (due to allocation failure). Otherwise returns FcTrue. If config is
3578ca08ab68Smrg   NULL, the current configuration is used.
35792c393a42Smrg
35802c393a42SmrgVersion
35812c393a42Smrg
3582c9710b42Smrg   Fontconfig version 2.10.93
35832c393a42Smrg
3584ca08ab68Smrg                              FcConfigAppFontClear
35852c393a42Smrg
35862c393a42SmrgName
35872c393a42Smrg
3588ca08ab68Smrg   FcConfigAppFontClear -- Remove all app fonts from font database
35892c393a42Smrg
35902c393a42SmrgSynopsis
35912c393a42Smrg
3592c9710b42Smrg   #include <fontconfig/fontconfig.h>
35932c393a42Smrg
3594a6844aabSmrg
3595ca08ab68Smrg   void FcConfigAppFontClear(FcConfig *config);
35962c393a42Smrg
35972c393a42SmrgDescription
35982c393a42Smrg
3599ca08ab68Smrg   Clears the set of application-specific fonts. If config is NULL, the
3600ca08ab68Smrg   current configuration is used.
36012c393a42Smrg
36022c393a42SmrgVersion
36032c393a42Smrg
3604c9710b42Smrg   Fontconfig version 2.10.93
36052c393a42Smrg
3606ca08ab68Smrg                           FcConfigSubstituteWithPat
36072c393a42Smrg
36082c393a42SmrgName
36092c393a42Smrg
3610ca08ab68Smrg   FcConfigSubstituteWithPat -- Execute substitutions
36112c393a42Smrg
36122c393a42SmrgSynopsis
36132c393a42Smrg
3614c9710b42Smrg   #include <fontconfig/fontconfig.h>
36152c393a42Smrg
3616a6844aabSmrg
3617ca08ab68Smrg   FcBool FcConfigSubstituteWithPat(FcConfig *config, FcPattern *p, FcPattern
3618ca08ab68Smrg   *p_pat, FcMatchKind kind);
36192c393a42Smrg
36202c393a42SmrgDescription
36212c393a42Smrg
3622ca08ab68Smrg   Performs the sequence of pattern modification operations, if kind is
3623ca08ab68Smrg   FcMatchPattern, then those tagged as pattern operations are applied, else
3624ca08ab68Smrg   if kind is FcMatchFont, those tagged as font operations are applied and
3625ca08ab68Smrg   p_pat is used for <test> elements with target=pattern. Returns FcFalse if
3626ca08ab68Smrg   the substitution cannot be performed (due to allocation failure).
3627ca08ab68Smrg   Otherwise returns FcTrue. If config is NULL, the current configuration is
3628ca08ab68Smrg   used.
36292c393a42Smrg
36302c393a42SmrgVersion
36312c393a42Smrg
3632c9710b42Smrg   Fontconfig version 2.10.93
36332c393a42Smrg
3634ca08ab68Smrg                               FcConfigSubstitute
36352c393a42Smrg
36362c393a42SmrgName
36372c393a42Smrg
3638ca08ab68Smrg   FcConfigSubstitute -- Execute substitutions
36392c393a42Smrg
36402c393a42SmrgSynopsis
36412c393a42Smrg
3642c9710b42Smrg   #include <fontconfig/fontconfig.h>
36432c393a42Smrg
3644a6844aabSmrg
3645ca08ab68Smrg   FcBool FcConfigSubstitute(FcConfig *config, FcPattern *p, FcMatchKind
3646ca08ab68Smrg   kind);
36472c393a42Smrg
36482c393a42SmrgDescription
36492c393a42Smrg
3650ca08ab68Smrg   Calls FcConfigSubstituteWithPat setting p_pat to NULL. Returns FcFalse if
3651ca08ab68Smrg   the substitution cannot be performed (due to allocation failure).
3652ca08ab68Smrg   Otherwise returns FcTrue. If config is NULL, the current configuration is
3653ca08ab68Smrg   used.
36542c393a42Smrg
36552c393a42SmrgVersion
36562c393a42Smrg
3657c9710b42Smrg   Fontconfig version 2.10.93
36582c393a42Smrg
3659ca08ab68Smrg                                  FcFontMatch
36602c393a42Smrg
36612c393a42SmrgName
36622c393a42Smrg
3663ca08ab68Smrg   FcFontMatch -- Return best font
36642c393a42Smrg
36652c393a42SmrgSynopsis
36662c393a42Smrg
3667c9710b42Smrg   #include <fontconfig/fontconfig.h>
36682c393a42Smrg
3669a6844aabSmrg
3670ca08ab68Smrg   FcPattern * FcFontMatch(FcConfig *config, FcPattern *p, FcResult *result);
36712c393a42Smrg
36722c393a42SmrgDescription
36732c393a42Smrg
3674ca08ab68Smrg   Finds the font in sets most closely matching pattern and returns the
3675ca08ab68Smrg   result of FcFontRenderPrepare for that font and the provided pattern. This
3676ca08ab68Smrg   function should be called only after FcConfigSubstitute and
3677ca08ab68Smrg   FcDefaultSubstitute have been called for p; otherwise the results will not
3678ca08ab68Smrg   be correct. If config is NULL, the current configuration is used.
36792c393a42Smrg
36802c393a42SmrgVersion
36812c393a42Smrg
3682c9710b42Smrg   Fontconfig version 2.10.93
36832c393a42Smrg
3684ca08ab68Smrg                                   FcFontSort
36852c393a42Smrg
36862c393a42SmrgName
36872c393a42Smrg
3688ca08ab68Smrg   FcFontSort -- Return list of matching fonts
36892c393a42Smrg
36902c393a42SmrgSynopsis
36912c393a42Smrg
3692c9710b42Smrg   #include <fontconfig/fontconfig.h>
36932c393a42Smrg
3694a6844aabSmrg
3695ca08ab68Smrg   FcFontSet * FcFontSort(FcConfig *config, FcPattern *p, FcBool trim,
3696ca08ab68Smrg   FcCharSet **csp, FcResult *result);
36972c393a42Smrg
36982c393a42SmrgDescription
36992c393a42Smrg
3700ca08ab68Smrg   Returns the list of fonts sorted by closeness to p. If trim is FcTrue,
3701ca08ab68Smrg   elements in the list which don't include Unicode coverage not provided by
3702ca08ab68Smrg   earlier elements in the list are elided. The union of Unicode coverage of
3703ca08ab68Smrg   all of the fonts is returned in csp, if csp is not NULL. This function
3704ca08ab68Smrg   should be called only after FcConfigSubstitute and FcDefaultSubstitute
3705ca08ab68Smrg   have been called for p; otherwise the results will not be correct.
37062c393a42Smrg
3707ca08ab68Smrg   The returned FcFontSet references FcPattern structures which may be shared
3708ca08ab68Smrg   by the return value from multiple FcFontSort calls, applications must not
3709ca08ab68Smrg   modify these patterns. Instead, they should be passed, along with p to
3710ca08ab68Smrg   FcFontRenderPrepare which combines them into a complete pattern.
37112c393a42Smrg
3712ca08ab68Smrg   The FcFontSet returned by FcFontSort is destroyed by calling
3713ca08ab68Smrg   FcFontSetDestroy. If config is NULL, the current configuration is used.
37142c393a42Smrg
37152c393a42SmrgVersion
37162c393a42Smrg
3717c9710b42Smrg   Fontconfig version 2.10.93
37182c393a42Smrg
3719ca08ab68Smrg                              FcFontRenderPrepare
37202c393a42Smrg
37212c393a42SmrgName
37222c393a42Smrg
3723ca08ab68Smrg   FcFontRenderPrepare -- Prepare pattern for loading font file
37242c393a42Smrg
37252c393a42SmrgSynopsis
37262c393a42Smrg
3727c9710b42Smrg   #include <fontconfig/fontconfig.h>
37282c393a42Smrg
3729a6844aabSmrg
3730ca08ab68Smrg   FcPattern * FcFontRenderPrepare(FcConfig *config, FcPattern *pat,
3731ca08ab68Smrg   FcPattern *font);
37322c393a42Smrg
37332c393a42SmrgDescription
37342c393a42Smrg
3735ca08ab68Smrg   Creates a new pattern consisting of elements of font not appearing in pat,
3736ca08ab68Smrg   elements of pat not appearing in font and the best matching value from pat
3737ca08ab68Smrg   for elements appearing in both. The result is passed to
3738ca08ab68Smrg   FcConfigSubstituteWithPat with kind FcMatchFont and then returned.
37392c393a42Smrg
37402c393a42SmrgVersion
37412c393a42Smrg
3742c9710b42Smrg   Fontconfig version 2.10.93
37432c393a42Smrg
3744ca08ab68Smrg                                   FcFontList
37452c393a42Smrg
37462c393a42SmrgName
37472c393a42Smrg
3748ca08ab68Smrg   FcFontList -- List fonts
37492c393a42Smrg
37502c393a42SmrgSynopsis
37512c393a42Smrg
3752c9710b42Smrg   #include <fontconfig/fontconfig.h>
37532c393a42Smrg
3754a6844aabSmrg
3755ca08ab68Smrg   FcFontSet * FcFontList(FcConfig *config, FcPattern *p, FcObjectSet *os);
37562c393a42Smrg
37572c393a42SmrgDescription
37582c393a42Smrg
3759ca08ab68Smrg   Selects fonts matching p, creates patterns from those fonts containing
3760ca08ab68Smrg   only the objects in os and returns the set of unique such patterns. If
3761ca08ab68Smrg   config is NULL, the default configuration is checked to be up to date, and
3762ca08ab68Smrg   used.
37632c393a42Smrg
37642c393a42SmrgVersion
37652c393a42Smrg
3766c9710b42Smrg   Fontconfig version 2.10.93
37672c393a42Smrg
3768ca08ab68Smrg                                FcConfigFilename
37692c393a42Smrg
37702c393a42SmrgName
37712c393a42Smrg
3772ca08ab68Smrg   FcConfigFilename -- Find a config file
37732c393a42Smrg
37742c393a42SmrgSynopsis
37752c393a42Smrg
3776c9710b42Smrg   #include <fontconfig/fontconfig.h>
37772c393a42Smrg
3778a6844aabSmrg
3779ca08ab68Smrg   FcChar8 * FcConfigFilename(const FcChar8 *name);
37802c393a42Smrg
37812c393a42SmrgDescription
37822c393a42Smrg
3783ca08ab68Smrg   Given the specified external entity name, return the associated filename.
3784ca08ab68Smrg   This provides applications a way to convert various configuration file
3785ca08ab68Smrg   references into filename form.
37862c393a42Smrg
3787ca08ab68Smrg   A null or empty name indicates that the default configuration file should
3788ca08ab68Smrg   be used; which file this references can be overridden with the
3789ca08ab68Smrg   FONTCONFIG_FILE environment variable. Next, if the name starts with ~, it
3790ca08ab68Smrg   refers to a file in the current users home directory. Otherwise if the
3791ca08ab68Smrg   name doesn't start with '/', it refers to a file in the default
3792ca08ab68Smrg   configuration directory; the built-in default directory can be overridden
3793ca08ab68Smrg   with the FONTCONFIG_PATH environment variable.
37942c393a42Smrg
37952c393a42SmrgVersion
37962c393a42Smrg
3797c9710b42Smrg   Fontconfig version 2.10.93
37982c393a42Smrg
3799ca08ab68Smrg                              FcConfigParseAndLoad
38002c393a42Smrg
38012c393a42SmrgName
38022c393a42Smrg
3803ca08ab68Smrg   FcConfigParseAndLoad -- load a configuration file
38042c393a42Smrg
38052c393a42SmrgSynopsis
38062c393a42Smrg
3807c9710b42Smrg   #include <fontconfig/fontconfig.h>
38082c393a42Smrg
3809a6844aabSmrg
3810ca08ab68Smrg   FcBool FcConfigParseAndLoad(FcConfig *config, const FcChar8 *file, FcBool
3811ca08ab68Smrg   complain);
38122c393a42Smrg
38132c393a42SmrgDescription
38142c393a42Smrg
3815ca08ab68Smrg   Walks the configuration in 'file' and constructs the internal
3816ca08ab68Smrg   representation in 'config'. Any include files referenced from within
3817ca08ab68Smrg   'file' will be loaded and parsed. If 'complain' is FcFalse, no warning
3818ca08ab68Smrg   will be displayed if 'file' does not exist. Error and warning messages
3819ca08ab68Smrg   will be output to stderr. Returns FcFalse if some error occurred while
3820ca08ab68Smrg   loading the file, either a parse error, semantic error or allocation
3821ca08ab68Smrg   failure. Otherwise returns FcTrue.
38222c393a42Smrg
38232c393a42SmrgVersion
38242c393a42Smrg
3825c9710b42Smrg   Fontconfig version 2.10.93
3826c9710b42Smrg
3827c9710b42Smrg                               FcConfigGetSysRoot
3828c9710b42Smrg
3829c9710b42SmrgName
3830c9710b42Smrg
3831c9710b42Smrg   FcConfigGetSysRoot -- Obtain the system root directory
3832c9710b42Smrg
3833c9710b42SmrgSynopsis
3834c9710b42Smrg
3835c9710b42Smrg   #include <fontconfig/fontconfig.h>
3836c9710b42Smrg
3837c9710b42Smrg
3838c9710b42Smrg   const FcChar8 * FcConfigGetSysRoot(const FcConfig *config);
3839c9710b42Smrg
3840c9710b42SmrgDescription
3841c9710b42Smrg
3842c9710b42Smrg   Obtrains the system root directory in 'config' if available.
3843c9710b42Smrg
3844c9710b42SmrgVersion
3845c9710b42Smrg
3846c9710b42Smrg   Fontconfig version 2.10.93
3847c9710b42Smrg
3848c9710b42Smrg                               FcConfigSetSysRoot
3849c9710b42Smrg
3850c9710b42SmrgName
3851c9710b42Smrg
3852c9710b42Smrg   FcConfigSetSysRoot -- Set the system root directory
3853c9710b42Smrg
3854c9710b42SmrgSynopsis
3855c9710b42Smrg
3856c9710b42Smrg   #include <fontconfig/fontconfig.h>
3857c9710b42Smrg
3858c9710b42Smrg
3859c9710b42Smrg   void FcConfigSetSysRoot(FcConfig *config, const FcChar8 *sysroot);
3860c9710b42Smrg
3861c9710b42SmrgDescription
3862c9710b42Smrg
3863c9710b42Smrg   Set 'sysroot' as the system root directory. fontconfig prepend 'sysroot'
3864c9710b42Smrg   to the cache directories in order to allow people to generate caches at
3865c9710b42Smrg   the build time. Note that this causes changing current config. i.e. this
3866c9710b42Smrg   function calls FcConfigSetCurrent() internally.
3867c9710b42Smrg
3868c9710b42SmrgVersion
3869c9710b42Smrg
3870c9710b42Smrg   Fontconfig version 2.10.93
3871ca08ab68Smrg
3872ca08ab68Smrg   --------------------------------------------------------------------------
3873ca08ab68Smrg
3874ca08ab68Smrg  FcObjectType
38752c393a42Smrg
3876ca08ab68Smrg   Table of Contents
38772c393a42Smrg
3878c9710b42Smrg   [127]FcNameRegisterObjectTypes -- Register object types
38792c393a42Smrg
3880c9710b42Smrg   [128]FcNameUnregisterObjectTypes -- Unregister object types
3881a6844aabSmrg
3882c9710b42Smrg   [129]FcNameGetObjectType -- Lookup an object type
38832c393a42Smrg
3884ca08ab68Smrg   Provides for application-specified font name object types so that new
3885ca08ab68Smrg   pattern elements can be generated from font names.
3886ca08ab68Smrg
3887ca08ab68Smrg                           FcNameRegisterObjectTypes
38882c393a42Smrg
38892c393a42SmrgName
38902c393a42Smrg
3891ca08ab68Smrg   FcNameRegisterObjectTypes -- Register object types
38922c393a42Smrg
38932c393a42SmrgSynopsis
38942c393a42Smrg
3895c9710b42Smrg   #include <fontconfig/fontconfig.h>
38962c393a42Smrg
3897a6844aabSmrg
3898ca08ab68Smrg   FcBool FcNameRegisterObjectTypes(const FcObjectType *types, int ntype);
38992c393a42Smrg
39002c393a42SmrgDescription
39012c393a42Smrg
3902c9710b42Smrg   Deprecated. Does nothing. Returns FcFalse.
39032c393a42Smrg
39042c393a42SmrgVersion
39052c393a42Smrg
3906c9710b42Smrg   Fontconfig version 2.10.93
39072c393a42Smrg
3908ca08ab68Smrg                          FcNameUnregisterObjectTypes
39092c393a42Smrg
39102c393a42SmrgName
39112c393a42Smrg
3912ca08ab68Smrg   FcNameUnregisterObjectTypes -- Unregister object types
39132c393a42Smrg
39142c393a42SmrgSynopsis
39152c393a42Smrg
3916c9710b42Smrg   #include <fontconfig/fontconfig.h>
39172c393a42Smrg
3918a6844aabSmrg
3919ca08ab68Smrg   FcBool FcNameUnregisterObjectTypes(const FcObjectType *types, int ntype);
39202c393a42Smrg
39212c393a42SmrgDescription
39222c393a42Smrg
3923c9710b42Smrg   Deprecated. Does nothing. Returns FcFalse.
39242c393a42Smrg
39252c393a42SmrgVersion
39262c393a42Smrg
3927c9710b42Smrg   Fontconfig version 2.10.93
39282c393a42Smrg
3929ca08ab68Smrg                              FcNameGetObjectType
39302c393a42Smrg
39312c393a42SmrgName
39322c393a42Smrg
3933ca08ab68Smrg   FcNameGetObjectType -- Lookup an object type
39342c393a42Smrg
39352c393a42SmrgSynopsis
39362c393a42Smrg
3937c9710b42Smrg   #include <fontconfig/fontconfig.h>
39382c393a42Smrg
3939a6844aabSmrg
3940ca08ab68Smrg   const FcObjectType * FcNameGetObjectType(const char *object);
39412c393a42Smrg
39422c393a42SmrgDescription
39432c393a42Smrg
3944ca08ab68Smrg   Return the object type for the pattern element named object.
39452c393a42Smrg
39462c393a42SmrgVersion
39472c393a42Smrg
3948c9710b42Smrg   Fontconfig version 2.10.93
3949ca08ab68Smrg
3950ca08ab68Smrg   --------------------------------------------------------------------------
3951a6844aabSmrg
3952ca08ab68Smrg  FcConstant
39532c393a42Smrg
3954ca08ab68Smrg   Table of Contents
39552c393a42Smrg
3956c9710b42Smrg   [130]FcNameRegisterConstants -- Register symbolic constants
39572c393a42Smrg
3958c9710b42Smrg   [131]FcNameUnregisterConstants -- Unregister symbolic constants
39592c393a42Smrg
3960c9710b42Smrg   [132]FcNameGetConstant -- Lookup symbolic constant
3961ca08ab68Smrg
3962c9710b42Smrg   [133]FcNameConstant -- Get the value for a symbolic constant
3963ca08ab68Smrg
3964ca08ab68Smrg   Provides for application-specified symbolic constants for font names.
3965ca08ab68Smrg
3966ca08ab68Smrg                            FcNameRegisterConstants
39672c393a42Smrg
39682c393a42SmrgName
39692c393a42Smrg
3970ca08ab68Smrg   FcNameRegisterConstants -- Register symbolic constants
39712c393a42Smrg
39722c393a42SmrgSynopsis
39732c393a42Smrg
3974c9710b42Smrg   #include <fontconfig/fontconfig.h>
39752c393a42Smrg
3976a6844aabSmrg
3977ca08ab68Smrg   FcBool FcNameRegisterConstants(const FcConstant *consts, int nconsts);
39782c393a42Smrg
39792c393a42SmrgDescription
39802c393a42Smrg
3981c9710b42Smrg   Deprecated. Does nothing. Returns FcFalse.
39822c393a42Smrg
39832c393a42SmrgVersion
39842c393a42Smrg
3985c9710b42Smrg   Fontconfig version 2.10.93
39862c393a42Smrg
3987ca08ab68Smrg                           FcNameUnregisterConstants
39882c393a42Smrg
39892c393a42SmrgName
39902c393a42Smrg
3991ca08ab68Smrg   FcNameUnregisterConstants -- Unregister symbolic constants
39922c393a42Smrg
39932c393a42SmrgSynopsis
39942c393a42Smrg
3995c9710b42Smrg   #include <fontconfig/fontconfig.h>
39962c393a42Smrg
3997a6844aabSmrg
3998ca08ab68Smrg   FcBool FcNameUnregisterConstants(const FcConstant *consts, int nconsts);
39992c393a42Smrg
40002c393a42SmrgDescription
40012c393a42Smrg
4002c9710b42Smrg   Deprecated. Does nothing. Returns FcFalse.
40032c393a42Smrg
40042c393a42SmrgVersion
40052c393a42Smrg
4006c9710b42Smrg   Fontconfig version 2.10.93
40072c393a42Smrg
4008ca08ab68Smrg                               FcNameGetConstant
40092c393a42Smrg
40102c393a42SmrgName
40112c393a42Smrg
4012ca08ab68Smrg   FcNameGetConstant -- Lookup symbolic constant
40132c393a42Smrg
40142c393a42SmrgSynopsis
40152c393a42Smrg
4016c9710b42Smrg   #include <fontconfig/fontconfig.h>
40172c393a42Smrg
4018a6844aabSmrg
4019ca08ab68Smrg   const FcConstant * FcNameGetConstant(FcChar8 *string);
40202c393a42Smrg
40212c393a42SmrgDescription
40222c393a42Smrg
4023ca08ab68Smrg   Return the FcConstant structure related to symbolic constant string.
40242c393a42Smrg
40252c393a42SmrgVersion
40262c393a42Smrg
4027c9710b42Smrg   Fontconfig version 2.10.93
40282c393a42Smrg
4029ca08ab68Smrg                                 FcNameConstant
40302c393a42Smrg
40312c393a42SmrgName
40322c393a42Smrg
4033ca08ab68Smrg   FcNameConstant -- Get the value for a symbolic constant
40342c393a42Smrg
40352c393a42SmrgSynopsis
40362c393a42Smrg
4037c9710b42Smrg   #include <fontconfig/fontconfig.h>
40382c393a42Smrg
4039a6844aabSmrg
4040ca08ab68Smrg   FcBool FcNameConstant(FcChar8 *string, int *result);
40412c393a42Smrg
40422c393a42SmrgDescription
40432c393a42Smrg
4044ca08ab68Smrg   Returns whether a symbolic constant with name string is registered,
4045ca08ab68Smrg   placing the value of the constant in result if present.
40462c393a42Smrg
40472c393a42SmrgVersion
40482c393a42Smrg
4049c9710b42Smrg   Fontconfig version 2.10.93
4050ca08ab68Smrg
4051ca08ab68Smrg   --------------------------------------------------------------------------
4052a6844aabSmrg
4053ca08ab68Smrg  FcBlanks
40542c393a42Smrg
4055ca08ab68Smrg   Table of Contents
40562c393a42Smrg
4057c9710b42Smrg   [134]FcBlanksCreate -- Create an FcBlanks
40582c393a42Smrg
4059c9710b42Smrg   [135]FcBlanksDestroy -- Destroy and FcBlanks
40602c393a42Smrg
4061c9710b42Smrg   [136]FcBlanksAdd -- Add a character to an FcBlanks
4062ca08ab68Smrg
4063c9710b42Smrg   [137]FcBlanksIsMember -- Query membership in an FcBlanks
4064ca08ab68Smrg
4065ca08ab68Smrg   An FcBlanks object holds a list of Unicode chars which are expected to be
4066ca08ab68Smrg   blank when drawn. When scanning new fonts, any glyphs which are empty and
4067ca08ab68Smrg   not in this list will be assumed to be broken and not placed in the
4068ca08ab68Smrg   FcCharSet associated with the font. This provides a significantly more
4069ca08ab68Smrg   accurate CharSet for applications.
4070ca08ab68Smrg
4071ca08ab68Smrg                                 FcBlanksCreate
40722c393a42Smrg
40732c393a42SmrgName
40742c393a42Smrg
4075ca08ab68Smrg   FcBlanksCreate -- Create an FcBlanks
40762c393a42Smrg
40772c393a42SmrgSynopsis
40782c393a42Smrg
4079c9710b42Smrg   #include <fontconfig/fontconfig.h>
40802c393a42Smrg
4081a6844aabSmrg
4082ca08ab68Smrg   FcBlanks * FcBlanksCreate(void);
40832c393a42Smrg
40842c393a42SmrgDescription
40852c393a42Smrg
4086ca08ab68Smrg   Creates an empty FcBlanks object.
40872c393a42Smrg
40882c393a42SmrgVersion
40892c393a42Smrg
4090c9710b42Smrg   Fontconfig version 2.10.93
40912c393a42Smrg
4092ca08ab68Smrg                                FcBlanksDestroy
40932c393a42Smrg
40942c393a42SmrgName
40952c393a42Smrg
4096ca08ab68Smrg   FcBlanksDestroy -- Destroy and FcBlanks
40972c393a42Smrg
40982c393a42SmrgSynopsis
40992c393a42Smrg
4100c9710b42Smrg   #include <fontconfig/fontconfig.h>
41012c393a42Smrg
4102a6844aabSmrg
4103ca08ab68Smrg   void FcBlanksDestroy(FcBlanks *b);
41042c393a42Smrg
41052c393a42SmrgDescription
41062c393a42Smrg
4107ca08ab68Smrg   Destroys an FcBlanks object, freeing any associated memory.
41082c393a42Smrg
41092c393a42SmrgVersion
41102c393a42Smrg
4111c9710b42Smrg   Fontconfig version 2.10.93
41122c393a42Smrg
4113ca08ab68Smrg                                  FcBlanksAdd
41142c393a42Smrg
41152c393a42SmrgName
41162c393a42Smrg
4117ca08ab68Smrg   FcBlanksAdd -- Add a character to an FcBlanks
41182c393a42Smrg
41192c393a42SmrgSynopsis
41202c393a42Smrg
4121c9710b42Smrg   #include <fontconfig/fontconfig.h>
41222c393a42Smrg
4123a6844aabSmrg
4124ca08ab68Smrg   FcBool FcBlanksAdd(FcBlanks *b, FcChar32 ucs4);
41252c393a42Smrg
41262c393a42SmrgDescription
41272c393a42Smrg
4128ca08ab68Smrg   Adds a single character to an FcBlanks object, returning FcFalse if this
4129ca08ab68Smrg   process ran out of memory.
41302c393a42Smrg
41312c393a42SmrgVersion
41322c393a42Smrg
4133c9710b42Smrg   Fontconfig version 2.10.93
41342c393a42Smrg
4135ca08ab68Smrg                                FcBlanksIsMember
41362c393a42Smrg
41372c393a42SmrgName
41382c393a42Smrg
4139ca08ab68Smrg   FcBlanksIsMember -- Query membership in an FcBlanks
41402c393a42Smrg
41412c393a42SmrgSynopsis
41422c393a42Smrg
4143c9710b42Smrg   #include <fontconfig/fontconfig.h>
41442c393a42Smrg
4145a6844aabSmrg
4146ca08ab68Smrg   FcBool FcBlanksIsMember(FcBlanks *b, FcChar32 ucs4);
41472c393a42Smrg
41482c393a42SmrgDescription
41492c393a42Smrg
4150ca08ab68Smrg   Returns whether the specified FcBlanks object contains the indicated
4151ca08ab68Smrg   Unicode value.
41522c393a42Smrg
41532c393a42SmrgVersion
41542c393a42Smrg
4155c9710b42Smrg   Fontconfig version 2.10.93
4156ca08ab68Smrg
4157ca08ab68Smrg   --------------------------------------------------------------------------
4158ca08ab68Smrg
4159ca08ab68Smrg  FcAtomic
4160ca08ab68Smrg
4161ca08ab68Smrg   Table of Contents
4162ca08ab68Smrg
4163c9710b42Smrg   [138]FcAtomicCreate -- create an FcAtomic object
4164ca08ab68Smrg
4165c9710b42Smrg   [139]FcAtomicLock -- lock a file
4166ca08ab68Smrg
4167c9710b42Smrg   [140]FcAtomicNewFile -- return new temporary file name
4168a6844aabSmrg
4169c9710b42Smrg   [141]FcAtomicOrigFile -- return original file name
41702c393a42Smrg
4171c9710b42Smrg   [142]FcAtomicReplaceOrig -- replace original with new
41722c393a42Smrg
4173c9710b42Smrg   [143]FcAtomicDeleteNew -- delete new file
41742c393a42Smrg
4175c9710b42Smrg   [144]FcAtomicUnlock -- unlock a file
41762c393a42Smrg
4177c9710b42Smrg   [145]FcAtomicDestroy -- destroy an FcAtomic object
4178ca08ab68Smrg
4179ca08ab68Smrg   These functions provide a safe way to update configuration files, allowing
4180ca08ab68Smrg   ongoing reading of the old configuration file while locked for writing and
4181ca08ab68Smrg   ensuring that a consistent and complete version of the configuration file
4182ca08ab68Smrg   is always available.
4183ca08ab68Smrg
4184ca08ab68Smrg                                 FcAtomicCreate
41852c393a42Smrg
41862c393a42SmrgName
41872c393a42Smrg
4188ca08ab68Smrg   FcAtomicCreate -- create an FcAtomic object
41892c393a42Smrg
41902c393a42SmrgSynopsis
41912c393a42Smrg
4192c9710b42Smrg   #include <fontconfig/fontconfig.h>
41932c393a42Smrg
4194a6844aabSmrg
4195ca08ab68Smrg   FcAtomic * FcAtomicCreate(const FcChar8 *file);
41962c393a42Smrg
41972c393a42SmrgDescription
41982c393a42Smrg
4199ca08ab68Smrg   Creates a data structure containing data needed to control access to file.
4200ca08ab68Smrg   Writing is done to a separate file. Once that file is complete, the
4201ca08ab68Smrg   original configuration file is atomically replaced so that reading process
4202ca08ab68Smrg   always see a consistent and complete file without the need to lock for
4203ca08ab68Smrg   reading.
42042c393a42Smrg
42052c393a42SmrgVersion
42062c393a42Smrg
4207c9710b42Smrg   Fontconfig version 2.10.93
42082c393a42Smrg
4209ca08ab68Smrg                                  FcAtomicLock
42102c393a42Smrg
42112c393a42SmrgName
42122c393a42Smrg
4213ca08ab68Smrg   FcAtomicLock -- lock a file
42142c393a42Smrg
42152c393a42SmrgSynopsis
42162c393a42Smrg
4217c9710b42Smrg   #include <fontconfig/fontconfig.h>
42182c393a42Smrg
4219a6844aabSmrg
4220ca08ab68Smrg   FcBool FcAtomicLock(FcAtomic *atomic);
42212c393a42Smrg
42222c393a42SmrgDescription
42232c393a42Smrg
4224ca08ab68Smrg   Attempts to lock the file referenced by atomic. Returns FcFalse if the
4225ca08ab68Smrg   file is already locked, else returns FcTrue and leaves the file locked.
42262c393a42Smrg
42272c393a42SmrgVersion
42282c393a42Smrg
4229c9710b42Smrg   Fontconfig version 2.10.93
42302c393a42Smrg
4231ca08ab68Smrg                                FcAtomicNewFile
42322c393a42Smrg
42332c393a42SmrgName
42342c393a42Smrg
4235ca08ab68Smrg   FcAtomicNewFile -- return new temporary file name
42362c393a42Smrg
42372c393a42SmrgSynopsis
42382c393a42Smrg
4239c9710b42Smrg   #include <fontconfig/fontconfig.h>
42402c393a42Smrg
4241a6844aabSmrg
4242ca08ab68Smrg   FcChar8 * FcAtomicNewFile(FcAtomic *atomic);
42432c393a42Smrg
42442c393a42SmrgDescription
42452c393a42Smrg
4246ca08ab68Smrg   Returns the filename for writing a new version of the file referenced by
4247ca08ab68Smrg   atomic.
42482c393a42Smrg
42492c393a42SmrgVersion
42502c393a42Smrg
4251c9710b42Smrg   Fontconfig version 2.10.93
42522c393a42Smrg
4253ca08ab68Smrg                                FcAtomicOrigFile
42542c393a42Smrg
42552c393a42SmrgName
42562c393a42Smrg
4257ca08ab68Smrg   FcAtomicOrigFile -- return original file name
42582c393a42Smrg
42592c393a42SmrgSynopsis
42602c393a42Smrg
4261c9710b42Smrg   #include <fontconfig/fontconfig.h>
42622c393a42Smrg
4263a6844aabSmrg
4264ca08ab68Smrg   FcChar8 * FcAtomicOrigFile(FcAtomic *atomic);
42652c393a42Smrg
42662c393a42SmrgDescription
42672c393a42Smrg
4268ca08ab68Smrg   Returns the file referenced by atomic.
42692c393a42Smrg
42702c393a42SmrgVersion
42712c393a42Smrg
4272c9710b42Smrg   Fontconfig version 2.10.93
42732c393a42Smrg
4274ca08ab68Smrg                              FcAtomicReplaceOrig
42752c393a42Smrg
42762c393a42SmrgName
42772c393a42Smrg
4278ca08ab68Smrg   FcAtomicReplaceOrig -- replace original with new
42792c393a42Smrg
42802c393a42SmrgSynopsis
42812c393a42Smrg
4282c9710b42Smrg   #include <fontconfig/fontconfig.h>
42832c393a42Smrg
4284a6844aabSmrg
4285ca08ab68Smrg   FcBool FcAtomicReplaceOrig(FcAtomic *atomic);
42862c393a42Smrg
42872c393a42SmrgDescription
42882c393a42Smrg
4289ca08ab68Smrg   Replaces the original file referenced by atomic with the new file. Returns
4290ca08ab68Smrg   FcFalse if the file cannot be replaced due to permission issues in the
4291ca08ab68Smrg   filesystem. Otherwise returns FcTrue.
42922c393a42Smrg
42932c393a42SmrgVersion
42942c393a42Smrg
4295c9710b42Smrg   Fontconfig version 2.10.93
42962c393a42Smrg
4297ca08ab68Smrg                               FcAtomicDeleteNew
42982c393a42Smrg
42992c393a42SmrgName
43002c393a42Smrg
4301ca08ab68Smrg   FcAtomicDeleteNew -- delete new file
43022c393a42Smrg
43032c393a42SmrgSynopsis
43042c393a42Smrg
4305c9710b42Smrg   #include <fontconfig/fontconfig.h>
43062c393a42Smrg
4307a6844aabSmrg
4308ca08ab68Smrg   void FcAtomicDeleteNew(FcAtomic *atomic);
43092c393a42Smrg
43102c393a42SmrgDescription
43112c393a42Smrg
4312ca08ab68Smrg   Deletes the new file. Used in error recovery to back out changes.
43132c393a42Smrg
43142c393a42SmrgVersion
43152c393a42Smrg
4316c9710b42Smrg   Fontconfig version 2.10.93
43172c393a42Smrg
4318ca08ab68Smrg                                 FcAtomicUnlock
43192c393a42Smrg
43202c393a42SmrgName
43212c393a42Smrg
4322ca08ab68Smrg   FcAtomicUnlock -- unlock a file
43232c393a42Smrg
43242c393a42SmrgSynopsis
43252c393a42Smrg
4326c9710b42Smrg   #include <fontconfig/fontconfig.h>
43272c393a42Smrg
4328a6844aabSmrg
4329ca08ab68Smrg   void FcAtomicUnlock(FcAtomic *atomic);
43302c393a42Smrg
43312c393a42SmrgDescription
43322c393a42Smrg
4333ca08ab68Smrg   Unlocks the file.
43342c393a42Smrg
43352c393a42SmrgVersion
43362c393a42Smrg
4337c9710b42Smrg   Fontconfig version 2.10.93
43382c393a42Smrg
4339ca08ab68Smrg                                FcAtomicDestroy
43402c393a42Smrg
43412c393a42SmrgName
43422c393a42Smrg
4343ca08ab68Smrg   FcAtomicDestroy -- destroy an FcAtomic object
43442c393a42Smrg
43452c393a42SmrgSynopsis
43462c393a42Smrg
4347c9710b42Smrg   #include <fontconfig/fontconfig.h>
43482c393a42Smrg
4349a6844aabSmrg
4350ca08ab68Smrg   void FcAtomicDestroy(FcAtomic *atomic);
43512c393a42Smrg
43522c393a42SmrgDescription
43532c393a42Smrg
4354ca08ab68Smrg   Destroys atomic.
43552c393a42Smrg
43562c393a42SmrgVersion
43572c393a42Smrg
4358c9710b42Smrg   Fontconfig version 2.10.93
4359ca08ab68Smrg
4360ca08ab68Smrg   --------------------------------------------------------------------------
4361ca08ab68Smrg
4362ca08ab68Smrg  File and Directory routines
4363ca08ab68Smrg
4364ca08ab68Smrg   Table of Contents
4365ca08ab68Smrg
4366c9710b42Smrg   [146]FcFileScan -- scan a font file
4367ca08ab68Smrg
4368c9710b42Smrg   [147]FcFileIsDir -- check whether a file is a directory
4369ca08ab68Smrg
4370c9710b42Smrg   [148]FcDirScan -- scan a font directory without caching it
4371ca08ab68Smrg
4372c9710b42Smrg   [149]FcDirSave -- DEPRECATED: formerly used to save a directory cache
43732c393a42Smrg
4374c9710b42Smrg   [150]FcDirCacheUnlink -- Remove all caches related to dir
43752c393a42Smrg
4376c9710b42Smrg   [151]FcDirCacheValid -- check directory cache
43772c393a42Smrg
4378c9710b42Smrg   [152]FcDirCacheLoad -- load a directory cache
43792c393a42Smrg
4380c9710b42Smrg   [153]FcDirCacheRead -- read or construct a directory cache
43812c393a42Smrg
4382c9710b42Smrg   [154]FcDirCacheLoadFile -- load a cache file
4383ca08ab68Smrg
4384c9710b42Smrg   [155]FcDirCacheUnload -- unload a cache file
4385ca08ab68Smrg
4386ca08ab68Smrg   These routines work with font files and directories, including font
4387ca08ab68Smrg   directory cache files.
4388ca08ab68Smrg
4389ca08ab68Smrg                                   FcFileScan
43902c393a42Smrg
43912c393a42SmrgName
43922c393a42Smrg
4393ca08ab68Smrg   FcFileScan -- scan a font file
43942c393a42Smrg
43952c393a42SmrgSynopsis
43962c393a42Smrg
4397c9710b42Smrg   #include <fontconfig/fontconfig.h>
43982c393a42Smrg
4399a6844aabSmrg
4400ca08ab68Smrg   FcBool FcFileScan(FcFontSet *set, FcStrSet *dirs, FcFileCache *cache,
4401ca08ab68Smrg   FcBlanks *blanks, const FcChar8 *file, FcBool force);
44022c393a42Smrg
44032c393a42SmrgDescription
44042c393a42Smrg
4405ca08ab68Smrg   Scans a single file and adds all fonts found to set. If force is FcTrue,
4406ca08ab68Smrg   then the file is scanned even if associated information is found in cache.
4407ca08ab68Smrg   If file is a directory, it is added to dirs. Whether fonts are found
4408ca08ab68Smrg   depends on fontconfig policy as well as the current configuration.
4409ca08ab68Smrg   Internally, fontconfig will ignore BDF and PCF fonts which are not in
4410ca08ab68Smrg   Unicode (or the effectively equivalent ISO Latin-1) encoding as those are
4411ca08ab68Smrg   not usable by Unicode-based applications. The configuration can ignore
4412ca08ab68Smrg   fonts based on filename or contents of the font file itself. Returns
4413ca08ab68Smrg   FcFalse if any of the fonts cannot be added (due to allocation failure).
4414ca08ab68Smrg   Otherwise returns FcTrue.
44152c393a42Smrg
44162c393a42SmrgVersion
44172c393a42Smrg
4418c9710b42Smrg   Fontconfig version 2.10.93
44192c393a42Smrg
4420ca08ab68Smrg                                  FcFileIsDir
44212c393a42Smrg
44222c393a42SmrgName
44232c393a42Smrg
4424ca08ab68Smrg   FcFileIsDir -- check whether a file is a directory
44252c393a42Smrg
44262c393a42SmrgSynopsis
44272c393a42Smrg
4428c9710b42Smrg   #include <fontconfig/fontconfig.h>
44292c393a42Smrg
4430a6844aabSmrg
4431ca08ab68Smrg   FcBool FcFileIsDir(const FcChar8 *file);
44322c393a42Smrg
44332c393a42SmrgDescription
44342c393a42Smrg
4435ca08ab68Smrg   Returns FcTrue if file is a directory, otherwise returns FcFalse.
44362c393a42Smrg
44372c393a42SmrgVersion
44382c393a42Smrg
4439c9710b42Smrg   Fontconfig version 2.10.93
44402c393a42Smrg
4441ca08ab68Smrg                                   FcDirScan
44422c393a42Smrg
44432c393a42SmrgName
44442c393a42Smrg
4445ca08ab68Smrg   FcDirScan -- scan a font directory without caching it
44462c393a42Smrg
44472c393a42SmrgSynopsis
44482c393a42Smrg
4449c9710b42Smrg   #include <fontconfig/fontconfig.h>
44502c393a42Smrg
4451a6844aabSmrg
4452ca08ab68Smrg   FcBool FcDirScan(FcFontSet *set, FcStrSet *dirs, FcFileCache *cache,
4453ca08ab68Smrg   FcBlanks *blanks, const FcChar8 *dir, FcBool force);
44542c393a42Smrg
44552c393a42SmrgDescription
44562c393a42Smrg
4457ca08ab68Smrg   If cache is not zero or if force is FcFalse, this function currently
4458ca08ab68Smrg   returns FcFalse. Otherwise, it scans an entire directory and adds all
4459ca08ab68Smrg   fonts found to set. Any subdirectories found are added to dirs. Calling
4460ca08ab68Smrg   this function does not create any cache files. Use FcDirCacheRead() if
4461ca08ab68Smrg   caching is desired.
44622c393a42Smrg
44632c393a42SmrgVersion
44642c393a42Smrg
4465c9710b42Smrg   Fontconfig version 2.10.93
44662c393a42Smrg
4467ca08ab68Smrg                                   FcDirSave
44682c393a42Smrg
44692c393a42SmrgName
44702c393a42Smrg
4471ca08ab68Smrg   FcDirSave -- DEPRECATED: formerly used to save a directory cache
44722c393a42Smrg
44732c393a42SmrgSynopsis
44742c393a42Smrg
4475c9710b42Smrg   #include <fontconfig/fontconfig.h>
44762c393a42Smrg
4477a6844aabSmrg
4478ca08ab68Smrg   FcBool FcDirSave(FcFontSet *set, FcStrSet *dirs, const FcChar8 *dir);
44792c393a42Smrg
44802c393a42SmrgDescription
44812c393a42Smrg
4482ca08ab68Smrg   This function now does nothing aside from returning FcFalse. It used to
4483ca08ab68Smrg   creates the per-directory cache file for dir and populates it with the
4484ca08ab68Smrg   fonts in set and subdirectories in dirs. All of this functionality is now
4485ca08ab68Smrg   automatically managed by FcDirCacheLoad and FcDirCacheRead.
44862c393a42Smrg
44872c393a42SmrgVersion
44882c393a42Smrg
4489c9710b42Smrg   Fontconfig version 2.10.93
44902c393a42Smrg
4491ca08ab68Smrg                                FcDirCacheUnlink
44922c393a42Smrg
44932c393a42SmrgName
44942c393a42Smrg
4495ca08ab68Smrg   FcDirCacheUnlink -- Remove all caches related to dir
44962c393a42Smrg
44972c393a42SmrgSynopsis
44982c393a42Smrg
4499c9710b42Smrg   #include <fontconfig/fontconfig.h>
45002c393a42Smrg
4501a6844aabSmrg
4502ca08ab68Smrg   FcBool FcDirCacheUnlink(const FcChar8 *dir, FcConfig *config);
45032c393a42Smrg
45042c393a42SmrgDescription
45052c393a42Smrg
4506ca08ab68Smrg   Scans the cache directories in config, removing any instances of the cache
4507ca08ab68Smrg   file for dir. Returns FcFalse when some internal error occurs (out of
4508ca08ab68Smrg   memory, etc). Errors actually unlinking any files are ignored.
45092c393a42Smrg
45102c393a42SmrgVersion
45112c393a42Smrg
4512c9710b42Smrg   Fontconfig version 2.10.93
45132c393a42Smrg
4514ca08ab68Smrg                                FcDirCacheValid
45152c393a42Smrg
45162c393a42SmrgName
45172c393a42Smrg
4518ca08ab68Smrg   FcDirCacheValid -- check directory cache
45192c393a42Smrg
45202c393a42SmrgSynopsis
45212c393a42Smrg
4522c9710b42Smrg   #include <fontconfig/fontconfig.h>
45232c393a42Smrg
4524a6844aabSmrg
4525ca08ab68Smrg   FcBool FcDirCacheValid(const FcChar8 *dir);
45262c393a42Smrg
45272c393a42SmrgDescription
45282c393a42Smrg
4529ca08ab68Smrg   Returns FcTrue if dir has an associated valid cache file, else returns
4530ca08ab68Smrg   FcFalse
45312c393a42Smrg
45322c393a42SmrgVersion
45332c393a42Smrg
4534c9710b42Smrg   Fontconfig version 2.10.93
45352c393a42Smrg
4536ca08ab68Smrg                                 FcDirCacheLoad
45372c393a42Smrg
45382c393a42SmrgName
45392c393a42Smrg
4540ca08ab68Smrg   FcDirCacheLoad -- load a directory cache
45412c393a42Smrg
45422c393a42SmrgSynopsis
45432c393a42Smrg
4544c9710b42Smrg   #include <fontconfig/fontconfig.h>
45452c393a42Smrg
4546a6844aabSmrg
4547ca08ab68Smrg   FcCache * FcDirCacheLoad(const FcChar8 *dir, FcConfig *config, FcChar8
4548ca08ab68Smrg   **cache_file);
45492c393a42Smrg
45502c393a42SmrgDescription
45512c393a42Smrg
4552ca08ab68Smrg   Loads the cache related to dir. If no cache file exists, returns NULL. The
4553ca08ab68Smrg   name of the cache file is returned in cache_file, unless that is NULL. See
4554ca08ab68Smrg   also FcDirCacheRead.
45552c393a42Smrg
45562c393a42SmrgVersion
45572c393a42Smrg
4558c9710b42Smrg   Fontconfig version 2.10.93
45592c393a42Smrg
4560ca08ab68Smrg                                 FcDirCacheRead
45612c393a42Smrg
45622c393a42SmrgName
45632c393a42Smrg
4564ca08ab68Smrg   FcDirCacheRead -- read or construct a directory cache
45652c393a42Smrg
45662c393a42SmrgSynopsis
45672c393a42Smrg
4568c9710b42Smrg   #include <fontconfig/fontconfig.h>
45692c393a42Smrg
4570a6844aabSmrg
4571ca08ab68Smrg   FcCache * FcDirCacheRead(const FcChar8 *dir, FcBool force, FcConfig
4572ca08ab68Smrg   *config);
45732c393a42Smrg
45742c393a42SmrgDescription
45752c393a42Smrg
4576ca08ab68Smrg   This returns a cache for dir. If force is FcFalse, then an existing, valid
4577ca08ab68Smrg   cache file will be used. Otherwise, a new cache will be created by
4578ca08ab68Smrg   scanning the directory and that returned.
45792c393a42Smrg
45802c393a42SmrgVersion
45812c393a42Smrg
4582c9710b42Smrg   Fontconfig version 2.10.93
45832c393a42Smrg
4584ca08ab68Smrg                               FcDirCacheLoadFile
45852c393a42Smrg
45862c393a42SmrgName
45872c393a42Smrg
4588ca08ab68Smrg   FcDirCacheLoadFile -- load a cache file
45892c393a42Smrg
45902c393a42SmrgSynopsis
45912c393a42Smrg
4592c9710b42Smrg   #include <fontconfig/fontconfig.h>
45932c393a42Smrg
4594a6844aabSmrg
4595ca08ab68Smrg   FcCache * FcDirCacheLoadFile(const FcChar8 *cache_file, struct stat
4596ca08ab68Smrg   *file_stat);
45972c393a42Smrg
45982c393a42SmrgDescription
45992c393a42Smrg
4600ca08ab68Smrg   This function loads a directory cache from cache_file. If file_stat is
4601ca08ab68Smrg   non-NULL, it will be filled with the results of stat(2) on the cache file.
46022c393a42Smrg
46032c393a42SmrgVersion
46042c393a42Smrg
4605c9710b42Smrg   Fontconfig version 2.10.93
46062c393a42Smrg
4607ca08ab68Smrg                                FcDirCacheUnload
46082c393a42Smrg
46092c393a42SmrgName
46102c393a42Smrg
4611ca08ab68Smrg   FcDirCacheUnload -- unload a cache file
46122c393a42Smrg
46132c393a42SmrgSynopsis
46142c393a42Smrg
4615c9710b42Smrg   #include <fontconfig/fontconfig.h>
46162c393a42Smrg
4617a6844aabSmrg
4618ca08ab68Smrg   void FcDirCacheUnload(FcCache *cache);
46192c393a42Smrg
46202c393a42SmrgDescription
46212c393a42Smrg
4622ca08ab68Smrg   This function dereferences cache. When no other references to it remain,
4623ca08ab68Smrg   all memory associated with the cache will be freed.
46242c393a42Smrg
46252c393a42SmrgVersion
46262c393a42Smrg
4627c9710b42Smrg   Fontconfig version 2.10.93
4628ca08ab68Smrg
4629ca08ab68Smrg   --------------------------------------------------------------------------
4630ca08ab68Smrg
4631ca08ab68Smrg  FcCache routines
4632ca08ab68Smrg
4633ca08ab68Smrg   Table of Contents
4634ca08ab68Smrg
4635c9710b42Smrg   [156]FcCacheDir -- Return directory of cache
4636ca08ab68Smrg
4637c9710b42Smrg   [157]FcCacheCopySet -- Returns a copy of the fontset from cache
4638ca08ab68Smrg
4639c9710b42Smrg   [158]FcCacheSubdir -- Return the i'th subdirectory.
46402c393a42Smrg
4641c9710b42Smrg   [159]FcCacheNumSubdir -- Return the number of subdirectories in cache.
46422c393a42Smrg
4643c9710b42Smrg   [160]FcCacheNumFont -- Returns the number of fonts in cache.
46442c393a42Smrg
4645c9710b42Smrg   [161]FcDirCacheClean -- This tries to clean up the cache directory of
4646ca08ab68Smrg   cache_dir. This returns FcTrue if the operation is successfully complete.
4647ca08ab68Smrg   otherwise FcFalse.
46482c393a42Smrg
4649c9710b42Smrg   [162]FcCacheCreateTagFile -- Create CACHEDIR.TAG at cache directory.
46502c393a42Smrg
4651ca08ab68Smrg   These routines work with font directory caches, accessing their contents
4652ca08ab68Smrg   in limited ways. It is not expected that normal applications will need to
4653ca08ab68Smrg   use these functions.
4654ca08ab68Smrg
4655ca08ab68Smrg                                   FcCacheDir
46562c393a42Smrg
46572c393a42SmrgName
46582c393a42Smrg
4659ca08ab68Smrg   FcCacheDir -- Return directory of cache
46602c393a42Smrg
46612c393a42SmrgSynopsis
46622c393a42Smrg
4663c9710b42Smrg   #include <fontconfig/fontconfig.h>
46642c393a42Smrg
4665a6844aabSmrg
4666ca08ab68Smrg   const FcChar8 * FcCacheDir(const FcCache *cache);
46672c393a42Smrg
46682c393a42SmrgDescription
46692c393a42Smrg
4670ca08ab68Smrg   This function returns the directory from which the cache was constructed.
46712c393a42Smrg
46722c393a42SmrgVersion
46732c393a42Smrg
4674c9710b42Smrg   Fontconfig version 2.10.93
46752c393a42Smrg
4676ca08ab68Smrg                                 FcCacheCopySet
46772c393a42Smrg
46782c393a42SmrgName
46792c393a42Smrg
4680ca08ab68Smrg   FcCacheCopySet -- Returns a copy of the fontset from cache
46812c393a42Smrg
46822c393a42SmrgSynopsis
46832c393a42Smrg
4684c9710b42Smrg   #include <fontconfig/fontconfig.h>
46852c393a42Smrg
4686a6844aabSmrg
4687ca08ab68Smrg   FcFontSet * FcCacheCopySet(const FcCache *cache);
46882c393a42Smrg
46892c393a42SmrgDescription
46902c393a42Smrg
4691ca08ab68Smrg   The returned fontset contains each of the font patterns from cache. This
4692ca08ab68Smrg   fontset may be modified, but the patterns from the cache are read-only.
46932c393a42Smrg
46942c393a42SmrgVersion
46952c393a42Smrg
4696c9710b42Smrg   Fontconfig version 2.10.93
46972c393a42Smrg
4698ca08ab68Smrg                                 FcCacheSubdir
46992c393a42Smrg
47002c393a42SmrgName
47012c393a42Smrg
4702ca08ab68Smrg   FcCacheSubdir -- Return the i'th subdirectory.
47032c393a42Smrg
47042c393a42SmrgSynopsis
47052c393a42Smrg
4706c9710b42Smrg   #include <fontconfig/fontconfig.h>
47072c393a42Smrg
4708a6844aabSmrg
4709ca08ab68Smrg   const FcChar8 * FcCacheSubdir(const FcCache *cache, inti);
47102c393a42Smrg
47112c393a42SmrgDescription
47122c393a42Smrg
4713ca08ab68Smrg   The set of subdirectories stored in a cache file are indexed by this
4714ca08ab68Smrg   function, i should range from 0 to n-1, where n is the return value from
4715ca08ab68Smrg   FcCacheNumSubdir.
47162c393a42Smrg
47172c393a42SmrgVersion
47182c393a42Smrg
4719c9710b42Smrg   Fontconfig version 2.10.93
47202c393a42Smrg
4721ca08ab68Smrg                                FcCacheNumSubdir
47222c393a42Smrg
47232c393a42SmrgName
47242c393a42Smrg
4725ca08ab68Smrg   FcCacheNumSubdir -- Return the number of subdirectories in cache.
47262c393a42Smrg
47272c393a42SmrgSynopsis
47282c393a42Smrg
4729c9710b42Smrg   #include <fontconfig/fontconfig.h>
47302c393a42Smrg
4731a6844aabSmrg
4732ca08ab68Smrg   int FcCacheNumSubdir(const FcCache *cache);
47332c393a42Smrg
47342c393a42SmrgDescription
47352c393a42Smrg
4736ca08ab68Smrg   This returns the total number of subdirectories in the cache.
47372c393a42Smrg
47382c393a42SmrgVersion
47392c393a42Smrg
4740c9710b42Smrg   Fontconfig version 2.10.93
47412c393a42Smrg
4742ca08ab68Smrg                                 FcCacheNumFont
47432c393a42Smrg
47442c393a42SmrgName
47452c393a42Smrg
4746ca08ab68Smrg   FcCacheNumFont -- Returns the number of fonts in cache.
47472c393a42Smrg
47482c393a42SmrgSynopsis
47492c393a42Smrg
4750c9710b42Smrg   #include <fontconfig/fontconfig.h>
47512c393a42Smrg
4752a6844aabSmrg
4753ca08ab68Smrg   int FcCacheNumFont(const FcCache *cache);
47542c393a42Smrg
47552c393a42SmrgDescription
47562c393a42Smrg
4757ca08ab68Smrg   This returns the number of fonts which would be included in the return
4758ca08ab68Smrg   from FcCacheCopySet.
47592c393a42Smrg
47602c393a42SmrgVersion
47612c393a42Smrg
4762c9710b42Smrg   Fontconfig version 2.10.93
4763ca08ab68Smrg
4764ca08ab68Smrg                                FcDirCacheClean
4765ca08ab68Smrg
4766ca08ab68SmrgName
4767ca08ab68Smrg
4768ca08ab68Smrg   FcDirCacheClean -- This tries to clean up the cache directory of
4769ca08ab68Smrg   cache_dir. This returns FcTrue if the operation is successfully complete.
4770ca08ab68Smrg   otherwise FcFalse.
4771ca08ab68Smrg
4772ca08ab68SmrgSynopsis
4773ca08ab68Smrg
4774c9710b42Smrg   #include <fontconfig/fontconfig.h>
4775ca08ab68Smrg
4776a6844aabSmrg
4777ca08ab68Smrg   FcBool FcDirCacheClean(const FcChar8 *cache_dir, FcBoolverbose);
4778ca08ab68Smrg
4779ca08ab68SmrgDescription
47802c393a42Smrg
47812c393a42Smrg
47822c393a42Smrg
4783ca08ab68SmrgVersion
47842c393a42Smrg
4785c9710b42Smrg   Fontconfig version 2.10.93
4786ca08ab68Smrg
4787ca08ab68Smrg                              FcCacheCreateTagFile
47882c393a42Smrg
47892c393a42SmrgName
47902c393a42Smrg
4791ca08ab68Smrg   FcCacheCreateTagFile -- Create CACHEDIR.TAG at cache directory.
47922c393a42Smrg
47932c393a42SmrgSynopsis
47942c393a42Smrg
4795c9710b42Smrg   #include <fontconfig/fontconfig.h>
47962c393a42Smrg
4797a6844aabSmrg
4798ca08ab68Smrg   void FcCacheCreateTagFile(const FcConfig *config);
47992c393a42Smrg
48002c393a42SmrgDescription
48012c393a42Smrg
4802ca08ab68Smrg   This tries to create CACHEDIR.TAG file at the cache directory registered
4803ca08ab68Smrg   to config.
48042c393a42Smrg
48052c393a42SmrgVersion
48062c393a42Smrg
4807c9710b42Smrg   Fontconfig version 2.10.93
4808ca08ab68Smrg
4809ca08ab68Smrg   --------------------------------------------------------------------------
4810ca08ab68Smrg
4811ca08ab68Smrg  FcStrSet and FcStrList
4812ca08ab68Smrg
4813ca08ab68Smrg   Table of Contents
4814ca08ab68Smrg
4815c9710b42Smrg   [163]FcStrSetCreate -- create a string set
4816ca08ab68Smrg
4817c9710b42Smrg   [164]FcStrSetMember -- check set for membership
4818ca08ab68Smrg
4819c9710b42Smrg   [165]FcStrSetEqual -- check sets for equality
4820ca08ab68Smrg
4821c9710b42Smrg   [166]FcStrSetAdd -- add to a string set
4822ca08ab68Smrg
4823c9710b42Smrg   [167]FcStrSetAddFilename -- add a filename to a string set
4824ca08ab68Smrg
4825c9710b42Smrg   [168]FcStrSetDel -- delete from a string set
4826ca08ab68Smrg
4827c9710b42Smrg   [169]FcStrSetDestroy -- destroy a string set
4828ca08ab68Smrg
4829c9710b42Smrg   [170]FcStrListCreate -- create a string iterator
4830ca08ab68Smrg
4831c9710b42Smrg   [171]FcStrListNext -- get next string in iteration
4832ca08ab68Smrg
4833c9710b42Smrg   [172]FcStrListDone -- destroy a string iterator
4834ca08ab68Smrg
4835ca08ab68Smrg   A data structure for enumerating strings, used to list directories while
4836ca08ab68Smrg   scanning the configuration as directories are added while scanning.
48372c393a42Smrg
4838ca08ab68Smrg                                 FcStrSetCreate
48392c393a42Smrg
48402c393a42SmrgName
48412c393a42Smrg
4842ca08ab68Smrg   FcStrSetCreate -- create a string set
48432c393a42Smrg
48442c393a42SmrgSynopsis
48452c393a42Smrg
4846c9710b42Smrg   #include <fontconfig/fontconfig.h>
48472c393a42Smrg
4848a6844aabSmrg
4849ca08ab68Smrg   FcStrSet * FcStrSetCreate(void);
48502c393a42Smrg
48512c393a42SmrgDescription
48522c393a42Smrg
4853ca08ab68Smrg   Create an empty set.
48542c393a42Smrg
48552c393a42SmrgVersion
48562c393a42Smrg
4857c9710b42Smrg   Fontconfig version 2.10.93
48582c393a42Smrg
4859ca08ab68Smrg                                 FcStrSetMember
48602c393a42Smrg
48612c393a42SmrgName
48622c393a42Smrg
4863ca08ab68Smrg   FcStrSetMember -- check set for membership
48642c393a42Smrg
48652c393a42SmrgSynopsis
48662c393a42Smrg
4867c9710b42Smrg   #include <fontconfig/fontconfig.h>
48682c393a42Smrg
4869a6844aabSmrg
4870ca08ab68Smrg   FcBool FcStrSetMember(FcStrSet *set, const FcChar8 *s);
48712c393a42Smrg
48722c393a42SmrgDescription
48732c393a42Smrg
4874ca08ab68Smrg   Returns whether s is a member of set.
48752c393a42Smrg
48762c393a42SmrgVersion
48772c393a42Smrg
4878c9710b42Smrg   Fontconfig version 2.10.93
48792c393a42Smrg
4880ca08ab68Smrg                                 FcStrSetEqual
48812c393a42Smrg
48822c393a42SmrgName
48832c393a42Smrg
4884ca08ab68Smrg   FcStrSetEqual -- check sets for equality
48852c393a42Smrg
48862c393a42SmrgSynopsis
48872c393a42Smrg
4888c9710b42Smrg   #include <fontconfig/fontconfig.h>
48892c393a42Smrg
4890a6844aabSmrg
4891ca08ab68Smrg   FcBool FcStrSetEqual(FcStrSet *set_a, FcStrSet *set_b);
48922c393a42Smrg
48932c393a42SmrgDescription
48942c393a42Smrg
4895ca08ab68Smrg   Returns whether set_a contains precisely the same strings as set_b.
4896ca08ab68Smrg   Ordering of strings within the two sets is not considered.
48972c393a42Smrg
48982c393a42SmrgVersion
48992c393a42Smrg
4900c9710b42Smrg   Fontconfig version 2.10.93
49012c393a42Smrg
4902ca08ab68Smrg                                  FcStrSetAdd
49032c393a42Smrg
49042c393a42SmrgName
49052c393a42Smrg
4906ca08ab68Smrg   FcStrSetAdd -- add to a string set
49072c393a42Smrg
49082c393a42SmrgSynopsis
49092c393a42Smrg
4910c9710b42Smrg   #include <fontconfig/fontconfig.h>
49112c393a42Smrg
4912a6844aabSmrg
4913ca08ab68Smrg   FcBool FcStrSetAdd(FcStrSet *set, const FcChar8 *s);
49142c393a42Smrg
49152c393a42SmrgDescription
49162c393a42Smrg
4917ca08ab68Smrg   Adds a copy of s to set.
49182c393a42Smrg
49192c393a42SmrgVersion
49202c393a42Smrg
4921c9710b42Smrg   Fontconfig version 2.10.93
49222c393a42Smrg
4923ca08ab68Smrg                              FcStrSetAddFilename
49242c393a42Smrg
49252c393a42SmrgName
49262c393a42Smrg
4927ca08ab68Smrg   FcStrSetAddFilename -- add a filename to a string set
49282c393a42Smrg
49292c393a42SmrgSynopsis
49302c393a42Smrg
4931c9710b42Smrg   #include <fontconfig/fontconfig.h>
49322c393a42Smrg
4933a6844aabSmrg
4934ca08ab68Smrg   FcBool FcStrSetAddFilename(FcStrSet *set, const FcChar8 *s);
49352c393a42Smrg
49362c393a42SmrgDescription
49372c393a42Smrg
4938ca08ab68Smrg   Adds a copy s to set, The copy is created with FcStrCopyFilename so that
4939ca08ab68Smrg   leading '~' values are replaced with the value of the HOME environment
4940ca08ab68Smrg   variable.
49412c393a42Smrg
49422c393a42SmrgVersion
49432c393a42Smrg
4944c9710b42Smrg   Fontconfig version 2.10.93
49452c393a42Smrg
4946ca08ab68Smrg                                  FcStrSetDel
49472c393a42Smrg
49482c393a42SmrgName
49492c393a42Smrg
4950ca08ab68Smrg   FcStrSetDel -- delete from a string set
49512c393a42Smrg
49522c393a42SmrgSynopsis
49532c393a42Smrg
4954c9710b42Smrg   #include <fontconfig/fontconfig.h>
49552c393a42Smrg
4956a6844aabSmrg
4957ca08ab68Smrg   FcBool FcStrSetDel(FcStrSet *set, const FcChar8 *s);
49582c393a42Smrg
49592c393a42SmrgDescription
49602c393a42Smrg
4961ca08ab68Smrg   Removes s from set, returning FcTrue if s was a member else FcFalse.
49622c393a42Smrg
49632c393a42SmrgVersion
49642c393a42Smrg
4965c9710b42Smrg   Fontconfig version 2.10.93
49662c393a42Smrg
4967ca08ab68Smrg                                FcStrSetDestroy
49682c393a42Smrg
49692c393a42SmrgName
49702c393a42Smrg
4971ca08ab68Smrg   FcStrSetDestroy -- destroy a string set
49722c393a42Smrg
49732c393a42SmrgSynopsis
49742c393a42Smrg
4975c9710b42Smrg   #include <fontconfig/fontconfig.h>
49762c393a42Smrg
4977a6844aabSmrg
4978ca08ab68Smrg   void FcStrSetDestroy(FcStrSet *set);
49792c393a42Smrg
49802c393a42SmrgDescription
49812c393a42Smrg
4982ca08ab68Smrg   Destroys set.
49832c393a42Smrg
49842c393a42SmrgVersion
49852c393a42Smrg
4986c9710b42Smrg   Fontconfig version 2.10.93
49872c393a42Smrg
4988ca08ab68Smrg                                FcStrListCreate
49892c393a42Smrg
49902c393a42SmrgName
49912c393a42Smrg
4992ca08ab68Smrg   FcStrListCreate -- create a string iterator
49932c393a42Smrg
49942c393a42SmrgSynopsis
49952c393a42Smrg
4996c9710b42Smrg   #include <fontconfig/fontconfig.h>
49972c393a42Smrg
4998a6844aabSmrg
4999ca08ab68Smrg   FcStrList * FcStrListCreate(FcStrSet *set);
50002c393a42Smrg
50012c393a42SmrgDescription
50022c393a42Smrg
5003ca08ab68Smrg   Creates an iterator to list the strings in set.
50042c393a42Smrg
50052c393a42SmrgVersion
50062c393a42Smrg
5007c9710b42Smrg   Fontconfig version 2.10.93
50082c393a42Smrg
5009ca08ab68Smrg                                 FcStrListNext
50102c393a42Smrg
50112c393a42SmrgName
50122c393a42Smrg
5013ca08ab68Smrg   FcStrListNext -- get next string in iteration
50142c393a42Smrg
50152c393a42SmrgSynopsis
50162c393a42Smrg
5017c9710b42Smrg   #include <fontconfig/fontconfig.h>
50182c393a42Smrg
5019a6844aabSmrg
5020ca08ab68Smrg   FcChar8 * FcStrListNext(FcStrList *list);
50212c393a42Smrg
50222c393a42SmrgDescription
50232c393a42Smrg
5024ca08ab68Smrg   Returns the next string in set.
50252c393a42Smrg
50262c393a42SmrgVersion
50272c393a42Smrg
5028c9710b42Smrg   Fontconfig version 2.10.93
50292c393a42Smrg
5030ca08ab68Smrg                                 FcStrListDone
50312c393a42Smrg
5032ca08ab68SmrgName
5033ca08ab68Smrg
5034ca08ab68Smrg   FcStrListDone -- destroy a string iterator
5035ca08ab68Smrg
5036ca08ab68SmrgSynopsis
5037ca08ab68Smrg
5038c9710b42Smrg   #include <fontconfig/fontconfig.h>
5039ca08ab68Smrg
5040ca08ab68Smrg
5041ca08ab68Smrg   void FcStrListDone(FcStrList *list);
5042ca08ab68Smrg
5043ca08ab68SmrgDescription
5044ca08ab68Smrg
5045ca08ab68Smrg   Destroys the enumerator list.
5046ca08ab68Smrg
5047ca08ab68SmrgVersion
5048ca08ab68Smrg
5049c9710b42Smrg   Fontconfig version 2.10.93
5050ca08ab68Smrg
5051ca08ab68Smrg   --------------------------------------------------------------------------
5052ca08ab68Smrg
5053ca08ab68Smrg  String utilities
5054ca08ab68Smrg
5055ca08ab68Smrg   Table of Contents
5056ca08ab68Smrg
5057c9710b42Smrg   [173]FcUtf8ToUcs4 -- convert UTF-8 to UCS4
5058ca08ab68Smrg
5059c9710b42Smrg   [174]FcUcs4ToUtf8 -- convert UCS4 to UTF-8
50602c393a42Smrg
5061c9710b42Smrg   [175]FcUtf8Len -- count UTF-8 encoded chars
50622c393a42Smrg
5063c9710b42Smrg   [176]FcUtf16ToUcs4 -- convert UTF-16 to UCS4
50642c393a42Smrg
5065c9710b42Smrg   [177]FcUtf16Len -- count UTF-16 encoded chars
5066ca08ab68Smrg
5067c9710b42Smrg   [178]FcIsLower -- check for lower case ASCII character
5068ca08ab68Smrg
5069c9710b42Smrg   [179]FcIsUpper -- check for upper case ASCII character
5070ca08ab68Smrg
5071c9710b42Smrg   [180]FcToLower -- convert upper case ASCII to lower case
5072ca08ab68Smrg
5073c9710b42Smrg   [181]FcStrCopy -- duplicate a string
5074ca08ab68Smrg
5075c9710b42Smrg   [182]FcStrDowncase -- create a lower case translation of a string
5076ca08ab68Smrg
5077c9710b42Smrg   [183]FcStrCopyFilename -- create a complete path from a filename
5078ca08ab68Smrg
5079c9710b42Smrg   [184]FcStrCmp -- compare UTF-8 strings
5080ca08ab68Smrg
5081c9710b42Smrg   [185]FcStrCmpIgnoreCase -- compare UTF-8 strings ignoring case
5082ca08ab68Smrg
5083c9710b42Smrg   [186]FcStrStr -- locate UTF-8 substring
5084ca08ab68Smrg
5085c9710b42Smrg   [187]FcStrStrIgnoreCase -- locate UTF-8 substring ignoring ASCII case
5086ca08ab68Smrg
5087c9710b42Smrg   [188]FcStrPlus -- concatenate two strings
5088ca08ab68Smrg
5089c9710b42Smrg   [189]FcStrFree -- free a string
5090ca08ab68Smrg
5091c9710b42Smrg   [190]FcStrDirname -- directory part of filename
5092ca08ab68Smrg
5093c9710b42Smrg   [191]FcStrBasename -- last component of filename
5094ca08ab68Smrg
5095ca08ab68Smrg   Fontconfig manipulates many UTF-8 strings represented with the FcChar8
5096ca08ab68Smrg   type. These functions are exposed to help applications deal with these
5097ca08ab68Smrg   UTF-8 strings in a locale-insensitive manner.
5098ca08ab68Smrg
5099ca08ab68Smrg                                  FcUtf8ToUcs4
51002c393a42Smrg
51012c393a42SmrgName
51022c393a42Smrg
5103ca08ab68Smrg   FcUtf8ToUcs4 -- convert UTF-8 to UCS4
51042c393a42Smrg
51052c393a42SmrgSynopsis
51062c393a42Smrg
5107c9710b42Smrg   #include <fontconfig/fontconfig.h>
51082c393a42Smrg
5109a6844aabSmrg
5110ca08ab68Smrg   int FcUtf8ToUcs4(FcChar8 *src, FcChar32 *dst, int len);
51112c393a42Smrg
51122c393a42SmrgDescription
51132c393a42Smrg
5114ca08ab68Smrg   Converts the next Unicode char from src into dst and returns the number of
5115ca08ab68Smrg   bytes containing the char. src must be at least len bytes long.
51162c393a42Smrg
51172c393a42SmrgVersion
51182c393a42Smrg
5119c9710b42Smrg   Fontconfig version 2.10.93
51202c393a42Smrg
5121ca08ab68Smrg                                  FcUcs4ToUtf8
51222c393a42Smrg
51232c393a42SmrgName
51242c393a42Smrg
5125ca08ab68Smrg   FcUcs4ToUtf8 -- convert UCS4 to UTF-8
51262c393a42Smrg
51272c393a42SmrgSynopsis
51282c393a42Smrg
5129c9710b42Smrg   #include <fontconfig/fontconfig.h>
51302c393a42Smrg
5131a6844aabSmrg
5132ca08ab68Smrg   int FcUcs4ToUtf8(FcChar32 src, FcChar8 dst[FC_UTF8_MAX_LEN]);
51332c393a42Smrg
51342c393a42SmrgDescription
51352c393a42Smrg
5136ca08ab68Smrg   Converts the Unicode char from src into dst and returns the number of
5137ca08ab68Smrg   bytes needed to encode the char.
51382c393a42Smrg
51392c393a42SmrgVersion
51402c393a42Smrg
5141c9710b42Smrg   Fontconfig version 2.10.93
51422c393a42Smrg
5143ca08ab68Smrg                                   FcUtf8Len
51442c393a42Smrg
51452c393a42SmrgName
51462c393a42Smrg
5147ca08ab68Smrg   FcUtf8Len -- count UTF-8 encoded chars
51482c393a42Smrg
51492c393a42SmrgSynopsis
51502c393a42Smrg
5151c9710b42Smrg   #include <fontconfig/fontconfig.h>
51522c393a42Smrg
5153a6844aabSmrg
5154ca08ab68Smrg   FcBool FcUtf8Len(FcChar8 *src, int len, int *nchar, int *wchar);
51552c393a42Smrg
51562c393a42SmrgDescription
51572c393a42Smrg
5158ca08ab68Smrg   Counts the number of Unicode chars in len bytes of src. Places that count
5159ca08ab68Smrg   in nchar. wchar contains 1, 2 or 4 depending on the number of bytes needed
5160ca08ab68Smrg   to hold the largest Unicode char counted. The return value indicates
5161ca08ab68Smrg   whether src is a well-formed UTF8 string.
51622c393a42Smrg
51632c393a42SmrgVersion
51642c393a42Smrg
5165c9710b42Smrg   Fontconfig version 2.10.93
51662c393a42Smrg
5167ca08ab68Smrg                                 FcUtf16ToUcs4
51682c393a42Smrg
51692c393a42SmrgName
51702c393a42Smrg
5171ca08ab68Smrg   FcUtf16ToUcs4 -- convert UTF-16 to UCS4
51722c393a42Smrg
51732c393a42SmrgSynopsis
51742c393a42Smrg
5175c9710b42Smrg   #include <fontconfig/fontconfig.h>
51762c393a42Smrg
5177a6844aabSmrg
5178ca08ab68Smrg   int FcUtf16ToUcs4(FcChar8 *src, FcEndian endian, FcChar32 *dst, int len);
51792c393a42Smrg
51802c393a42SmrgDescription
51812c393a42Smrg
5182ca08ab68Smrg   Converts the next Unicode char from src into dst and returns the number of
5183ca08ab68Smrg   bytes containing the char. src must be at least len bytes long. Bytes of
5184ca08ab68Smrg   src are combined into 16-bit units according to endian.
51852c393a42Smrg
51862c393a42SmrgVersion
51872c393a42Smrg
5188c9710b42Smrg   Fontconfig version 2.10.93
51892c393a42Smrg
5190ca08ab68Smrg                                   FcUtf16Len
51912c393a42Smrg
51922c393a42SmrgName
51932c393a42Smrg
5194ca08ab68Smrg   FcUtf16Len -- count UTF-16 encoded chars
51952c393a42Smrg
51962c393a42SmrgSynopsis
51972c393a42Smrg
5198c9710b42Smrg   #include <fontconfig/fontconfig.h>
51992c393a42Smrg
5200a6844aabSmrg
5201ca08ab68Smrg   FcBool FcUtf16Len(FcChar8 *src, FcEndian endian, int len, int *nchar, int
5202ca08ab68Smrg   *wchar);
52032c393a42Smrg
52042c393a42SmrgDescription
52052c393a42Smrg
5206ca08ab68Smrg   Counts the number of Unicode chars in len bytes of src. Bytes of src are
5207ca08ab68Smrg   combined into 16-bit units according to endian. Places that count in
5208ca08ab68Smrg   nchar. wchar contains 1, 2 or 4 depending on the number of bytes needed to
5209ca08ab68Smrg   hold the largest Unicode char counted. The return value indicates whether
5210ca08ab68Smrg   string is a well-formed UTF16 string.
52112c393a42Smrg
52122c393a42SmrgVersion
52132c393a42Smrg
5214c9710b42Smrg   Fontconfig version 2.10.93
52152c393a42Smrg
5216ca08ab68Smrg                                   FcIsLower
52172c393a42Smrg
52182c393a42SmrgName
52192c393a42Smrg
5220ca08ab68Smrg   FcIsLower -- check for lower case ASCII character
52212c393a42Smrg
52222c393a42SmrgSynopsis
52232c393a42Smrg
5224c9710b42Smrg   #include <fontconfig/fontconfig.h>
52252c393a42Smrg
5226a6844aabSmrg
5227ca08ab68Smrg   FcBool FcIsLower(FcChar8c);
52282c393a42Smrg
52292c393a42SmrgDescription
52302c393a42Smrg
5231ca08ab68Smrg   This macro checks whether c is an lower case ASCII letter.
52322c393a42Smrg
52332c393a42SmrgVersion
52342c393a42Smrg
5235c9710b42Smrg   Fontconfig version 2.10.93
52362c393a42Smrg
5237ca08ab68Smrg                                   FcIsUpper
52382c393a42Smrg
52392c393a42SmrgName
52402c393a42Smrg
5241ca08ab68Smrg   FcIsUpper -- check for upper case ASCII character
52422c393a42Smrg
52432c393a42SmrgSynopsis
52442c393a42Smrg
5245c9710b42Smrg   #include <fontconfig/fontconfig.h>
52462c393a42Smrg
5247a6844aabSmrg
5248ca08ab68Smrg   FcBool FcIsUpper(FcChar8c);
52492c393a42Smrg
52502c393a42SmrgDescription
52512c393a42Smrg
5252ca08ab68Smrg   This macro checks whether c is a upper case ASCII letter.
52532c393a42Smrg
52542c393a42SmrgVersion
52552c393a42Smrg
5256c9710b42Smrg   Fontconfig version 2.10.93
52572c393a42Smrg
5258ca08ab68Smrg                                   FcToLower
52592c393a42Smrg
52602c393a42SmrgName
52612c393a42Smrg
5262ca08ab68Smrg   FcToLower -- convert upper case ASCII to lower case
52632c393a42Smrg
52642c393a42SmrgSynopsis
52652c393a42Smrg
5266c9710b42Smrg   #include <fontconfig/fontconfig.h>
52672c393a42Smrg
5268a6844aabSmrg
5269ca08ab68Smrg   FcChar8 FcToLower(FcChar8c);
52702c393a42Smrg
52712c393a42SmrgDescription
52722c393a42Smrg
5273ca08ab68Smrg   This macro converts upper case ASCII c to the equivalent lower case
5274ca08ab68Smrg   letter.
52752c393a42Smrg
52762c393a42SmrgVersion
52772c393a42Smrg
5278c9710b42Smrg   Fontconfig version 2.10.93
52792c393a42Smrg
5280ca08ab68Smrg                                   FcStrCopy
52812c393a42Smrg
52822c393a42SmrgName
52832c393a42Smrg
5284ca08ab68Smrg   FcStrCopy -- duplicate a string
52852c393a42Smrg
52862c393a42SmrgSynopsis
52872c393a42Smrg
5288c9710b42Smrg   #include <fontconfig/fontconfig.h>
52892c393a42Smrg
5290a6844aabSmrg
5291ca08ab68Smrg   FcChar8 * FcStrCopy(const FcChar8 *s);
52922c393a42Smrg
52932c393a42SmrgDescription
52942c393a42Smrg
5295ca08ab68Smrg   Allocates memory, copies s and returns the resulting buffer. Yes, this is
5296ca08ab68Smrg   strdup, but that function isn't available on every platform.
52972c393a42Smrg
52982c393a42SmrgVersion
52992c393a42Smrg
5300c9710b42Smrg   Fontconfig version 2.10.93
53012c393a42Smrg
5302ca08ab68Smrg                                 FcStrDowncase
53032c393a42Smrg
53042c393a42SmrgName
53052c393a42Smrg
5306ca08ab68Smrg   FcStrDowncase -- create a lower case translation of a string
53072c393a42Smrg
53082c393a42SmrgSynopsis
53092c393a42Smrg
5310c9710b42Smrg   #include <fontconfig/fontconfig.h>
53112c393a42Smrg
5312a6844aabSmrg
5313ca08ab68Smrg   FcChar8 * FcStrDowncase(const FcChar8 *s);
53142c393a42Smrg
53152c393a42SmrgDescription
53162c393a42Smrg
5317ca08ab68Smrg   Allocates memory, copies s, converting upper case letters to lower case
5318ca08ab68Smrg   and returns the allocated buffer.
53192c393a42Smrg
53202c393a42SmrgVersion
53212c393a42Smrg
5322c9710b42Smrg   Fontconfig version 2.10.93
53232c393a42Smrg
5324ca08ab68Smrg                               FcStrCopyFilename
53252c393a42Smrg
53262c393a42SmrgName
53272c393a42Smrg
5328ca08ab68Smrg   FcStrCopyFilename -- create a complete path from a filename
53292c393a42Smrg
53302c393a42SmrgSynopsis
53312c393a42Smrg
5332c9710b42Smrg   #include <fontconfig/fontconfig.h>
53332c393a42Smrg
5334a6844aabSmrg
5335ca08ab68Smrg   FcChar8 * FcStrCopyFilename(const FcChar8 *s);
53362c393a42Smrg
53372c393a42SmrgDescription
53382c393a42Smrg
5339ca08ab68Smrg   FcStrCopyFilename constructs an absolute pathname from s. It converts any
5340ca08ab68Smrg   leading '~' characters in to the value of the HOME environment variable,
5341ca08ab68Smrg   and any relative paths are converted to absolute paths using the current
5342ca08ab68Smrg   working directory. Sequences of '/' characters are converted to a single
5343ca08ab68Smrg   '/', and names containing the current directory '.' or parent directory
5344ca08ab68Smrg   '..' are correctly reconstructed. Returns NULL if '~' is the leading
5345ca08ab68Smrg   character and HOME is unset or disabled (see FcConfigEnableHome).
53462c393a42Smrg
53472c393a42SmrgVersion
53482c393a42Smrg
5349c9710b42Smrg   Fontconfig version 2.10.93
53502c393a42Smrg
5351ca08ab68Smrg                                    FcStrCmp
53522c393a42Smrg
53532c393a42SmrgName
53542c393a42Smrg
5355ca08ab68Smrg   FcStrCmp -- compare UTF-8 strings
53562c393a42Smrg
53572c393a42SmrgSynopsis
53582c393a42Smrg
5359c9710b42Smrg   #include <fontconfig/fontconfig.h>
53602c393a42Smrg
5361a6844aabSmrg
5362ca08ab68Smrg   int FcStrCmp(const FcChar8 *s1, const FcChar8 *s2);
53632c393a42Smrg
53642c393a42SmrgDescription
53652c393a42Smrg
5366ca08ab68Smrg   Returns the usual <0, 0, >0 result of comparing s1 and s2.
53672c393a42Smrg
53682c393a42SmrgVersion
53692c393a42Smrg
5370c9710b42Smrg   Fontconfig version 2.10.93
53712c393a42Smrg
5372ca08ab68Smrg                               FcStrCmpIgnoreCase
53732c393a42Smrg
53742c393a42SmrgName
53752c393a42Smrg
5376ca08ab68Smrg   FcStrCmpIgnoreCase -- compare UTF-8 strings ignoring case
53772c393a42Smrg
53782c393a42SmrgSynopsis
53792c393a42Smrg
5380c9710b42Smrg   #include <fontconfig/fontconfig.h>
53812c393a42Smrg
5382a6844aabSmrg
5383ca08ab68Smrg   int FcStrCmpIgnoreCase(const FcChar8 *s1, const FcChar8 *s2);
53842c393a42Smrg
53852c393a42SmrgDescription
53862c393a42Smrg
5387ca08ab68Smrg   Returns the usual <0, 0, >0 result of comparing s1 and s2. This test is
5388ca08ab68Smrg   case-insensitive for all proper UTF-8 encoded strings.
53892c393a42Smrg
53902c393a42SmrgVersion
53912c393a42Smrg
5392c9710b42Smrg   Fontconfig version 2.10.93
53932c393a42Smrg
5394ca08ab68Smrg                                    FcStrStr
53952c393a42Smrg
53962c393a42SmrgName
53972c393a42Smrg
5398ca08ab68Smrg   FcStrStr -- locate UTF-8 substring
53992c393a42Smrg
54002c393a42SmrgSynopsis
54012c393a42Smrg
5402c9710b42Smrg   #include <fontconfig/fontconfig.h>
54032c393a42Smrg
5404a6844aabSmrg
5405ca08ab68Smrg   FcChar8 * FcStrStr(const FcChar8 *s1, const FcChar8 *s2);
54062c393a42Smrg
54072c393a42SmrgDescription
54082c393a42Smrg
5409ca08ab68Smrg   Returns the location of s2 in s1. Returns NULL if s2 is not present in s1.
5410ca08ab68Smrg   This test will operate properly with UTF8 encoded strings.
54112c393a42Smrg
54122c393a42SmrgVersion
54132c393a42Smrg
5414c9710b42Smrg   Fontconfig version 2.10.93
54152c393a42Smrg
5416ca08ab68Smrg                               FcStrStrIgnoreCase
54172c393a42Smrg
54182c393a42SmrgName
54192c393a42Smrg
5420ca08ab68Smrg   FcStrStrIgnoreCase -- locate UTF-8 substring ignoring ASCII case
54212c393a42Smrg
54222c393a42SmrgSynopsis
54232c393a42Smrg
5424c9710b42Smrg   #include <fontconfig/fontconfig.h>
54252c393a42Smrg
5426a6844aabSmrg
5427ca08ab68Smrg   FcChar8 * FcStrStrIgnoreCase(const FcChar8 *s1, const FcChar8 *s2);
54282c393a42Smrg
54292c393a42SmrgDescription
54302c393a42Smrg
5431ca08ab68Smrg   Returns the location of s2 in s1, ignoring case. Returns NULL if s2 is not
5432ca08ab68Smrg   present in s1. This test is case-insensitive for all proper UTF-8 encoded
5433ca08ab68Smrg   strings.
54342c393a42Smrg
54352c393a42SmrgVersion
54362c393a42Smrg
5437c9710b42Smrg   Fontconfig version 2.10.93
54382c393a42Smrg
5439ca08ab68Smrg                                   FcStrPlus
54402c393a42Smrg
54412c393a42SmrgName
54422c393a42Smrg
5443ca08ab68Smrg   FcStrPlus -- concatenate two strings
54442c393a42Smrg
54452c393a42SmrgSynopsis
54462c393a42Smrg
5447c9710b42Smrg   #include <fontconfig/fontconfig.h>
54482c393a42Smrg
5449a6844aabSmrg
5450ca08ab68Smrg   FcChar8 * FcStrPlus(const FcChar8 *s1, const FcChar8 *s2);
54512c393a42Smrg
54522c393a42SmrgDescription
54532c393a42Smrg
5454ca08ab68Smrg   This function allocates new storage and places the concatenation of s1 and
5455ca08ab68Smrg   s2 there, returning the new string.
54562c393a42Smrg
54572c393a42SmrgVersion
54582c393a42Smrg
5459c9710b42Smrg   Fontconfig version 2.10.93
54602c393a42Smrg
5461ca08ab68Smrg                                   FcStrFree
54622c393a42Smrg
54632c393a42SmrgName
54642c393a42Smrg
5465ca08ab68Smrg   FcStrFree -- free a string
54662c393a42Smrg
54672c393a42SmrgSynopsis
54682c393a42Smrg
5469c9710b42Smrg   #include <fontconfig/fontconfig.h>
54702c393a42Smrg
5471a6844aabSmrg
5472ca08ab68Smrg   void FcStrFree(FcChar8 *s);
54732c393a42Smrg
54742c393a42SmrgDescription
54752c393a42Smrg
5476ca08ab68Smrg   This is just a wrapper around free(3) which helps track memory usage of
5477ca08ab68Smrg   strings within the fontconfig library.
54782c393a42Smrg
54792c393a42SmrgVersion
54802c393a42Smrg
5481c9710b42Smrg   Fontconfig version 2.10.93
54822c393a42Smrg
5483ca08ab68Smrg                                  FcStrDirname
54842c393a42Smrg
54852c393a42SmrgName
54862c393a42Smrg
5487ca08ab68Smrg   FcStrDirname -- directory part of filename
54882c393a42Smrg
54892c393a42SmrgSynopsis
54902c393a42Smrg
5491c9710b42Smrg   #include <fontconfig/fontconfig.h>
54922c393a42Smrg
5493a6844aabSmrg
5494ca08ab68Smrg   FcChar8 * FcStrDirname(const FcChar8 *file);
54952c393a42Smrg
54962c393a42SmrgDescription
54972c393a42Smrg
5498ca08ab68Smrg   Returns the directory containing file. This is returned in newly allocated
5499ca08ab68Smrg   storage which should be freed when no longer needed.
55002c393a42Smrg
55012c393a42SmrgVersion
55022c393a42Smrg
5503c9710b42Smrg   Fontconfig version 2.10.93
55042c393a42Smrg
5505ca08ab68Smrg                                 FcStrBasename
55062c393a42Smrg
55072c393a42SmrgName
55082c393a42Smrg
5509ca08ab68Smrg   FcStrBasename -- last component of filename
55102c393a42Smrg
55112c393a42SmrgSynopsis
55122c393a42Smrg
5513c9710b42Smrg   #include <fontconfig/fontconfig.h>
55142c393a42Smrg
5515a6844aabSmrg
5516ca08ab68Smrg   FcChar8 * FcStrBasename(const FcChar8 *file);
55172c393a42Smrg
55182c393a42SmrgDescription
55192c393a42Smrg
5520ca08ab68Smrg   Returns the filename of file stripped of any leading directory names. This
5521ca08ab68Smrg   is returned in newly allocated storage which should be freed when no
5522ca08ab68Smrg   longer needed.
55232c393a42Smrg
55242c393a42SmrgVersion
55252c393a42Smrg
5526c9710b42Smrg   Fontconfig version 2.10.93
5527ca08ab68Smrg
5528ca08ab68SmrgReferences
5529a6844aabSmrg
5530ca08ab68Smrg   Visible links
5531c9710b42Smrg   1. file:///tmp/html-eJSsR7#AEN16
5532c9710b42Smrg   2. file:///tmp/html-eJSsR7#AEN19
5533c9710b42Smrg   3. file:///tmp/html-eJSsR7#AEN31
5534c9710b42Smrg   4. file:///tmp/html-eJSsR7#AEN102
5535c9710b42Smrg   5. file:///tmp/html-eJSsR7#FCINITLOADCONFIG
5536c9710b42Smrg   6. file:///tmp/html-eJSsR7#FCINITLOADCONFIGANDFONTS
5537c9710b42Smrg   7. file:///tmp/html-eJSsR7#FCINIT
5538c9710b42Smrg   8. file:///tmp/html-eJSsR7#FCFINI
5539c9710b42Smrg   9. file:///tmp/html-eJSsR7#FCGETVERSION
5540c9710b42Smrg  10. file:///tmp/html-eJSsR7#FCINITREINITIALIZE
5541c9710b42Smrg  11. file:///tmp/html-eJSsR7#FCINITBRINGUPTODATE
5542c9710b42Smrg  12. file:///tmp/html-eJSsR7#FCPATTERNCREATE
5543c9710b42Smrg  13. file:///tmp/html-eJSsR7#FCPATTERNDUPLICATE
5544c9710b42Smrg  14. file:///tmp/html-eJSsR7#FCPATTERNREFERENCE
5545c9710b42Smrg  15. file:///tmp/html-eJSsR7#FCPATTERNDESTROY
5546c9710b42Smrg  16. file:///tmp/html-eJSsR7#FCPATTERNEQUAL
5547c9710b42Smrg  17. file:///tmp/html-eJSsR7#FCPATTERNEQUALSUBSET
5548c9710b42Smrg  18. file:///tmp/html-eJSsR7#FCPATTERNFILTER
5549c9710b42Smrg  19. file:///tmp/html-eJSsR7#FCPATTERNHASH
5550c9710b42Smrg  20. file:///tmp/html-eJSsR7#FCPATTERNADD
5551c9710b42Smrg  21. file:///tmp/html-eJSsR7#FCPATTERNADDWEAK
5552c9710b42Smrg  22. file:///tmp/html-eJSsR7#FCPATTERNADD-TYPE
5553c9710b42Smrg  23. file:///tmp/html-eJSsR7#FCPATTERNGET
5554c9710b42Smrg  24. file:///tmp/html-eJSsR7#FCPATTERNGET-TYPE
5555c9710b42Smrg  25. file:///tmp/html-eJSsR7#FCPATTERNBUILD
5556c9710b42Smrg  26. file:///tmp/html-eJSsR7#FCPATTERNDEL
5557c9710b42Smrg  27. file:///tmp/html-eJSsR7#FCPATTERNREMOVE
5558c9710b42Smrg  28. file:///tmp/html-eJSsR7#FCPATTERNPRINT
5559c9710b42Smrg  29. file:///tmp/html-eJSsR7#FCDEFAULTSUBSTITUTE
5560c9710b42Smrg  30. file:///tmp/html-eJSsR7#FCNAMEPARSE
5561c9710b42Smrg  31. file:///tmp/html-eJSsR7#FCNAMEUNPARSE
5562c9710b42Smrg  32. file:///tmp/html-eJSsR7#FCPATTERNFORMAT
5563c9710b42Smrg  33. file:///tmp/html-eJSsR7#FCFONTSETCREATE
5564c9710b42Smrg  34. file:///tmp/html-eJSsR7#FCFONTSETDESTROY
5565c9710b42Smrg  35. file:///tmp/html-eJSsR7#FCFONTSETADD
5566c9710b42Smrg  36. file:///tmp/html-eJSsR7#FCFONTSETLIST
5567c9710b42Smrg  37. file:///tmp/html-eJSsR7#FCFONTSETMATCH
5568c9710b42Smrg  38. file:///tmp/html-eJSsR7#FCFONTSETPRINT
5569c9710b42Smrg  39. file:///tmp/html-eJSsR7#FCFONTSETSORT
5570c9710b42Smrg  40. file:///tmp/html-eJSsR7#FCFONTSETSORTDESTROY
5571c9710b42Smrg  41. file:///tmp/html-eJSsR7#FCOBJECTSETCREATE
5572c9710b42Smrg  42. file:///tmp/html-eJSsR7#FCOBJECTSETADD
5573c9710b42Smrg  43. file:///tmp/html-eJSsR7#FCOBJECTSETDESTROY
5574c9710b42Smrg  44. file:///tmp/html-eJSsR7#FCOBJECTSETBUILD
5575c9710b42Smrg  45. file:///tmp/html-eJSsR7#FCFREETYPECHARINDEX
5576c9710b42Smrg  46. file:///tmp/html-eJSsR7#FCFREETYPECHARSET
5577c9710b42Smrg  47. file:///tmp/html-eJSsR7#FCFREETYPECHARSETANDSPACING
5578c9710b42Smrg  48. file:///tmp/html-eJSsR7#FCFREETYPEQUERY
5579c9710b42Smrg  49. file:///tmp/html-eJSsR7#FCFREETYPEQUERYFACE
5580c9710b42Smrg  50. file:///tmp/html-eJSsR7#FCVALUEDESTROY
5581c9710b42Smrg  51. file:///tmp/html-eJSsR7#FCVALUESAVE
5582c9710b42Smrg  52. file:///tmp/html-eJSsR7#FCVALUEPRINT
5583c9710b42Smrg  53. file:///tmp/html-eJSsR7#FCVALUEEQUAL
5584c9710b42Smrg  54. file:///tmp/html-eJSsR7#FCCHARSETCREATE
5585c9710b42Smrg  55. file:///tmp/html-eJSsR7#FCCHARSETDESTROY
5586c9710b42Smrg  56. file:///tmp/html-eJSsR7#FCCHARSETADDCHAR
5587c9710b42Smrg  57. file:///tmp/html-eJSsR7#FCCHARSETDELCHAR
5588c9710b42Smrg  58. file:///tmp/html-eJSsR7#FCCHARSETCOPY
5589c9710b42Smrg  59. file:///tmp/html-eJSsR7#FCCHARSETEQUAL
5590c9710b42Smrg  60. file:///tmp/html-eJSsR7#FCCHARSETINTERSECT
5591c9710b42Smrg  61. file:///tmp/html-eJSsR7#FCCHARSETUNION
5592c9710b42Smrg  62. file:///tmp/html-eJSsR7#FCCHARSETSUBTRACT
5593c9710b42Smrg  63. file:///tmp/html-eJSsR7#FCCHARSETMERGE
5594c9710b42Smrg  64. file:///tmp/html-eJSsR7#FCCHARSETHASCHAR
5595c9710b42Smrg  65. file:///tmp/html-eJSsR7#FCCHARSETCOUNT
5596c9710b42Smrg  66. file:///tmp/html-eJSsR7#FCCHARSETINTERSECTCOUNT
5597c9710b42Smrg  67. file:///tmp/html-eJSsR7#FCCHARSETSUBTRACTCOUNT
5598c9710b42Smrg  68. file:///tmp/html-eJSsR7#FCCHARSETISSUBSET
5599c9710b42Smrg  69. file:///tmp/html-eJSsR7#FCCHARSETFIRSTPAGE
5600c9710b42Smrg  70. file:///tmp/html-eJSsR7#FCCHARSETNEXTPAGE
5601c9710b42Smrg  71. file:///tmp/html-eJSsR7#FCCHARSETCOVERAGE
5602c9710b42Smrg  72. file:///tmp/html-eJSsR7#FCCHARSETNEW
5603c9710b42Smrg  73. file:///tmp/html-eJSsR7#FCLANGSETCREATE
5604c9710b42Smrg  74. file:///tmp/html-eJSsR7#FCLANGSETDESTROY
5605c9710b42Smrg  75. file:///tmp/html-eJSsR7#FCLANGSETCOPY
5606c9710b42Smrg  76. file:///tmp/html-eJSsR7#FCLANGSETADD
5607c9710b42Smrg  77. file:///tmp/html-eJSsR7#FCLANGSETDEL
5608c9710b42Smrg  78. file:///tmp/html-eJSsR7#FCLANGSETUNION
5609c9710b42Smrg  79. file:///tmp/html-eJSsR7#FCLANGSETSUBTRACT
5610c9710b42Smrg  80. file:///tmp/html-eJSsR7#FCLANGSETCOMPARE
5611c9710b42Smrg  81. file:///tmp/html-eJSsR7#FCLANGSETCONTAINS
5612c9710b42Smrg  82. file:///tmp/html-eJSsR7#FCLANGSETEQUAL
5613c9710b42Smrg  83. file:///tmp/html-eJSsR7#FCLANGSETHASH
5614c9710b42Smrg  84. file:///tmp/html-eJSsR7#FCLANGSETHASLANG
5615c9710b42Smrg  85. file:///tmp/html-eJSsR7#FCGETDEFAULTLANGS
5616c9710b42Smrg  86. file:///tmp/html-eJSsR7#FCGETLANGS
5617c9710b42Smrg  87. file:///tmp/html-eJSsR7#FCLANGNORMALIZE
5618c9710b42Smrg  88. file:///tmp/html-eJSsR7#FCLANGGETCHARSET
5619c9710b42Smrg  89. file:///tmp/html-eJSsR7#FCMATRIXINIT
5620c9710b42Smrg  90. file:///tmp/html-eJSsR7#FCMATRIXCOPY
5621c9710b42Smrg  91. file:///tmp/html-eJSsR7#FCMATRIXEQUAL
5622c9710b42Smrg  92. file:///tmp/html-eJSsR7#FCMATRIXMULTIPLY
5623c9710b42Smrg  93. file:///tmp/html-eJSsR7#FCMATRIXROTATE
5624c9710b42Smrg  94. file:///tmp/html-eJSsR7#FCMATRIXSCALE
5625c9710b42Smrg  95. file:///tmp/html-eJSsR7#FCMATRIXSHEAR
5626c9710b42Smrg  96. file:///tmp/html-eJSsR7#FCCONFIGCREATE
5627c9710b42Smrg  97. file:///tmp/html-eJSsR7#FCCONFIGREFERENCE
5628c9710b42Smrg  98. file:///tmp/html-eJSsR7#FCCONFIGDESTROY
5629c9710b42Smrg  99. file:///tmp/html-eJSsR7#FCCONFIGSETCURRENT
5630c9710b42Smrg 100. file:///tmp/html-eJSsR7#FCCONFIGGETCURRENT
5631c9710b42Smrg 101. file:///tmp/html-eJSsR7#FCCONFIGUPTODATE
5632c9710b42Smrg 102. file:///tmp/html-eJSsR7#FCCONFIGHOME
5633c9710b42Smrg 103. file:///tmp/html-eJSsR7#FCCONFIGENABLEHOME
5634c9710b42Smrg 104. file:///tmp/html-eJSsR7#FCCONFIGBUILDFONTS
5635c9710b42Smrg 105. file:///tmp/html-eJSsR7#FCCONFIGGETCONFIGDIRS
5636c9710b42Smrg 106. file:///tmp/html-eJSsR7#FCCONFIGGETFONTDIRS
5637c9710b42Smrg 107. file:///tmp/html-eJSsR7#FCCONFIGGETCONFIGFILES
5638c9710b42Smrg 108. file:///tmp/html-eJSsR7#FCCONFIGGETCACHE
5639c9710b42Smrg 109. file:///tmp/html-eJSsR7#FCCONFIGGETCACHEDIRS
5640c9710b42Smrg 110. file:///tmp/html-eJSsR7#FCCONFIGGETFONTS
5641c9710b42Smrg 111. file:///tmp/html-eJSsR7#FCCONFIGGETBLANKS
5642c9710b42Smrg 112. file:///tmp/html-eJSsR7#FCCONFIGGETRESCANINTERVAL
5643c9710b42Smrg 113. file:///tmp/html-eJSsR7#FCCONFIGSETRESCANINTERVAL
5644c9710b42Smrg 114. file:///tmp/html-eJSsR7#FCCONFIGAPPFONTADDFILE
5645c9710b42Smrg 115. file:///tmp/html-eJSsR7#FCCONFIGAPPFONTADDDIR
5646c9710b42Smrg 116. file:///tmp/html-eJSsR7#FCCONFIGAPPFONTCLEAR
5647c9710b42Smrg 117. file:///tmp/html-eJSsR7#FCCONFIGSUBSTITUTEWITHPAT
5648c9710b42Smrg 118. file:///tmp/html-eJSsR7#FCCONFIGSUBSTITUTE
5649c9710b42Smrg 119. file:///tmp/html-eJSsR7#FCFONTMATCH
5650c9710b42Smrg 120. file:///tmp/html-eJSsR7#FCFONTSORT
5651c9710b42Smrg 121. file:///tmp/html-eJSsR7#FCFONTRENDERPREPARE
5652c9710b42Smrg 122. file:///tmp/html-eJSsR7#FCFONTLIST
5653c9710b42Smrg 123. file:///tmp/html-eJSsR7#FCCONFIGFILENAME
5654c9710b42Smrg 124. file:///tmp/html-eJSsR7#FCCONFIGPARSEANDLOAD
5655c9710b42Smrg 125. file:///tmp/html-eJSsR7#FCCONFIGGETSYSROOT
5656c9710b42Smrg 126. file:///tmp/html-eJSsR7#FCCONFIGSETSYSROOT
5657c9710b42Smrg 127. file:///tmp/html-eJSsR7#FCNAMEREGISTEROBJECTTYPES
5658c9710b42Smrg 128. file:///tmp/html-eJSsR7#FCNAMEUNREGISTEROBJECTTYPES
5659c9710b42Smrg 129. file:///tmp/html-eJSsR7#FCNAMEGETOBJECTTYPE
5660c9710b42Smrg 130. file:///tmp/html-eJSsR7#FCNAMEREGISTERCONSTANTS
5661c9710b42Smrg 131. file:///tmp/html-eJSsR7#FCNAMEUNREGISTERCONSTANTS
5662c9710b42Smrg 132. file:///tmp/html-eJSsR7#FCNAMEGETCONSTANT
5663c9710b42Smrg 133. file:///tmp/html-eJSsR7#FCNAMECONSTANT
5664c9710b42Smrg 134. file:///tmp/html-eJSsR7#FCBLANKSCREATE
5665c9710b42Smrg 135. file:///tmp/html-eJSsR7#FCBLANKSDESTROY
5666c9710b42Smrg 136. file:///tmp/html-eJSsR7#FCBLANKSADD
5667c9710b42Smrg 137. file:///tmp/html-eJSsR7#FCBLANKSISMEMBER
5668c9710b42Smrg 138. file:///tmp/html-eJSsR7#FCATOMICCREATE
5669c9710b42Smrg 139. file:///tmp/html-eJSsR7#FCATOMICLOCK
5670c9710b42Smrg 140. file:///tmp/html-eJSsR7#FCATOMICNEWFILE
5671c9710b42Smrg 141. file:///tmp/html-eJSsR7#FCATOMICORIGFILE
5672c9710b42Smrg 142. file:///tmp/html-eJSsR7#FCATOMICREPLACEORIG
5673c9710b42Smrg 143. file:///tmp/html-eJSsR7#FCATOMICDELETENEW
5674c9710b42Smrg 144. file:///tmp/html-eJSsR7#FCATOMICUNLOCK
5675c9710b42Smrg 145. file:///tmp/html-eJSsR7#FCATOMICDESTROY
5676c9710b42Smrg 146. file:///tmp/html-eJSsR7#FCFILESCAN
5677c9710b42Smrg 147. file:///tmp/html-eJSsR7#FCFILEISDIR
5678c9710b42Smrg 148. file:///tmp/html-eJSsR7#FCDIRSCAN
5679c9710b42Smrg 149. file:///tmp/html-eJSsR7#FCDIRSAVE
5680c9710b42Smrg 150. file:///tmp/html-eJSsR7#FCDIRCACHEUNLINK
5681c9710b42Smrg 151. file:///tmp/html-eJSsR7#FCDIRCACHEVALID
5682c9710b42Smrg 152. file:///tmp/html-eJSsR7#FCDIRCACHELOAD
5683c9710b42Smrg 153. file:///tmp/html-eJSsR7#FCDIRCACHEREAD
5684c9710b42Smrg 154. file:///tmp/html-eJSsR7#FCDIRCACHELOADFILE
5685c9710b42Smrg 155. file:///tmp/html-eJSsR7#FCDIRCACHEUNLOAD
5686c9710b42Smrg 156. file:///tmp/html-eJSsR7#FCCACHEDIR
5687c9710b42Smrg 157. file:///tmp/html-eJSsR7#FCCACHECOPYSET
5688c9710b42Smrg 158. file:///tmp/html-eJSsR7#FCCACHESUBDIR
5689c9710b42Smrg 159. file:///tmp/html-eJSsR7#FCCACHENUMSUBDIR
5690c9710b42Smrg 160. file:///tmp/html-eJSsR7#FCCACHENUMFONT
5691c9710b42Smrg 161. file:///tmp/html-eJSsR7#FCDIRCACHECLEAN
5692c9710b42Smrg 162. file:///tmp/html-eJSsR7#FCCACHECREATETAGFILE
5693c9710b42Smrg 163. file:///tmp/html-eJSsR7#FCSTRSETCREATE
5694c9710b42Smrg 164. file:///tmp/html-eJSsR7#FCSTRSETMEMBER
5695c9710b42Smrg 165. file:///tmp/html-eJSsR7#FCSTRSETEQUAL
5696c9710b42Smrg 166. file:///tmp/html-eJSsR7#FCSTRSETADD
5697c9710b42Smrg 167. file:///tmp/html-eJSsR7#FCSTRSETADDFILENAME
5698c9710b42Smrg 168. file:///tmp/html-eJSsR7#FCSTRSETDEL
5699c9710b42Smrg 169. file:///tmp/html-eJSsR7#FCSTRSETDESTROY
5700c9710b42Smrg 170. file:///tmp/html-eJSsR7#FCSTRLISTCREATE
5701c9710b42Smrg 171. file:///tmp/html-eJSsR7#FCSTRLISTNEXT
5702c9710b42Smrg 172. file:///tmp/html-eJSsR7#FCSTRLISTDONE
5703c9710b42Smrg 173. file:///tmp/html-eJSsR7#FCUTF8TOUCS4
5704c9710b42Smrg 174. file:///tmp/html-eJSsR7#FCUCS4TOUTF8
5705c9710b42Smrg 175. file:///tmp/html-eJSsR7#FCUTF8LEN
5706c9710b42Smrg 176. file:///tmp/html-eJSsR7#FCUTF16TOUCS4
5707c9710b42Smrg 177. file:///tmp/html-eJSsR7#FCUTF16LEN
5708c9710b42Smrg 178. file:///tmp/html-eJSsR7#FCISLOWER
5709c9710b42Smrg 179. file:///tmp/html-eJSsR7#FCISUPPER
5710c9710b42Smrg 180. file:///tmp/html-eJSsR7#FCTOLOWER
5711c9710b42Smrg 181. file:///tmp/html-eJSsR7#FCSTRCOPY
5712c9710b42Smrg 182. file:///tmp/html-eJSsR7#FCSTRDOWNCASE
5713c9710b42Smrg 183. file:///tmp/html-eJSsR7#FCSTRCOPYFILENAME
5714c9710b42Smrg 184. file:///tmp/html-eJSsR7#FCSTRCMP
5715c9710b42Smrg 185. file:///tmp/html-eJSsR7#FCSTRCMPIGNORECASE
5716c9710b42Smrg 186. file:///tmp/html-eJSsR7#FCSTRSTR
5717c9710b42Smrg 187. file:///tmp/html-eJSsR7#FCSTRSTRIGNORECASE
5718c9710b42Smrg 188. file:///tmp/html-eJSsR7#FCSTRPLUS
5719c9710b42Smrg 189. file:///tmp/html-eJSsR7#FCSTRFREE
5720c9710b42Smrg 190. file:///tmp/html-eJSsR7#FCSTRDIRNAME
5721c9710b42Smrg 191. file:///tmp/html-eJSsR7#FCSTRBASENAME
5722