:right-sidebar: True Decoder =================================================================== .. currentmodule:: gi.repository.PangoFc .. versionadded:: 1.6 .. class:: Decoder(**properties: ~typing.Any) :no-contents-entry: Superclasses: :class:`~gi.repository.GObject.Object` ``PangoFcDecoder`` is a virtual base class that implementations will inherit from. It's the interface that is used to define a custom encoding for a font. These objects are created in your code from a function callback that was originally registered with :obj:`~gi.repository.PangoFc.FontMap.add_decoder_find_func`\. Pango requires information about the supported charset for a font as well as the individual character to glyph conversions. Pango gets that information via the ``get_charset`` and ``get_glyph`` callbacks into your object implementation. Methods ------- .. rst-class:: interim-class .. class:: Decoder :no-index: .. method:: do_get_charset(self, fcfont: ~gi.repository.PangoFc.Font) -> ~gi.repository.fontconfig.CharSet :param fcfont: .. method:: do_get_glyph(self, fcfont: ~gi.repository.PangoFc.Font, wc: int) -> int :param fcfont: :param wc: .. method:: get_charset(fcfont: ~gi.repository.PangoFc.Font) -> ~gi.repository.fontconfig.CharSet Generates an ``FcCharSet`` of supported characters for the ``fcfont`` given. The returned ``FcCharSet`` will be a reference to an internal value stored by the ``PangoFcDecoder`` and must not be modified or freed. .. versionadded:: 1.6 :param fcfont: the ``PangoFcFont`` to query. .. method:: get_glyph(fcfont: ~gi.repository.PangoFc.Font, wc: int) -> int Generates a ``PangoGlyph`` for the given Unicode point using the custom decoder. For complex scripts where there can be multiple glyphs for a single character, the decoder will return whatever glyph is most convenient for it. (Usually whatever glyph is directly in the fonts character map table.) .. versionadded:: 1.6 :param fcfont: a ``PangoFcFont`` to query. :param wc: the Unicode code point to convert to a single ``PangoGlyph``\. Virtual Methods --------------- .. rst-class:: interim-class .. class:: Decoder :no-index: .. method:: do_get_charset(fcfont: ~gi.repository.PangoFc.Font) -> ~gi.repository.fontconfig.CharSet Generates an ``FcCharSet`` of supported characters for the ``fcfont`` given. The returned ``FcCharSet`` will be a reference to an internal value stored by the ``PangoFcDecoder`` and must not be modified or freed. .. versionadded:: 1.6 :param fcfont: the ``PangoFcFont`` to query. .. method:: do_get_glyph(fcfont: ~gi.repository.PangoFc.Font, wc: int) -> int Generates a ``PangoGlyph`` for the given Unicode point using the custom decoder. For complex scripts where there can be multiple glyphs for a single character, the decoder will return whatever glyph is most convenient for it. (Usually whatever glyph is directly in the fonts character map table.) .. versionadded:: 1.6 :param fcfont: a ``PangoFcFont`` to query. :param wc: the Unicode code point to convert to a single ``PangoGlyph``\. Fields ------ .. rst-class:: interim-class .. class:: Decoder :no-index: .. attribute:: parent_instance