<!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 fcformat SYSTEM "fcformat.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
representations about the suitability of this software for any purpose. It
is provided "as is" without express or implied warranty.
- KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
- EVENT SHALL KEITH PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
<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
representations about the suitability of this software for any purpose. It
is provided "as is" without express or implied warranty.
</simpara><simpara>
-KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
-EVENT SHALL KEITH PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
<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
- spacing FC_SPACING Int Proportional, monospace or
- charcell
+ spacing FC_SPACING Int Proportional, dual-width,
+ monospace or charcell
foundry FC_FOUNDRY String Font foundry name
antialias FC_ANTIALIAS Bool Whether glyphs can be
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>
available fonts, as well as the information about each font.
</para>
&fcpattern;
+ &fcformat;
</sect2>
<sect2><title>FcFontSet</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.
<para>
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>