<?xml version="1.0"?>
<!-- This file was automatically generated from C sources - DO NOT EDIT!
To affect the contents of this file, edit the original C definitions,
and/or use gtk-doc annotations.  -->
<repository version="1.2"
            xmlns="http://www.gtk.org/introspection/core/1.0"
            xmlns:c="http://www.gtk.org/introspection/c/1.0"
            xmlns:glib="http://www.gtk.org/introspection/glib/1.0">
  <include name="GObject" version="2.0"/>
  <include name="Pango" version="1.0"/>
  <include name="cairo" version="1.0"/>
  <include name="fontconfig" version="2.0"/>
  <include name="freetype2" version="2.0"/>
  <package name="pangoft2"/>
  <c:include name="pango/pangoft2.h"/>
  <namespace name="PangoFT2"
             version="1.0"
             shared-library="libpango-1.0.so.0,libpangoft2-1.0.so.0"
             c:identifier-prefixes="PangoFT2"
             c:symbol-prefixes="pango_ft2">
    <class name="FontMap"
           c:symbol-prefix="font_map"
           c:type="PangoFT2FontMap"
           parent="Pango.FontMap"
           glib:type-name="PangoFT2FontMap"
           glib:get-type="pango_ft2_font_map_get_type">
      <constructor name="new" c:identifier="pango_ft2_font_map_new">
        <return-value transfer-ownership="full">
          <type name="Pango.FontMap" c:type="PangoFontMap*"/>
        </return-value>
      </constructor>
      <function name="for_display"
                c:identifier="pango_ft2_font_map_for_display"
                introspectable="0">
        <return-value>
          <type name="Pango.FontMap" c:type="PangoFontMap*"/>
        </return-value>
      </function>
      <method name="create_context"
              c:identifier="pango_ft2_font_map_create_context"
              introspectable="0">
        <return-value>
          <type name="Pango.Context" c:type="PangoContext*"/>
        </return-value>
        <parameters>
          <instance-parameter name="fontmap" transfer-ownership="none">
            <type name="FontMap" c:type="PangoFT2FontMap*"/>
          </instance-parameter>
        </parameters>
      </method>
      <method name="set_default_substitute"
              c:identifier="pango_ft2_font_map_set_default_substitute">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="fontmap" transfer-ownership="none">
            <type name="FontMap" c:type="PangoFT2FontMap*"/>
          </instance-parameter>
          <parameter name="func"
                     transfer-ownership="none"
                     scope="notified"
                     closure="1"
                     destroy="2">
            <type name="SubstituteFunc" c:type="PangoFT2SubstituteFunc"/>
          </parameter>
          <parameter name="data" transfer-ownership="none">
            <type name="gpointer" c:type="gpointer"/>
          </parameter>
          <parameter name="notify" transfer-ownership="none" scope="async">
            <type name="GLib.DestroyNotify" c:type="GDestroyNotify"/>
          </parameter>
        </parameters>
      </method>
      <method name="set_resolution"
              c:identifier="pango_ft2_font_map_set_resolution">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="fontmap" transfer-ownership="none">
            <type name="FontMap" c:type="PangoFT2FontMap*"/>
          </instance-parameter>
          <parameter name="dpi_x" transfer-ownership="none">
            <type name="gdouble" c:type="double"/>
          </parameter>
          <parameter name="dpi_y" transfer-ownership="none">
            <type name="gdouble" c:type="double"/>
          </parameter>
        </parameters>
      </method>
      <method name="substitute_changed"
              c:identifier="pango_ft2_font_map_substitute_changed">
        <return-value transfer-ownership="none">
          <type name="none" c:type="void"/>
        </return-value>
        <parameters>
          <instance-parameter name="fontmap" transfer-ownership="none">
            <type name="FontMap" c:type="PangoFT2FontMap*"/>
          </instance-parameter>
        </parameters>
      </method>
    </class>
    <callback name="SubstituteFunc" c:type="PangoFT2SubstituteFunc">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="pattern" transfer-ownership="none">
          <type name="fontconfig.Pattern" c:type="FcPattern*"/>
        </parameter>
        <parameter name="data" transfer-ownership="none">
          <type name="gpointer" c:type="gpointer"/>
        </parameter>
      </parameters>
    </callback>
    <function name="font_get_coverage"
              c:identifier="pango_ft2_font_get_coverage"
              introspectable="0">
      <doc xml:space="preserve">Gets the #PangoCoverage for a #PangoFT2Font. Use
pango_font_get_coverage() instead.</doc>
      <return-value>
        <doc xml:space="preserve">a #PangoCoverage.</doc>
        <type name="Pango.Coverage" c:type="PangoCoverage*"/>
      </return-value>
      <parameters>
        <parameter name="font" transfer-ownership="none">
          <doc xml:space="preserve">a #PangoFT2Font.</doc>
          <type name="Pango.Font" c:type="PangoFont*"/>
        </parameter>
        <parameter name="language" transfer-ownership="none">
          <doc xml:space="preserve">a language tag.</doc>
          <type name="Pango.Language" c:type="PangoLanguage*"/>
        </parameter>
      </parameters>
    </function>
    <function name="font_get_face"
              c:identifier="pango_ft2_font_get_face"
              introspectable="0">
      <doc xml:space="preserve">Returns the native FreeType2 &lt;type&gt;FT_Face&lt;/type&gt; structure used for this #PangoFont.
This may be useful if you want to use FreeType2 functions directly.

Use pango_fc_font_lock_face() instead; when you are done with a
face from pango_fc_font_lock_face() you must call
pango_fc_font_unlock_face().</doc>
      <return-value>
        <doc xml:space="preserve">a pointer to a &lt;type&gt;FT_Face&lt;/type&gt; structure, with the size set correctly, or %NULL if @font is %NULL.</doc>
        <type name="freetype2.Face" c:type="FT_Face"/>
      </return-value>
      <parameters>
        <parameter name="font" transfer-ownership="none">
          <doc xml:space="preserve">a #PangoFont</doc>
          <type name="Pango.Font" c:type="PangoFont*"/>
        </parameter>
      </parameters>
    </function>
    <function name="font_get_kerning"
              c:identifier="pango_ft2_font_get_kerning">
      <doc xml:space="preserve">Retrieves kerning information for a combination of two glyphs.

Use pango_fc_font_kern_glyphs() instead.</doc>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve">The amount of kerning (in Pango units) to apply for the given combination of glyphs.</doc>
        <type name="gint" c:type="int"/>
      </return-value>
      <parameters>
        <parameter name="font" transfer-ownership="none">
          <doc xml:space="preserve">a #PangoFont</doc>
          <type name="Pango.Font" c:type="PangoFont*"/>
        </parameter>
        <parameter name="left" transfer-ownership="none">
          <doc xml:space="preserve">the left #PangoGlyph</doc>
          <type name="Pango.Glyph" c:type="PangoGlyph"/>
        </parameter>
        <parameter name="right" transfer-ownership="none">
          <doc xml:space="preserve">the right #PangoGlyph</doc>
          <type name="Pango.Glyph" c:type="PangoGlyph"/>
        </parameter>
      </parameters>
    </function>
    <function name="get_context"
              c:identifier="pango_ft2_get_context"
              introspectable="0">
      <return-value>
        <type name="Pango.Context" c:type="PangoContext*"/>
      </return-value>
      <parameters>
        <parameter name="dpi_x" transfer-ownership="none">
          <type name="gdouble" c:type="double"/>
        </parameter>
        <parameter name="dpi_y" transfer-ownership="none">
          <type name="gdouble" c:type="double"/>
        </parameter>
      </parameters>
    </function>
    <function name="get_unknown_glyph"
              c:identifier="pango_ft2_get_unknown_glyph">
      <doc xml:space="preserve">Return the index of a glyph suitable for drawing unknown characters with
@font, or %PANGO_GLYPH_EMPTY if no suitable glyph found.

If you want to draw an unknown-box for a character that is not covered
by the font,
use PANGO_GET_UNKNOWN_GLYPH() instead.</doc>
      <return-value transfer-ownership="none">
        <doc xml:space="preserve">a glyph index into @font, or %PANGO_GLYPH_EMPTY</doc>
        <type name="Pango.Glyph" c:type="PangoGlyph"/>
      </return-value>
      <parameters>
        <parameter name="font" transfer-ownership="none">
          <doc xml:space="preserve">a #PangoFont</doc>
          <type name="Pango.Font" c:type="PangoFont*"/>
        </parameter>
      </parameters>
    </function>
    <function name="render" c:identifier="pango_ft2_render">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="bitmap" transfer-ownership="none">
          <type name="freetype2.Bitmap" c:type="FT_Bitmap*"/>
        </parameter>
        <parameter name="font" transfer-ownership="none">
          <type name="Pango.Font" c:type="PangoFont*"/>
        </parameter>
        <parameter name="glyphs" transfer-ownership="none">
          <type name="Pango.GlyphString" c:type="PangoGlyphString*"/>
        </parameter>
        <parameter name="x" transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </parameter>
        <parameter name="y" transfer-ownership="none">
          <type name="gint" c:type="gint"/>
        </parameter>
      </parameters>
    </function>
    <function name="render_layout" c:identifier="pango_ft2_render_layout">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="bitmap" transfer-ownership="none">
          <type name="freetype2.Bitmap" c:type="FT_Bitmap*"/>
        </parameter>
        <parameter name="layout" transfer-ownership="none">
          <type name="Pango.Layout" c:type="PangoLayout*"/>
        </parameter>
        <parameter name="x" transfer-ownership="none">
          <type name="gint" c:type="int"/>
        </parameter>
        <parameter name="y" transfer-ownership="none">
          <type name="gint" c:type="int"/>
        </parameter>
      </parameters>
    </function>
    <function name="render_layout_line"
              c:identifier="pango_ft2_render_layout_line">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="bitmap" transfer-ownership="none">
          <type name="freetype2.Bitmap" c:type="FT_Bitmap*"/>
        </parameter>
        <parameter name="line" transfer-ownership="none">
          <type name="Pango.LayoutLine" c:type="PangoLayoutLine*"/>
        </parameter>
        <parameter name="x" transfer-ownership="none">
          <type name="gint" c:type="int"/>
        </parameter>
        <parameter name="y" transfer-ownership="none">
          <type name="gint" c:type="int"/>
        </parameter>
      </parameters>
    </function>
    <function name="render_layout_line_subpixel"
              c:identifier="pango_ft2_render_layout_line_subpixel">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="bitmap" transfer-ownership="none">
          <type name="freetype2.Bitmap" c:type="FT_Bitmap*"/>
        </parameter>
        <parameter name="line" transfer-ownership="none">
          <type name="Pango.LayoutLine" c:type="PangoLayoutLine*"/>
        </parameter>
        <parameter name="x" transfer-ownership="none">
          <type name="gint" c:type="int"/>
        </parameter>
        <parameter name="y" transfer-ownership="none">
          <type name="gint" c:type="int"/>
        </parameter>
      </parameters>
    </function>
    <function name="render_layout_subpixel"
              c:identifier="pango_ft2_render_layout_subpixel">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="bitmap" transfer-ownership="none">
          <type name="freetype2.Bitmap" c:type="FT_Bitmap*"/>
        </parameter>
        <parameter name="layout" transfer-ownership="none">
          <type name="Pango.Layout" c:type="PangoLayout*"/>
        </parameter>
        <parameter name="x" transfer-ownership="none">
          <type name="gint" c:type="int"/>
        </parameter>
        <parameter name="y" transfer-ownership="none">
          <type name="gint" c:type="int"/>
        </parameter>
      </parameters>
    </function>
    <function name="render_transformed"
              c:identifier="pango_ft2_render_transformed">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
      <parameters>
        <parameter name="bitmap" transfer-ownership="none">
          <type name="freetype2.Bitmap" c:type="FT_Bitmap*"/>
        </parameter>
        <parameter name="matrix" transfer-ownership="none">
          <type name="Pango.Matrix" c:type="const PangoMatrix*"/>
        </parameter>
        <parameter name="font" transfer-ownership="none">
          <type name="Pango.Font" c:type="PangoFont*"/>
        </parameter>
        <parameter name="glyphs" transfer-ownership="none">
          <type name="Pango.GlyphString" c:type="PangoGlyphString*"/>
        </parameter>
        <parameter name="x" transfer-ownership="none">
          <type name="gint" c:type="int"/>
        </parameter>
        <parameter name="y" transfer-ownership="none">
          <type name="gint" c:type="int"/>
        </parameter>
      </parameters>
    </function>
    <function name="shutdown_display"
              c:identifier="pango_ft2_shutdown_display">
      <return-value transfer-ownership="none">
        <type name="none" c:type="void"/>
      </return-value>
    </function>
  </namespace>
</repository>
