.\" This manpage has been automatically generated by docbook2man
.\" from a DocBook document. This tool can be found at:
.\"
.\" Please send any bug reports, improvements, comments, patches,
.\" etc. to Steve Cheng .
.TH "FcPatternBuild" "3" "2022/03/31" "Fontconfig 2.14.0" ""
.SH NAME
FcPatternBuild, FcPatternVaBuild, FcPatternVapBuild \- Create patterns from arguments
.SH SYNOPSIS
.sp
\fB#include
.sp
FcPattern * FcPatternBuild (FcPattern *\fIpattern\fB, \&...\fI\fB);
.sp
FcPattern * FcPatternVaBuild (FcPattern *\fIpattern\fB, va_list \fIva\fB);
.sp
void FcPatternVapBuild (FcPattern *\fIresult\fB, FcPattern *\fIpattern\fB, va_list \fIva\fB);
\fR
.SH "DESCRIPTION"
.PP
Builds a pattern using a list of objects, types and values. Each
value to be entered in the pattern is specified with three arguments:
.TP 3
1.
Object name, a string describing the property to be added.
.TP 3
2.
Object type, one of the FcType enumerated values
.TP 3
3.
Value, not an FcValue, but the raw type as passed to any of the
FcPatternAdd functions. Must match the type of the second
argument.
.PP
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
.nf
pattern = FcPatternBuild (0, FC_FAMILY, FcTypeString, "Times", (char *) 0);
.fi
.PP
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 \fIresult\fR
variable.