2003-03-07 20:01:41 +01:00
|
|
|
/*
|
|
|
|
* $Id$
|
|
|
|
*
|
2004-12-07 02:14:46 +01:00
|
|
|
* Copyright © 2003 Keith Packard
|
2003-03-07 20:01:41 +01:00
|
|
|
*
|
|
|
|
* Permission to use, copy, modify, distribute, and sell this software and its
|
|
|
|
* documentation for any purpose is hereby granted without fee, provided that
|
|
|
|
* the above copyright notice appear in all copies and that both that
|
|
|
|
* copyright notice and this permission notice appear in supporting
|
|
|
|
* documentation, and that the name of Keith Packard not be used in
|
|
|
|
* advertising or publicity pertaining to distribution of the software without
|
|
|
|
* specific, written prior permission. Keith Packard makes no
|
|
|
|
* 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,
|
|
|
|
* INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
|
|
|
|
* EVENT SHALL KEITH PACKARD 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
|
|
|
|
* PERFORMANCE OF THIS SOFTWARE.
|
|
|
|
*/
|
|
|
|
|
|
|
|
@SYNOPSIS@
|
|
|
|
#include <fontconfig.h>
|
|
|
|
#include <fcfreetype.h>
|
|
|
|
@RET@ FT_UInt
|
|
|
|
@FUNC@ FcFreeTypeCharIndex
|
2006-12-03 00:06:13 +01:00
|
|
|
@TYPE1@ FT_Face% @ARG1@ face
|
|
|
|
@TYPE2@ FcChar32% @ARG2@ ucs4
|
2003-03-07 20:01:41 +01:00
|
|
|
@PURPOSE@ map Unicode to glyph id
|
|
|
|
@DESC@
|
|
|
|
Maps a Unicode char to a glyph index. This function uses information from
|
|
|
|
several possible underlying encoding tables to work around broken fonts.
|
|
|
|
As a result, this function isn't designed to be used in performance
|
|
|
|
sensitive areas; results from this function are intended to be cached by
|
|
|
|
higher level functions.
|
|
|
|
@@
|
|
|
|
|
|
|
|
@SYNOPSIS@
|
|
|
|
#include <fontconfig.h>
|
|
|
|
#include <fcfreetype.h>
|
|
|
|
@RET@ FcCharSet *
|
|
|
|
@FUNC@ FcFreeTypeCharSet
|
2006-12-03 00:06:13 +01:00
|
|
|
@TYPE1@ FT_Face% @ARG1@ face
|
2003-03-07 20:01:41 +01:00
|
|
|
@TYPE2@ FcBlanks * @ARG2@ blanks
|
|
|
|
@PURPOSE@ compute unicode coverage
|
|
|
|
@DESC@
|
|
|
|
Scans a FreeType face and returns the set of encoded Unicode chars. This scans
|
|
|
|
several encoding tables to build as complete a list as possible.
|
|
|
|
If 'blanks' is not 0, the glyphs in the font are examined and any blank glyphs
|
|
|
|
not in 'blanks' are not placed in the returned FcCharSet.
|
|
|
|
@@
|
|
|
|
|
|
|
|
@SYNOPSIS@
|
|
|
|
#include <fontconfig.h>
|
2007-11-04 06:23:28 +01:00
|
|
|
#include <fcfreetype.h>
|
|
|
|
@RET@ FcCharSet *
|
|
|
|
@FUNC@ FcFreeTypeCharSetAndSpacing
|
|
|
|
@TYPE1@ FT_Face% @ARG1@ face
|
|
|
|
@TYPE2@ FcBlanks * @ARG2@ blanks
|
|
|
|
@TYPE3@ int * @ARG3@ spacing
|
|
|
|
@PURPOSE@ compute unicode coverage and spacing type
|
|
|
|
@DESC@
|
|
|
|
Scans a FreeType face and returns the set of encoded Unicode chars.
|
|
|
|
This scans
|
|
|
|
several encoding tables to build as complete a list as possible.
|
|
|
|
If 'blanks' is not 0, the glyphs in the font are examined and any blank glyphs
|
|
|
|
not in 'blanks' are not placed in the returned FcCharSet.
|
|
|
|
<parameter>spacing</parameter> receives the computed spacing type of the
|
|
|
|
font, one of FC_MONO for a font where all glyphs have the same width,
|
|
|
|
FC_DUAL, where the font has glyphs in precisely two widths, one twice as
|
|
|
|
wide as the other, or FC_PROPORTIONAL where the font has glyphs of many
|
|
|
|
widths.
|
|
|
|
@@
|
|
|
|
|
|
|
|
@SYNOPSIS@
|
|
|
|
#include <fontconfig.h>
|
2003-03-07 20:01:41 +01:00
|
|
|
#include <fcfreetype.h>
|
|
|
|
@RET@ FcPattern *
|
|
|
|
@FUNC@ FcFreeTypeQuery
|
|
|
|
@TYPE1@ const char * @ARG1@ file
|
2006-12-03 00:06:13 +01:00
|
|
|
@TYPE2@ int% @ARG2@ id
|
2003-03-07 20:01:41 +01:00
|
|
|
@TYPE3@ FcBlanks * @ARG3@ blanks
|
|
|
|
@TYPE4@ int * @ARG4@ count
|
2006-12-02 22:22:27 +01:00
|
|
|
@PURPOSE@ compute pattern from font file (and index)
|
2003-03-07 20:01:41 +01:00
|
|
|
@DESC@
|
|
|
|
Constructs a pattern representing the 'id'th font in 'file'. The number
|
|
|
|
of fonts in 'file' is returned in 'count'.
|
|
|
|
@@
|
2006-12-02 22:22:27 +01:00
|
|
|
|
|
|
|
@SYNOPSIS@
|
|
|
|
#include <fontconfig.h>
|
|
|
|
#include <fcfreetype.h>
|
|
|
|
@RET@ FcPattern *
|
|
|
|
@FUNC@ FcFreeTypeQueryFace
|
2006-12-03 00:06:13 +01:00
|
|
|
@TYPE1@ const FT_Face% @ARG1@ face
|
2006-12-02 22:22:27 +01:00
|
|
|
@TYPE2@ const char * @ARG2@ file
|
2006-12-03 00:06:13 +01:00
|
|
|
@TYPE3@ int% @ARG3@ id
|
2006-12-02 22:22:27 +01:00
|
|
|
@TYPE4@ FcBlanks * @ARG4@ blanks
|
|
|
|
@PURPOSE@ compute pattern from FT_Face
|
|
|
|
@DESC@
|
|
|
|
Constructs a pattern representing 'face'. 'file' and 'id' are used solely as
|
|
|
|
data for pattern elements (FC_FILE, FC_INDEX and sometimes FC_FAMILY).
|
|
|
|
@@
|