FcPatternBuild, FcPatternVaBuild, FcPatternVapBuild -- Create patterns from arguments


#include <fontconfig/fontconfig.h>

FcPattern * FcPatternBuild(FcPattern *pattern, ...);

FcPattern * FcPatternVaBuild(FcPattern *pattern, va_list va);

void FcPatternVapBuild(FcPattern *result, FcPattern *pattern, va_list va);


Builds a pattern using a list of objects, types and values. Each value to be entered in the pattern is specified with three arguments:

  1. Object name, a string describing the property to be added.

  2. Object type, one of the FcType enumerated values

  3. Value, not an FcValue, but the raw type as passed to any of the FcPatternAdd<type> functions. Must match the type of the second argument.

The argument list is terminated by a null object name, no object type nor value need be passed for this. The values are added to `pattern', if `pattern' is null, a new pattern is created. In either case, the pattern is returned. Example

pattern = FcPatternBuild (0, FC_FAMILY, FcTypeString, "Times", (char *) 0);

FcPatternVaBuild is used when the arguments are already in the form of a varargs value. FcPatternVapBuild is a macro version of FcPatternVaBuild which returns its result directly in the result variable.