diff options
Diffstat (limited to 'libs/cairo-1.16.0/doc/public/xml/cairo-ft.xml')
-rw-r--r-- | libs/cairo-1.16.0/doc/public/xml/cairo-ft.xml | 408 |
1 files changed, 408 insertions, 0 deletions
diff --git a/libs/cairo-1.16.0/doc/public/xml/cairo-ft.xml b/libs/cairo-1.16.0/doc/public/xml/cairo-ft.xml new file mode 100644 index 0000000..e68e2ad --- /dev/null +++ b/libs/cairo-1.16.0/doc/public/xml/cairo-ft.xml @@ -0,0 +1,408 @@ +<?xml version='1.0' encoding='UTF-8'?> +<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" + "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd" [ +<!ENTITY version SYSTEM "version.xml"> +]> +<refentry id="cairo-FreeType-Fonts"> +<refmeta> +<refentrytitle role="top_of_page" id="cairo-FreeType-Fonts.top_of_page">FreeType Fonts</refentrytitle> +<manvolnum>3</manvolnum> +<refmiscinfo>CAIRO Library</refmiscinfo> +</refmeta> +<refnamediv> +<refname>FreeType Fonts</refname> +<refpurpose>Font support for FreeType</refpurpose> +</refnamediv> + +<refsect1 id="cairo-FreeType-Fonts.functions" role="functions_proto"> +<title role="functions_proto.title">Functions</title> +<informaltable pgwide="1" frame="none"> +<tgroup cols="2"> +<colspec colname="functions_return" colwidth="150px"/> +<colspec colname="functions_name"/> +<tbody> +<row><entry role="function_type"><link linkend="cairo-font-face-t"><returnvalue>cairo_font_face_t</returnvalue></link> * +</entry><entry role="function_name"><link linkend="cairo-ft-font-face-create-for-ft-face">cairo_ft_font_face_create_for_ft_face</link> <phrase role="c_punctuation">()</phrase></entry></row> +<row><entry role="function_type"><link linkend="cairo-font-face-t"><returnvalue>cairo_font_face_t</returnvalue></link> * +</entry><entry role="function_name"><link linkend="cairo-ft-font-face-create-for-pattern">cairo_ft_font_face_create_for_pattern</link> <phrase role="c_punctuation">()</phrase></entry></row> +<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link> +</entry><entry role="function_name"><link linkend="cairo-ft-font-options-substitute">cairo_ft_font_options_substitute</link> <phrase role="c_punctuation">()</phrase></entry></row> +<row><entry role="function_type"><link linkend="FT-Face"><returnvalue>FT_Face</returnvalue></link> +</entry><entry role="function_name"><link linkend="cairo-ft-scaled-font-lock-face">cairo_ft_scaled_font_lock_face</link> <phrase role="c_punctuation">()</phrase></entry></row> +<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link> +</entry><entry role="function_name"><link linkend="cairo-ft-scaled-font-unlock-face">cairo_ft_scaled_font_unlock_face</link> <phrase role="c_punctuation">()</phrase></entry></row> +<row><entry role="function_type">unsigned <link linkend="int"><returnvalue>int</returnvalue></link> +</entry><entry role="function_name"><link linkend="cairo-ft-font-face-get-synthesize">cairo_ft_font_face_get_synthesize</link> <phrase role="c_punctuation">()</phrase></entry></row> +<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link> +</entry><entry role="function_name"><link linkend="cairo-ft-font-face-set-synthesize">cairo_ft_font_face_set_synthesize</link> <phrase role="c_punctuation">()</phrase></entry></row> +<row><entry role="function_type"><link linkend="void"><returnvalue>void</returnvalue></link> +</entry><entry role="function_name"><link linkend="cairo-ft-font-face-unset-synthesize">cairo_ft_font_face_unset_synthesize</link> <phrase role="c_punctuation">()</phrase></entry></row> + +</tbody> +</tgroup> +</informaltable> +</refsect1> +<refsect1 id="cairo-FreeType-Fonts.other" role="other_proto"> +<title role="other_proto.title">Types and Values</title> +<informaltable role="enum_members_table" pgwide="1" frame="none"> +<tgroup cols="2"> +<colspec colname="name" colwidth="150px"/> +<colspec colname="description"/> +<tbody> +<row><entry role="define_keyword">#define</entry><entry role="function_name"><link linkend="CAIRO-HAS-FT-FONT:CAPS">CAIRO_HAS_FT_FONT</link></entry></row> +<row><entry role="define_keyword">#define</entry><entry role="function_name"><link linkend="CAIRO-HAS-FC-FONT:CAPS">CAIRO_HAS_FC_FONT</link></entry></row> +<row><entry role="datatype_keyword">enum</entry><entry role="function_name"><link linkend="cairo-ft-synthesize-t">cairo_ft_synthesize_t</link></entry></row> + +</tbody> +</tgroup> +</informaltable> +</refsect1> + + +<refsect1 id="cairo-FreeType-Fonts.description" role="desc"> +<title role="desc.title">Description</title> +<para>The FreeType font backend is primarily used to render text on GNU/Linux +systems, but can be used on other platforms too.</para> + +</refsect1> +<refsect1 id="cairo-FreeType-Fonts.functions_details" role="details"> +<title role="details.title">Functions</title> +<refsect2 id="cairo-ft-font-face-create-for-ft-face" role="function" condition="since:1.0"> +<title>cairo_ft_font_face_create_for_ft_face ()</title> +<indexterm zone="cairo-ft-font-face-create-for-ft-face" role="1.0"><primary sortas="ft_font_face_create_for_ft_face">cairo_ft_font_face_create_for_ft_face</primary></indexterm> +<programlisting language="C"><link linkend="cairo-font-face-t"><returnvalue>cairo_font_face_t</returnvalue></link> * +cairo_ft_font_face_create_for_ft_face (<parameter><link linkend="FT-Face"><type>FT_Face</type></link> face</parameter>, + <parameter><link linkend="int"><type>int</type></link> load_flags</parameter>);</programlisting> +<para>Creates a new font face for the FreeType font backend from a +pre-opened FreeType face. This font can then be used with +<link linkend="cairo-set-font-face"><function>cairo_set_font_face()</function></link> or <link linkend="cairo-scaled-font-create"><function>cairo_scaled_font_create()</function></link>. The +<link linkend="cairo-scaled-font-t"><type>cairo_scaled_font_t</type></link> returned from <link linkend="cairo-scaled-font-create"><function>cairo_scaled_font_create()</function></link> is +also for the FreeType backend and can be used with functions such +as <link linkend="cairo-ft-scaled-font-lock-face"><function>cairo_ft_scaled_font_lock_face()</function></link>. Note that Cairo may keep a reference +to the FT_Face alive in a font-cache and the exact lifetime of the reference +depends highly upon the exact usage pattern and is subject to external +factors. You must not call <link linkend="FT-Done-Face"><function>FT_Done_Face()</function></link> before the last reference to the +<link linkend="cairo-font-face-t"><type>cairo_font_face_t</type></link> has been dropped.</para> +<para>As an example, below is how one might correctly couple the lifetime of +the FreeType face object to the <link linkend="cairo-font-face-t"><type>cairo_font_face_t</type></link>.</para> +<informalexample><programlisting> +static const cairo_user_data_key_t key; + +font_face = cairo_ft_font_face_create_for_ft_face (ft_face, 0); +status = cairo_font_face_set_user_data (font_face, &key, + ft_face, (cairo_destroy_func_t) FT_Done_Face); +if (status) { + cairo_font_face_destroy (font_face); + FT_Done_Face (ft_face); + return ERROR; +} +</programlisting></informalexample> +<refsect3 id="cairo-ft-font-face-create-for-ft-face.parameters" role="parameters"> +<title>Parameters</title> +<informaltable role="parameters_table" pgwide="1" frame="none"> +<tgroup cols="3"> +<colspec colname="parameters_name" colwidth="150px"/> +<colspec colname="parameters_description"/> +<colspec colname="parameters_annotations" colwidth="200px"/> +<tbody> +<row><entry role="parameter_name"><para>face</para></entry> +<entry role="parameter_description"><para>A FreeType face object, already opened. This must +be kept around until the face's ref_count drops to +zero and it is freed. Since the face may be referenced +internally to Cairo, the best way to determine when it +is safe to free the face is to pass a +<link linkend="cairo-destroy-func-t"><type>cairo_destroy_func_t</type></link> to <link linkend="cairo-font-face-set-user-data"><function>cairo_font_face_set_user_data()</function></link></para></entry> +<entry role="parameter_annotations"></entry></row> +<row><entry role="parameter_name"><para>load_flags</para></entry> +<entry role="parameter_description"><para>flags to pass to FT_Load_Glyph when loading +glyphs from the font. These flags are OR'ed together with +the flags derived from the <link linkend="cairo-font-options-t"><type>cairo_font_options_t</type></link> passed +to <link linkend="cairo-scaled-font-create"><function>cairo_scaled_font_create()</function></link>, so only a few values such +as <link linkend="FT-LOAD-VERTICAL-LAYOUT:CAPS"><literal>FT_LOAD_VERTICAL_LAYOUT</literal></link>, and <link linkend="FT-LOAD-FORCE-AUTOHINT:CAPS"><literal>FT_LOAD_FORCE_AUTOHINT</literal></link> +are useful. You should not pass any of the flags affecting +the load target, such as <link linkend="FT-LOAD-TARGET-LIGHT:CAPS"><literal>FT_LOAD_TARGET_LIGHT</literal></link>.</para></entry> +<entry role="parameter_annotations"></entry></row> +</tbody></tgroup></informaltable> +</refsect3><refsect3 id="cairo-ft-font-face-create-for-ft-face.returns" role="returns"> +<title>Returns</title> +<para> a newly created <link linkend="cairo-font-face-t"><type>cairo_font_face_t</type></link>. Free with +<link linkend="cairo-font-face-destroy"><function>cairo_font_face_destroy()</function></link> when you are done using it.</para> +</refsect3><para role="since">Since: <link linkend="api-index-1.0">1.0</link></para></refsect2> +<refsect2 id="cairo-ft-font-face-create-for-pattern" role="function" condition="since:1.0"> +<title>cairo_ft_font_face_create_for_pattern ()</title> +<indexterm zone="cairo-ft-font-face-create-for-pattern" role="1.0"><primary sortas="ft_font_face_create_for_pattern">cairo_ft_font_face_create_for_pattern</primary></indexterm> +<programlisting language="C"><link linkend="cairo-font-face-t"><returnvalue>cairo_font_face_t</returnvalue></link> * +cairo_ft_font_face_create_for_pattern (<parameter><link linkend="FcPattern"><type>FcPattern</type></link> *pattern</parameter>);</programlisting> +<para>Creates a new font face for the FreeType font backend based on a +fontconfig pattern. This font can then be used with +<link linkend="cairo-set-font-face"><function>cairo_set_font_face()</function></link> or <link linkend="cairo-scaled-font-create"><function>cairo_scaled_font_create()</function></link>. The +<link linkend="cairo-scaled-font-t"><type>cairo_scaled_font_t</type></link> returned from <link linkend="cairo-scaled-font-create"><function>cairo_scaled_font_create()</function></link> is +also for the FreeType backend and can be used with functions such +as <link linkend="cairo-ft-scaled-font-lock-face"><function>cairo_ft_scaled_font_lock_face()</function></link>.</para> +<para>Font rendering options are represented both here and when you +call <link linkend="cairo-scaled-font-create"><function>cairo_scaled_font_create()</function></link>. Font options that have a representation +in a <link linkend="FcPattern"><type>FcPattern</type></link> must be passed in here; to modify <link linkend="FcPattern"><type>FcPattern</type></link> +appropriately to reflect the options in a <link linkend="cairo-font-options-t"><type>cairo_font_options_t</type></link>, call +<link linkend="cairo-ft-font-options-substitute"><function>cairo_ft_font_options_substitute()</function></link>.</para> +<para>The pattern's FC_FT_FACE element is inspected first and if that is set, +that will be the FreeType font face associated with the returned cairo +font face. Otherwise the FC_FILE element is checked. If it's set, +that and the value of the FC_INDEX element (defaults to zero) of <parameter>pattern</parameter> + +are used to load a font face from file.</para> +<para>If both steps from the previous paragraph fails, <parameter>pattern</parameter> + will be passed +to FcConfigSubstitute, FcDefaultSubstitute, and finally FcFontMatch, +and the resulting font pattern is used.</para> +<para>If the FC_FT_FACE element of <parameter>pattern</parameter> + is set, the user is responsible +for making sure that the referenced FT_Face remains valid for the life +time of the returned <link linkend="cairo-font-face-t"><type>cairo_font_face_t</type></link>. See +<link linkend="cairo-ft-font-face-create-for-ft-face"><function>cairo_ft_font_face_create_for_ft_face()</function></link> for an example of how to couple +the life time of the FT_Face to that of the cairo font-face.</para> +<refsect3 id="cairo-ft-font-face-create-for-pattern.parameters" role="parameters"> +<title>Parameters</title> +<informaltable role="parameters_table" pgwide="1" frame="none"> +<tgroup cols="3"> +<colspec colname="parameters_name" colwidth="150px"/> +<colspec colname="parameters_description"/> +<colspec colname="parameters_annotations" colwidth="200px"/> +<tbody> +<row><entry role="parameter_name"><para>pattern</para></entry> +<entry role="parameter_description"><para>A fontconfig pattern. Cairo makes a copy of the pattern +if it needs to. You are free to modify or free <parameter>pattern</parameter> +after this call.</para></entry> +<entry role="parameter_annotations"></entry></row> +</tbody></tgroup></informaltable> +</refsect3><refsect3 id="cairo-ft-font-face-create-for-pattern.returns" role="returns"> +<title>Returns</title> +<para> a newly created <link linkend="cairo-font-face-t"><type>cairo_font_face_t</type></link>. Free with +<link linkend="cairo-font-face-destroy"><function>cairo_font_face_destroy()</function></link> when you are done using it.</para> +</refsect3><para role="since">Since: <link linkend="api-index-1.0">1.0</link></para></refsect2> +<refsect2 id="cairo-ft-font-options-substitute" role="function" condition="since:1.0"> +<title>cairo_ft_font_options_substitute ()</title> +<indexterm zone="cairo-ft-font-options-substitute" role="1.0"><primary sortas="ft_font_options_substitute">cairo_ft_font_options_substitute</primary></indexterm> +<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link> +cairo_ft_font_options_substitute (<parameter>const <link linkend="cairo-font-options-t"><type>cairo_font_options_t</type></link> *options</parameter>, + <parameter><link linkend="FcPattern"><type>FcPattern</type></link> *pattern</parameter>);</programlisting> +<para>Add options to a <link linkend="FcPattern"><type>FcPattern</type></link> based on a <link linkend="cairo-font-options-t"><type>cairo_font_options_t</type></link> font +options object. Options that are already in the pattern, are not overridden, +so you should call this function after calling <link linkend="FcConfigSubstitute"><function>FcConfigSubstitute()</function></link> (the +user's settings should override options based on the surface type), but +before calling <link linkend="FcDefaultSubstitute"><function>FcDefaultSubstitute()</function></link>.</para> +<refsect3 id="cairo-ft-font-options-substitute.parameters" role="parameters"> +<title>Parameters</title> +<informaltable role="parameters_table" pgwide="1" frame="none"> +<tgroup cols="3"> +<colspec colname="parameters_name" colwidth="150px"/> +<colspec colname="parameters_description"/> +<colspec colname="parameters_annotations" colwidth="200px"/> +<tbody> +<row><entry role="parameter_name"><para>options</para></entry> +<entry role="parameter_description"><para>a <link linkend="cairo-font-options-t"><type>cairo_font_options_t</type></link> object</para></entry> +<entry role="parameter_annotations"></entry></row> +<row><entry role="parameter_name"><para>pattern</para></entry> +<entry role="parameter_description"><para>an existing <link linkend="FcPattern"><type>FcPattern</type></link></para></entry> +<entry role="parameter_annotations"></entry></row> +</tbody></tgroup></informaltable> +</refsect3><para role="since">Since: <link linkend="api-index-1.0">1.0</link></para></refsect2> +<refsect2 id="cairo-ft-scaled-font-lock-face" role="function" condition="since:1.0"> +<title>cairo_ft_scaled_font_lock_face ()</title> +<indexterm zone="cairo-ft-scaled-font-lock-face" role="1.0"><primary sortas="ft_scaled_font_lock_face">cairo_ft_scaled_font_lock_face</primary></indexterm> +<programlisting language="C"><link linkend="FT-Face"><returnvalue>FT_Face</returnvalue></link> +cairo_ft_scaled_font_lock_face (<parameter><link linkend="cairo-scaled-font-t"><type>cairo_scaled_font_t</type></link> *scaled_font</parameter>);</programlisting> +<para>cairo_ft_scaled_font_lock_face() gets the <link linkend="FT-Face"><type>FT_Face</type></link> object from a FreeType +backend font and scales it appropriately for the font and applies OpenType +font variations if applicable. You must +release the face with <link linkend="cairo-ft-scaled-font-unlock-face"><function>cairo_ft_scaled_font_unlock_face()</function></link> +when you are done using it. Since the <link linkend="FT-Face"><type>FT_Face</type></link> object can be +shared between multiple <link linkend="cairo-scaled-font-t"><type>cairo_scaled_font_t</type></link> objects, you must not +lock any other font objects until you unlock this one. A count is +kept of the number of times <link linkend="cairo-ft-scaled-font-lock-face"><function>cairo_ft_scaled_font_lock_face()</function></link> is +called. <link linkend="cairo-ft-scaled-font-unlock-face"><function>cairo_ft_scaled_font_unlock_face()</function></link> must be called the same number +of times.</para> +<para>You must be careful when using this function in a library or in a +threaded application, because freetype's design makes it unsafe to +call freetype functions simultaneously from multiple threads, (even +if using distinct FT_Face objects). Because of this, application +code that acquires an FT_Face object with this call must add its +own locking to protect any use of that object, (and which also must +protect any other calls into cairo as almost any cairo function +might result in a call into the freetype library).</para> +<refsect3 id="cairo-ft-scaled-font-lock-face.parameters" role="parameters"> +<title>Parameters</title> +<informaltable role="parameters_table" pgwide="1" frame="none"> +<tgroup cols="3"> +<colspec colname="parameters_name" colwidth="150px"/> +<colspec colname="parameters_description"/> +<colspec colname="parameters_annotations" colwidth="200px"/> +<tbody> +<row><entry role="parameter_name"><para>scaled_font</para></entry> +<entry role="parameter_description"><para>A <link linkend="cairo-scaled-font-t"><type>cairo_scaled_font_t</type></link> from the FreeType font backend. Such an +object can be created by calling <link linkend="cairo-scaled-font-create"><function>cairo_scaled_font_create()</function></link> on a +FreeType backend font face (see <link linkend="cairo-ft-font-face-create-for-pattern"><function>cairo_ft_font_face_create_for_pattern()</function></link>, +<link linkend="cairo-ft-font-face-create-for-ft-face"><function>cairo_ft_font_face_create_for_ft_face()</function></link>).</para></entry> +<entry role="parameter_annotations"></entry></row> +</tbody></tgroup></informaltable> +</refsect3><refsect3 id="cairo-ft-scaled-font-lock-face.returns" role="returns"> +<title>Returns</title> +<para> The <link linkend="FT-Face"><type>FT_Face</type></link> object for <parameter>font</parameter> +, scaled appropriately, +or <link linkend="NULL:CAPS"><literal>NULL</literal></link> if <parameter>scaled_font</parameter> +is in an error state (see +<link linkend="cairo-scaled-font-status"><function>cairo_scaled_font_status()</function></link>) or there is insufficient memory.</para> +</refsect3><para role="since">Since: <link linkend="api-index-1.0">1.0</link></para></refsect2> +<refsect2 id="cairo-ft-scaled-font-unlock-face" role="function" condition="since:1.0"> +<title>cairo_ft_scaled_font_unlock_face ()</title> +<indexterm zone="cairo-ft-scaled-font-unlock-face" role="1.0"><primary sortas="ft_scaled_font_unlock_face">cairo_ft_scaled_font_unlock_face</primary></indexterm> +<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link> +cairo_ft_scaled_font_unlock_face (<parameter><link linkend="cairo-scaled-font-t"><type>cairo_scaled_font_t</type></link> *scaled_font</parameter>);</programlisting> +<para>Releases a face obtained with <link linkend="cairo-ft-scaled-font-lock-face"><function>cairo_ft_scaled_font_lock_face()</function></link>.</para> +<refsect3 id="cairo-ft-scaled-font-unlock-face.parameters" role="parameters"> +<title>Parameters</title> +<informaltable role="parameters_table" pgwide="1" frame="none"> +<tgroup cols="3"> +<colspec colname="parameters_name" colwidth="150px"/> +<colspec colname="parameters_description"/> +<colspec colname="parameters_annotations" colwidth="200px"/> +<tbody> +<row><entry role="parameter_name"><para>scaled_font</para></entry> +<entry role="parameter_description"><para>A <link linkend="cairo-scaled-font-t"><type>cairo_scaled_font_t</type></link> from the FreeType font backend. Such an +object can be created by calling <link linkend="cairo-scaled-font-create"><function>cairo_scaled_font_create()</function></link> on a +FreeType backend font face (see <link linkend="cairo-ft-font-face-create-for-pattern"><function>cairo_ft_font_face_create_for_pattern()</function></link>, +<link linkend="cairo-ft-font-face-create-for-ft-face"><function>cairo_ft_font_face_create_for_ft_face()</function></link>).</para></entry> +<entry role="parameter_annotations"></entry></row> +</tbody></tgroup></informaltable> +</refsect3><para role="since">Since: <link linkend="api-index-1.0">1.0</link></para></refsect2> +<refsect2 id="cairo-ft-font-face-get-synthesize" role="function" condition="since:1.12"> +<title>cairo_ft_font_face_get_synthesize ()</title> +<indexterm zone="cairo-ft-font-face-get-synthesize" role="1.12"><primary sortas="ft_font_face_get_synthesize">cairo_ft_font_face_get_synthesize</primary></indexterm> +<programlisting language="C">unsigned <link linkend="int"><returnvalue>int</returnvalue></link> +cairo_ft_font_face_get_synthesize (<parameter><link linkend="cairo-font-face-t"><type>cairo_font_face_t</type></link> *font_face</parameter>);</programlisting> +<para>See <link linkend="cairo-ft-synthesize-t"><type>cairo_ft_synthesize_t</type></link>.</para> +<refsect3 id="cairo-ft-font-face-get-synthesize.parameters" role="parameters"> +<title>Parameters</title> +<informaltable role="parameters_table" pgwide="1" frame="none"> +<tgroup cols="3"> +<colspec colname="parameters_name" colwidth="150px"/> +<colspec colname="parameters_description"/> +<colspec colname="parameters_annotations" colwidth="200px"/> +<tbody> +<row><entry role="parameter_name"><para>font_face</para></entry> +<entry role="parameter_description"><para>The <link linkend="cairo-ft-font-face-t"><type>cairo_ft_font_face_t</type></link> object to query</para></entry> +<entry role="parameter_annotations"></entry></row> +</tbody></tgroup></informaltable> +</refsect3><refsect3 id="cairo-ft-font-face-get-synthesize.returns" role="returns"> +<title>Returns</title> +<para> the current set of synthesis options.</para> +</refsect3><para role="since">Since: <link linkend="api-index-1.12">1.12</link></para></refsect2> +<refsect2 id="cairo-ft-font-face-set-synthesize" role="function" condition="since:1.12"> +<title>cairo_ft_font_face_set_synthesize ()</title> +<indexterm zone="cairo-ft-font-face-set-synthesize" role="1.12"><primary sortas="ft_font_face_set_synthesize">cairo_ft_font_face_set_synthesize</primary></indexterm> +<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link> +cairo_ft_font_face_set_synthesize (<parameter><link linkend="cairo-font-face-t"><type>cairo_font_face_t</type></link> *font_face</parameter>, + <parameter>unsigned <link linkend="int"><type>int</type></link> synth_flags</parameter>);</programlisting> +<para>FreeType provides the ability to synthesize different glyphs from a base +font, which is useful if you lack those glyphs from a true bold or oblique +font. See also <link linkend="cairo-ft-synthesize-t"><type>cairo_ft_synthesize_t</type></link>.</para> +<refsect3 id="cairo-ft-font-face-set-synthesize.parameters" role="parameters"> +<title>Parameters</title> +<informaltable role="parameters_table" pgwide="1" frame="none"> +<tgroup cols="3"> +<colspec colname="parameters_name" colwidth="150px"/> +<colspec colname="parameters_description"/> +<colspec colname="parameters_annotations" colwidth="200px"/> +<tbody> +<row><entry role="parameter_name"><para>font_face</para></entry> +<entry role="parameter_description"><para>The <link linkend="cairo-ft-font-face-t"><type>cairo_ft_font_face_t</type></link> object to modify</para></entry> +<entry role="parameter_annotations"></entry></row> +<row><entry role="parameter_name"><para>synth_flags</para></entry> +<entry role="parameter_description"><para>the set of synthesis options to enable</para></entry> +<entry role="parameter_annotations"></entry></row> +</tbody></tgroup></informaltable> +</refsect3><para role="since">Since: <link linkend="api-index-1.12">1.12</link></para></refsect2> +<refsect2 id="cairo-ft-font-face-unset-synthesize" role="function" condition="since:1.12"> +<title>cairo_ft_font_face_unset_synthesize ()</title> +<indexterm zone="cairo-ft-font-face-unset-synthesize" role="1.12"><primary sortas="ft_font_face_unset_synthesize">cairo_ft_font_face_unset_synthesize</primary></indexterm> +<programlisting language="C"><link linkend="void"><returnvalue>void</returnvalue></link> +cairo_ft_font_face_unset_synthesize (<parameter><link linkend="cairo-font-face-t"><type>cairo_font_face_t</type></link> *font_face</parameter>, + <parameter>unsigned <link linkend="int"><type>int</type></link> synth_flags</parameter>);</programlisting> +<para>See <link linkend="cairo-ft-font-face-set-synthesize"><function>cairo_ft_font_face_set_synthesize()</function></link>.</para> +<refsect3 id="cairo-ft-font-face-unset-synthesize.parameters" role="parameters"> +<title>Parameters</title> +<informaltable role="parameters_table" pgwide="1" frame="none"> +<tgroup cols="3"> +<colspec colname="parameters_name" colwidth="150px"/> +<colspec colname="parameters_description"/> +<colspec colname="parameters_annotations" colwidth="200px"/> +<tbody> +<row><entry role="parameter_name"><para>font_face</para></entry> +<entry role="parameter_description"><para>The <link linkend="cairo-ft-font-face-t"><type>cairo_ft_font_face_t</type></link> object to modify</para></entry> +<entry role="parameter_annotations"></entry></row> +<row><entry role="parameter_name"><para>synth_flags</para></entry> +<entry role="parameter_description"><para>the set of synthesis options to disable</para></entry> +<entry role="parameter_annotations"></entry></row> +</tbody></tgroup></informaltable> +</refsect3><para role="since">Since: <link linkend="api-index-1.12">1.12</link></para></refsect2> + +</refsect1> +<refsect1 id="cairo-FreeType-Fonts.other_details" role="details"> +<title role="details.title">Types and Values</title> +<refsect2 id="CAIRO-HAS-FT-FONT:CAPS" role="macro" condition="since:1.0"> +<title>CAIRO_HAS_FT_FONT</title> +<indexterm zone="CAIRO-HAS-FT-FONT:CAPS" role="1.0"><primary sortas="HAS_FT_FONT">CAIRO_HAS_FT_FONT</primary></indexterm> +<programlisting language="C">#define CAIRO_HAS_FT_FONT 1 +</programlisting> +<para>Defined if the FreeType font backend is available. +This macro can be used to conditionally compile backend-specific code.</para> +<para role="since">Since: <link linkend="api-index-1.0">1.0</link></para></refsect2> +<refsect2 id="CAIRO-HAS-FC-FONT:CAPS" role="macro" condition="since:1.10"> +<title>CAIRO_HAS_FC_FONT</title> +<indexterm zone="CAIRO-HAS-FC-FONT:CAPS" role="1.10"><primary sortas="HAS_FC_FONT">CAIRO_HAS_FC_FONT</primary></indexterm> +<programlisting language="C">#define CAIRO_HAS_FC_FONT 1 +</programlisting> +<para>Defined if the Fontconfig-specific functions of the FreeType font backend +are available. +This macro can be used to conditionally compile backend-specific code.</para> +<para role="since">Since: <link linkend="api-index-1.10">1.10</link></para></refsect2> +<refsect2 id="cairo-ft-synthesize-t" role="enum" condition="since:1.12"> +<title>enum cairo_ft_synthesize_t</title> +<indexterm zone="cairo-ft-synthesize-t" role="1.12"><primary sortas="ft_synthesize_t">cairo_ft_synthesize_t</primary></indexterm> +<para>A set of synthesis options to control how FreeType renders the glyphs +for a particular font face.</para> +<para>Individual synthesis features of a <link linkend="cairo-ft-font-face-t"><type>cairo_ft_font_face_t</type></link> can be set +using <link linkend="cairo-ft-font-face-set-synthesize"><function>cairo_ft_font_face_set_synthesize()</function></link>, or disabled using +<link linkend="cairo-ft-font-face-unset-synthesize"><function>cairo_ft_font_face_unset_synthesize()</function></link>. The currently enabled set of +synthesis options can be queried with <link linkend="cairo-ft-font-face-get-synthesize"><function>cairo_ft_font_face_get_synthesize()</function></link>.</para> +<para>Note: that when synthesizing glyphs, the font metrics returned will only +be estimates.</para> +<refsect3 id="cairo-ft-synthesize-t.members" role="enum_members"> +<title>Members</title> +<informaltable role="enum_members_table" pgwide="1" frame="none"> +<tgroup cols="3"> +<colspec colname="enum_members_name" colwidth="300px"/> +<colspec colname="enum_members_description"/> +<colspec colname="enum_members_annotations" colwidth="200px"/> +<tbody> +<row role="constant"><entry role="enum_member_name"><para id="CAIRO-FT-SYNTHESIZE-BOLD:CAPS">CAIRO_FT_SYNTHESIZE_BOLD</para></entry> +<entry role="enum_member_description"><para>Embolden the glyphs (redraw with a pixel offset)</para> +</entry> +<entry role="enum_member_annotations"></entry> +</row> +<row role="constant"><entry role="enum_member_name"><para id="CAIRO-FT-SYNTHESIZE-OBLIQUE:CAPS">CAIRO_FT_SYNTHESIZE_OBLIQUE</para></entry> +<entry role="enum_member_description"><para>Slant the glyph outline by 12 degrees to the +right.</para> +</entry> +<entry role="enum_member_annotations"></entry> +</row> +</tbody></tgroup></informaltable> +</refsect3><para role="since">Since: <link linkend="api-index-1.12">1.12</link></para></refsect2> + +</refsect1> +<refsect1 id="cairo-FreeType-Fonts.see-also"> +<title>See Also</title> +<para><link linkend="cairo-font-face-t"><type>cairo_font_face_t</type></link></para> + +</refsect1> + +</refentry> |