Fontconfig Developers Reference, Version 2.13.1

Keith Packard

HP Cambridge Research Lab

Table of Contents
3. Datatypes
3.1. FcChar8, FcChar16, FcChar32, FcBool
3.2. FcMatrix
3.3. FcCharSet
3.4. FcLangSet
3.5. FcLangResult
3.6. FcType
3.7. FcValue
3.8. FcPattern
3.9. FcFontSet
3.10. FcStrSet, FcStrList
3.11. FcObjectSet
3.12. FcObjectType
3.13. FcConstant
3.14. FcBlanks
3.15. FcFileCache
3.16. FcConfig
3.17. FcSetName
3.18. FcResult
3.19. FcAtomic
3.20. FcCache
4.1. Initialization
FcInitLoadConfig -- load configuration
FcInitLoadConfigAndFonts -- load configuration and font data
FcInit -- initialize fontconfig library
FcFini -- finalize fontconfig library
FcGetVersion -- library version number
FcInitReinitialize -- re-initialize library
FcInitBringUptoDate -- reload configuration files if needed
4.2. FcPattern
FcPatternCreate -- Create a pattern
FcPatternDuplicate -- Copy a pattern
FcPatternReference -- Increment pattern reference count
FcPatternDestroy -- Destroy a pattern
FcPatternObjectCount -- Returns the number of the object
FcPatternEqual -- Compare patterns
FcPatternEqualSubset -- Compare portions of patterns
FcPatternFilter -- Filter the objects of pattern
FcPatternHash -- Compute a pattern hash value
FcPatternAdd -- Add a value to a pattern
FcPatternAddWeak -- Add a value to a pattern with weak binding
FcPatternAdd-Type -- Add a typed value to a pattern
FcPatternGetWithBinding -- Return a value with binding from a pattern
FcPatternGet -- Return a value from a pattern
FcPatternGet-Type -- Return a typed value from a pattern
FcPatternBuild -- Create patterns from arguments
FcPatternDel -- Delete a property from a pattern
FcPatternRemove -- Remove one object of the specified type from the pattern
FcPatternIterStart -- Initialize the iterator with the first iterator in the pattern
FcPatternIterNext -- 
FcPatternIterEqual -- Compare iterators
FcPatternFindIter -- Set the iterator to point to the object in the pattern
FcPatternIterIsValid -- Check whether the iterator is valid or not
FcPatternIterGetObject -- Returns an object name which the iterator point to
FcPatternIterValueCount -- Returns the number of the values which the iterator point to
FcPatternIterGetValue -- Returns a value which the iterator point to
FcPatternPrint -- Print a pattern for debugging
FcDefaultSubstitute -- Perform default substitutions in a pattern
FcNameParse -- Parse a pattern string
FcNameUnparse -- Convert a pattern back into a string that can be parsed
FcPatternFormat -- Format a pattern into a string according to a format specifier
4.3. FcFontSet
FcFontSetCreate -- Create a font set
FcFontSetDestroy -- Destroy a font set
FcFontSetAdd -- Add to a font set
FcFontSetList -- List fonts from a set of font sets
FcFontSetMatch -- Return the best font from a set of font sets
FcFontSetPrint -- Print a set of patterns to stdout
FcFontSetSort -- Add to a font set
FcFontSetSortDestroy -- DEPRECATED destroy a font set
4.4. FcObjectSet
FcObjectSetCreate -- Create an object set
FcObjectSetAdd -- Add to an object set
FcObjectSetDestroy -- Destroy an object set
FcObjectSetBuild -- Build object set from args
4.5. FreeType specific functions
FcFreeTypeCharIndex -- map Unicode to glyph id
FcFreeTypeCharSet -- compute Unicode coverage
FcFreeTypeCharSetAndSpacing -- compute Unicode coverage and spacing type
FcFreeTypeQuery -- compute pattern from font file (and index)
FcFreeTypeQueryAll -- compute all patterns from font file (and index)
FcFreeTypeQueryFace -- compute pattern from FT_Face
4.6. FcValue
FcValueDestroy -- Free a value
FcValueSave -- Copy a value
FcValuePrint -- Print a value to stdout
FcValueEqual -- Test two values for equality
4.7. FcCharSet
FcCharSetCreate -- Create an empty character set
FcCharSetDestroy -- Destroy a character set
FcCharSetAddChar -- Add a character to a charset
FcCharSetDelChar -- Add a character to a charset
FcCharSetCopy -- Copy a charset
FcCharSetEqual -- Compare two charsets
FcCharSetIntersect -- Intersect charsets
FcCharSetUnion -- Add charsets
FcCharSetSubtract -- Subtract charsets
FcCharSetMerge -- Merge charsets
FcCharSetHasChar -- Check a charset for a char
FcCharSetCount -- Count entries in a charset
FcCharSetIntersectCount -- Intersect and count charsets
FcCharSetSubtractCount -- Subtract and count charsets
FcCharSetIsSubset -- Test for charset inclusion
FcCharSetFirstPage -- Start enumerating charset contents
FcCharSetNextPage -- Continue enumerating charset contents
FcCharSetCoverage -- DEPRECATED return coverage for a Unicode page
FcCharSetNew -- DEPRECATED alias for FcCharSetCreate
4.8. FcLangSet
FcLangSetCreate -- create a langset object
FcLangSetDestroy -- destroy a langset object
FcLangSetCopy -- copy a langset object
FcLangSetAdd -- add a language to a langset
FcLangSetDel -- delete a language from a langset
FcLangSetUnion -- Add langsets
FcLangSetSubtract -- Subtract langsets
FcLangSetCompare -- compare language sets
FcLangSetContains -- check langset subset relation
FcLangSetEqual -- test for matching langsets
FcLangSetHash -- return a hash value for a langset
FcLangSetHasLang -- test langset for language support
FcGetDefaultLangs -- Get the default languages list
FcLangSetGetLangs -- get the list of languages in the langset
FcGetLangs -- Get list of languages
FcLangNormalize -- Normalize the language string
FcLangGetCharSet -- Get character map for a language
4.9. FcMatrix
FcMatrixInit -- initialize an FcMatrix structure
FcMatrixCopy -- Copy a matrix
FcMatrixEqual -- Compare two matrices
FcMatrixMultiply -- Multiply matrices
FcMatrixRotate -- Rotate a matrix
FcMatrixScale -- Scale a matrix
FcMatrixShear -- Shear a matrix
4.10. FcRange
FcRangeCopy -- Copy a range object
FcRangeCreateDouble -- create a range object for double
FcRangeCreateInteger -- create a range object for integer
FcRangeDestroy -- destroy a range object
FcRangeGetDouble -- Get the range in double
4.11. FcConfig
FcConfigCreate -- Create a configuration
FcConfigReference -- Increment config reference count
FcConfigDestroy -- Destroy a configuration
FcConfigSetCurrent -- Set configuration as default
FcConfigGetCurrent -- Return current configuration
FcConfigUptoDate -- Check timestamps on config files
FcConfigHome -- return the current home directory.
FcConfigEnableHome -- controls use of the home directory.
FcConfigBuildFonts -- Build font database
FcConfigGetConfigDirs -- Get config directories
FcConfigGetFontDirs -- Get font directories
FcConfigGetConfigFiles -- Get config files
FcConfigGetCache -- DEPRECATED used to return per-user cache filename
FcConfigGetCacheDirs -- return the list of directories searched for cache files
FcConfigGetFonts -- Get config font set
FcConfigGetBlanks -- Get config blanks
FcConfigGetRescanInterval -- Get config rescan interval
FcConfigSetRescanInterval -- Set config rescan interval
FcConfigAppFontAddFile -- Add font file to font database
FcConfigAppFontAddDir -- Add fonts from directory to font database
FcConfigAppFontClear -- Remove all app fonts from font database
FcConfigSubstituteWithPat -- Execute substitutions
FcConfigSubstitute -- Execute substitutions
FcFontMatch -- Return best font
FcFontSort -- Return list of matching fonts
FcFontRenderPrepare -- Prepare pattern for loading font file
FcFontList -- List fonts
FcConfigFilename -- Find a config file
FcConfigParseAndLoad -- load a configuration file
FcConfigParseAndLoadFromMemory -- load a configuration from memory
FcConfigGetSysRoot -- Obtain the system root directory
FcConfigSetSysRoot -- Set the system root directory
FcConfigFileInfoIterInit -- Initialize the iterator
FcConfigFileInfoIterNext -- Set the iterator to point to the next list
FcConfigFileInfoIterGet -- Obtain the configuration file information
4.12. FcObjectType
FcNameRegisterObjectTypes -- Register object types
FcNameUnregisterObjectTypes -- Unregister object types
FcNameGetObjectType -- Lookup an object type
4.13. FcConstant
FcNameRegisterConstants -- Register symbolic constants
FcNameUnregisterConstants -- Unregister symbolic constants
FcNameGetConstant -- Lookup symbolic constant
FcNameConstant -- Get the value for a symbolic constant
4.14. FcWeight
FcWeightFromOpenTypeDouble -- Convert from OpenType weight values to fontconfig ones
FcWeightToOpenTypeDouble -- Convert from fontconfig weight values to OpenType ones
FcWeightFromOpenType -- Convert from OpenType weight values to fontconfig ones
FcWeightToOpenType -- Convert from fontconfig weight values to OpenType ones
4.15. FcBlanks
FcBlanksCreate -- Create an FcBlanks
FcBlanksDestroy -- Destroy and FcBlanks
FcBlanksAdd -- Add a character to an FcBlanks
FcBlanksIsMember -- Query membership in an FcBlanks
4.16. FcAtomic
FcAtomicCreate -- create an FcAtomic object
FcAtomicLock -- lock a file
FcAtomicNewFile -- return new temporary file name
FcAtomicOrigFile -- return original file name
FcAtomicReplaceOrig -- replace original with new
FcAtomicDeleteNew -- delete new file
FcAtomicUnlock -- unlock a file
FcAtomicDestroy -- destroy an FcAtomic object
4.17. File and Directory routines
FcFileScan -- scan a font file
FcFileIsDir -- check whether a file is a directory
FcDirScan -- scan a font directory without caching it
FcDirSave -- DEPRECATED: formerly used to save a directory cache
FcDirCacheUnlink -- Remove all caches related to dir
FcDirCacheValid -- check directory cache
FcDirCacheLoad -- load a directory cache
FcDirCacheRescan -- Re-scan a directory cache
FcDirCacheRead -- read or construct a directory cache
FcDirCacheLoadFile -- load a cache file
FcDirCacheUnload -- unload a cache file
4.18. FcCache routines
FcCacheDir -- Return directory of cache
FcCacheCopySet -- Returns a copy of the fontset from cache
FcCacheSubdir -- Return the i'th subdirectory.
FcCacheNumSubdir -- Return the number of subdirectories in cache.
FcCacheNumFont -- Returns the number of fonts in cache.
FcDirCacheClean -- Clean up a cache directory
FcCacheCreateTagFile -- Create CACHEDIR.TAG at cache directory.
FcDirCacheCreateUUID -- Create .uuid file at a directory
FcDirCacheDeleteUUID -- Delete .uuid file
4.19. FcStrSet and FcStrList
FcStrSetCreate -- create a string set
FcStrSetMember -- check set for membership
FcStrSetEqual -- check sets for equality
FcStrSetAdd -- add to a string set
FcStrSetAddFilename -- add a filename to a string set
FcStrSetDel -- delete from a string set
FcStrSetDestroy -- destroy a string set
FcStrListCreate -- create a string iterator
FcStrListFirst -- get first string in iteration
FcStrListNext -- get next string in iteration
FcStrListDone -- destroy a string iterator
4.20. String utilities
FcUtf8ToUcs4 -- convert UTF-8 to UCS4
FcUcs4ToUtf8 -- convert UCS4 to UTF-8
FcUtf8Len -- count UTF-8 encoded chars
FcUtf16ToUcs4 -- convert UTF-16 to UCS4
FcUtf16Len -- count UTF-16 encoded chars
FcIsLower -- check for lower case ASCII character
FcIsUpper -- check for upper case ASCII character
FcToLower -- convert upper case ASCII to lower case
FcStrCopy -- duplicate a string
FcStrDowncase -- create a lower case translation of a string
FcStrCopyFilename -- create a complete path from a filename
FcStrCmp -- compare UTF-8 strings
FcStrCmpIgnoreCase -- compare UTF-8 strings ignoring case
FcStrStr -- locate UTF-8 substring
FcStrStrIgnoreCase -- locate UTF-8 substring ignoring ASCII case
FcStrPlus -- concatenate two strings
FcStrFree -- free a string
FcStrDirname -- directory part of filename
FcStrBasename -- last component of filename


Fontconfig is a library designed to provide system-wide font configuration, customization and application access.