/*
- * $Id$
+ * fontconfig/doc/fcpattern.fncs
*
* Copyright © 2003 Keith Packard
*
@RET@ FcPattern *
@FUNC@ FcPatternDuplicate
-@TYPE1@ FcPattern * @ARG1@ p
+@TYPE1@ const FcPattern * @ARG1@ p
@PURPOSE@ Copy a pattern
@DESC@
Copy a pattern, returning a new pattern that matches
objects in <parameter>os</parameter>.
@@
+@RET@ FcPattern *
+@FUNC@ FcPatternFilter
+@TYPE1@ FcPattern * @ARG1@ p
+@TYPE2@ const FcObjectSet * @ARG1@ os
+@PURPOSE@ Filter the objects of pattern
+@DESC@
+Returns a new pattern that only has those objects from
+<parameter>p</parameter> that are in <parameter>os</parameter>.
+If <parameter>os</parameter> is NULL, a duplicate of
+<parameter>p</parameter> is returned.
+@@
+
@RET@ FcChar32
@FUNC@ FcPatternHash
@TYPE1@ const FcPattern * @ARG1@ p
@TYPE4+++++@ FcBool * @ARG4+++++@ b
@PROTOTYPE++++++@
-@RET++++++@ FcBool
+@RET++++++@ FcResult
@FUNC++++++@ FcPatternGetFTFace
@TYPE1++++++@ FcPattern * @ARG1++++++@ p
@TYPE2++++++@ const char * @ARG2++++++@ object
-@TYPE3++++++@ const FT_Face * @ARG3++++++@ f
+@TYPE3+++++@ int% @ARG3+++++@ n
+@TYPE3++++++@ FT_Face * @ARG3++++++@ f
@PROTOTYPE+++++++@
-@RET+++++++@ FcBool
+@RET+++++++@ FcResult
@FUNC+++++++@ FcPatternGetLangSet
@TYPE1+++++++@ FcPattern * @ARG1+++++++@ p
@TYPE2+++++++@ const char * @ARG2+++++++@ object
-@TYPE3+++++++@ const FcLangSet ** @ARG3+++++++@ l
+@TYPE3+++++@ int% @ARG3+++++@ n
+@TYPE3+++++++@ FcLangSet ** @ARG3+++++++@ l
@PURPOSE@ Return a typed value from a pattern
@DESC@
@RET@ FcPattern *
@FUNC@ FcPatternBuild
-@TYPE1@ FcPattern * @ARG1@ orig
+@TYPE1@ FcPattern * @ARG1@ pattern
@TYPE2@ ...
@PROTOTYPE+@
@RET+@ FcPattern *
@FUNC+@ FcPatternVaBuild
-@TYPE1+@ FcPattern * @ARG1+@ orig
+@TYPE1+@ FcPattern * @ARG1+@ pattern
@TYPE2+@ va_list% @ARG2+@ va
+
+@PROTOTYPE++@
+@RET++@ void
+@FUNC++@ FcPatternVapBuild
+@TYPE1++@ FcPattern * @ARG1++@ result
+@TYPE2++@ FcPattern * @ARG2++@ pattern
+@TYPE3++@ va_list% @ARG3++@ va
+
@PURPOSE@ Create patterns from arguments
@DESC@
Builds a pattern using a list of objects, types and values. Each
</programlisting>
<para>
FcPatternVaBuild is used when the arguments are already in the form of a
-varargs value.
+varargs value. FcPatternVapBuild is a macro version of FcPatternVaBuild
+which returns its result directly in the <parameter>result</parameter>
+variable.
@@
@RET@ FcBool
@DESC@
Converts the given pattern into the standard text format described above.
The return value is not static, but instead refers to newly allocated memory
-which should be freed by the caller.
+which should be freed by the caller using free().
+@@
+
+@RET@ FcChar8 *
+@FUNC@ FcPatternFormat
+@TYPE1@ FcPattern * @ARG1@ pat
+@TYPE2@ const FcChar8 * @ARG2@ format
+@PURPOSE@ Format a pattern into a string according to a format specifier
+@DESC@
+
+Converts the given pattern into text format described by the format specifier.
+The format specifier is similar to a C style printf string, which the
+printf(2) man page provides a good introduction to. However, as fontconfig
+already knows the type of data that is being printed, you must omit the type
+specifier. In its place put the element name you wish to print enclosed in
+curly braces ({}). For example, to print the family name and style the
+pattern, use the format "%{family} %{style}\n".
+There can be an option width specifier after the percent sign and before
+the opening brace. The width modifier acts similar to those in printf.
+The return value refers to newly allocated memory which should be freed by the
+caller using free().
@@