]> git.wh0rd.org - fontconfig.git/blobdiff - doc/fontconfig-devel.sgml
Link new function documentation into the fontconfig-devel.sgml
[fontconfig.git] / doc / fontconfig-devel.sgml
index 5bad9a5c555892fba1d485063be4b07ed607d58c..8231b3f06734a63a3961b3060080c9f32ded63b8 100644 (file)
@@ -1,13 +1,16 @@
 <!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook V3.1//EN" [
 <!ENTITY fcatomic SYSTEM "fcatomic.sgml">
 <!ENTITY fcblanks SYSTEM "fcblanks.sgml">
+<!ENTITY fccache SYSTEM "fccache.sgml">
 <!ENTITY fccharset SYSTEM "fccharset.sgml">
 <!ENTITY fcconfig SYSTEM "fcconfig.sgml">
 <!ENTITY fcconstant SYSTEM "fcconstant.sgml">
+<!ENTITY fcdircache SYSTEM "fcdircache.sgml">
 <!ENTITY fcfile SYSTEM "fcfile.sgml">
 <!ENTITY fcfontset SYSTEM "fcfontset.sgml">
 <!ENTITY fcfreetype SYSTEM "fcfreetype.sgml">
 <!ENTITY fcinit SYSTEM "fcinit.sgml">
+<!ENTITY fclangset SYSTEM "fclangset.sgml">
 <!ENTITY fcmatrix SYSTEM "fcmatrix.sgml">
 <!ENTITY fcobjectset SYSTEM "fcobjectset.sgml">
 <!ENTITY fcobjecttype SYSTEM "fcobjecttype.sgml">
@@ -178,7 +181,7 @@ convenience for the applications rendering mechanism.
                                                 spacing
     charset        FC_CHARSET           CharSet Unicode chars encoded by
                                                 the font
-    lang           FC_LANG              String  List of RFC-3066-style
+    lang           FC_LANG              LangSet Set of RFC-3066-style
                                                 languages this font supports
     fontversion    FC_FONTVERSION       Int     Version number of the font
     capability     FC_CAPABILITY        String  List of layout capabilities in
@@ -217,6 +220,26 @@ An FcCharSet is an abstract type that holds the set of encoded unicode chars
 in a font.  Operations to build and compare these sets are provided.
     </para>
   </sect2>
+  <sect2><title>FcLangSet</title>
+    <para>
+An FcLangSet is an abstract type that holds the set of languages supported
+by a font.  Operations to build and compare these sets are provided. These
+are computed for a font based on orthographic information built into the
+fontconfig library. Fontconfig has orthographies for all of the ISO 639-1
+languages except for MS, NA, PA, PS, QU, RN, RW, SD, SG, SN, SU and ZA. If
+you have orthographic information for any of these languages, please submit
+them.
+    </para>
+  </sect2>
+  <sect2><title>FcLangResult</title>
+    <para>
+An FcLangResult is an enumeration used to return the results of comparing
+two language strings or FcLangSet objects. FcLangEqual means the
+objects match language and territory. FcLangDifferentTerritory means
+the objects match in language but differ in territory.
+FcLangDifferentLang means the objects differ in language.
+    </para>
+  </sect2>
   <sect2><title>FcType</title>
     <para>
 Tags the kind of data stored in an FcValue.
@@ -236,6 +259,8 @@ types.  The 'type' tag indicates which member is valid.
                         double d;
                         const FcMatrix *m;
                         const FcCharSet *c;
+                       void *f;
+                       const FcLangSet *l;
                 } u;
         } FcValue;
     </programlisting>
@@ -247,10 +272,12 @@ types.  The 'type' tag indicates which member is valid.
         FcTypeVoid      (none)          (none)
         FcTypeInteger   i               int
         FcTypeDouble    d               double
-        FcTypeString    s               char *
+        FcTypeString    s               FcChar8 *
         FcTypeBool      b               b
         FcTypeMatrix    m               FcMatrix *
         FcTypeCharSet   c               FcCharSet *
+       FcTypeFTFace    f               void * (FT_Face)
+       FcTypeLangSet   l               FcLangSet *
     </programlisting>
     </para>
   </sect2>
@@ -382,6 +409,15 @@ Used for locking access to config files.  Provides a safe way to update
 configuration files.
     </para>
   </sect2>
+  <sect2><title>FcCache</title>
+    <para>
+Holds information about the fonts contained in a single directory. Normal
+applications need not worry about this as caches for font access are
+automatically managed by the library. Applications dealing with cache
+management may want to use some of these objects in their work, however the
+included 'fc-cache' program generally suffices for all of that.
+    </para>
+  </sect2>
 </sect1>
 <sect1><title>FUNCTIONS</title>
   <para>
@@ -444,6 +480,16 @@ return it's argument, and that CharSet may remain unmodifiable.
     </para>
     &fccharset;
   </sect2>
+  <sect2><title>FcLangSet</title>
+    <para>
+An FcLangSet is a set of language names (each of which include language and
+an optional territory). They are used when selecting fonts to indicate which
+languages the fonts need to support. Each font is marked, using language
+orthography information built into fontconfig, with the set of supported
+languages.
+    </para>
+    &fclangset;
+  </sect2>
   <sect2><title>FcMatrix</title>
     <para>
 FcMatrix structures hold an affine transformation in matrix form.
@@ -495,6 +541,15 @@ These routines work with font files and directories, including font
 directory cache files.
     </para>
     &fcfile;
+    &fcdircache;
+  </sect2>
+  <sect2><title>FcCache routines</title>
+    <para>
+These routines work with font directory caches, accessing their contents in
+limited ways. It is not expected that normal applications will need to use
+these functions.
+    </para>
+    &fccache;
   </sect2>
   <sect2><title>FcStrSet and FcStrList</title>
     <para>