<!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">
<!ENTITY version SYSTEM "version.sgml">
]>
<!--
- $Id$
+ fontconfig/doc/local-fontconfig-devel.sgml
- Copyright © 2003 Keith Packard
+ Copyright © 2003 Keith Packard
Permission to use, copy, modify, distribute, and sell this software and its
documentation for any purpose is hereby granted without fee, provided that
<productnumber>&version;</productnumber>
<LegalNotice>
<simpara>
-Copyright © 2002 Keith Packard
+Copyright © 2002 Keith Packard
</simpara><simpara>
Permission to use, copy, modify, distribute, and sell this software and its
documentation for any purpose is hereby granted without fee, provided that
<programlisting>
Property Definitions
- Property CPP Symbol Type Description
+ Property CPP Symbol Type Description
----------------------------------------------------
- family FC_FAMILY String Font family name
+ family FC_FAMILY String Font family names
+ familylang FC_FAMILYLANG String Language cooresponding to
+ each family name
style FC_STYLE String Font style. Overrides weight
and slant
+ stylelang FC_STYLELANG String Language cooresponding to
+ each style name
+ fullname FC_FULLNAME String Font face full name where
+ different from family and
+ family + style
+ fullnamelang FC_FULLNAMELANG String Language cooresponding to
+ each fullname
slant FC_SLANT Int Italic, oblique or roman
weight FC_WEIGHT Int Light, medium, demibold,
bold or black
size FC_SIZE Double Point size
+ width FC_WIDTH Int Condensed, normal or expanded
aspect FC_ASPECT Double Stretches glyphs horizontally
before hinting
pixelsize FC_PIXEL_SIZE Double Pixel size
antialiased
hinting FC_HINTING Bool Whether the rasterizer should
use hinting
+ hintstyle FC_HINT_STYLE Int Automatic hinting style
verticallayout FC_VERTICAL_LAYOUT Bool Use vertical layout
autohint FC_AUTOHINT Bool Use autohinter instead of
normal hinter
dpi FC_DPI Double Target dots per inch
rgba FC_RGBA Int unknown, rgb, bgr, vrgb,
vbgr, none - subpixel geometry
+ lcdfilter FC_LCD_FILTER Int Type of LCD filter
minspace FC_MINSPACE Bool Eliminate leading from line
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
+ the font
+ embolden FC_EMBOLDEN Bool Rasterizer should
+ synthetically embolden the font
</programlisting>
</sect2>
</sect1>
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.
double d;
const FcMatrix *m;
const FcCharSet *c;
+ void *f;
+ const FcLangSet *l;
} u;
} FcValue;
</programlisting>
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>
FcResultTypeMismatch Object exists, but the type doesn't match
FcResultNoId Object exists, but has fewer values
than specified
+ FcResultOutOfMemory Malloc failed
</programlisting>
</para>
</sect2>
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>
</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.
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>