# {py:mod}`simvx.core.text.font` ```{py:module} simvx.core.text.font ``` ```{autodoc2-docstring} simvx.core.text.font :allowtitles: ``` ## Module Contents ### Classes ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`GlyphMetrics ` - ```{autodoc2-docstring} simvx.core.text.font.GlyphMetrics :summary: ``` * - {py:obj}`Font ` - ```{autodoc2-docstring} simvx.core.text.font.Font :summary: ``` ```` ### API `````{py:class} GlyphMetrics :canonical: simvx.core.text.font.GlyphMetrics ```{autodoc2-docstring} simvx.core.text.font.GlyphMetrics ``` ````{py:attribute} char :canonical: simvx.core.text.font.GlyphMetrics.char :type: str :value: > None ```{autodoc2-docstring} simvx.core.text.font.GlyphMetrics.char ``` ```` ````{py:attribute} advance_x :canonical: simvx.core.text.font.GlyphMetrics.advance_x :type: float :value: > None ```{autodoc2-docstring} simvx.core.text.font.GlyphMetrics.advance_x ``` ```` ````{py:attribute} bearing_x :canonical: simvx.core.text.font.GlyphMetrics.bearing_x :type: float :value: > None ```{autodoc2-docstring} simvx.core.text.font.GlyphMetrics.bearing_x ``` ```` ````{py:attribute} bearing_y :canonical: simvx.core.text.font.GlyphMetrics.bearing_y :type: float :value: > None ```{autodoc2-docstring} simvx.core.text.font.GlyphMetrics.bearing_y ``` ```` ````{py:attribute} width :canonical: simvx.core.text.font.GlyphMetrics.width :type: int :value: > None ```{autodoc2-docstring} simvx.core.text.font.GlyphMetrics.width ``` ```` ````{py:attribute} height :canonical: simvx.core.text.font.GlyphMetrics.height :type: int :value: > None ```{autodoc2-docstring} simvx.core.text.font.GlyphMetrics.height ``` ```` ````{py:attribute} contours :canonical: simvx.core.text.font.GlyphMetrics.contours :type: list[list[tuple[float, float, bool]]] | None :value: > None ```{autodoc2-docstring} simvx.core.text.font.GlyphMetrics.contours ``` ```` ````` `````{py:class} Font(path: str | pathlib.Path, size: int = 64, face_index: int = 0) :canonical: simvx.core.text.font.Font ```{autodoc2-docstring} simvx.core.text.font.Font ``` ```{rubric} Initialization ``` ```{autodoc2-docstring} simvx.core.text.font.Font.__init__ ``` ````{py:method} get_glyph(char: str) -> simvx.core.text.font.GlyphMetrics :canonical: simvx.core.text.font.Font.get_glyph ```{autodoc2-docstring} simvx.core.text.font.Font.get_glyph ``` ```` ````{py:method} get_kerning(left: str, right: str) -> float :canonical: simvx.core.text.font.Font.get_kerning ```{autodoc2-docstring} simvx.core.text.font.Font.get_kerning ``` ```` ````{py:method} render_bitmap(char: str) -> tuple :canonical: simvx.core.text.font.Font.render_bitmap ```{autodoc2-docstring} simvx.core.text.font.Font.render_bitmap ``` ```` ````{py:property} line_height :canonical: simvx.core.text.font.Font.line_height :type: float ```{autodoc2-docstring} simvx.core.text.font.Font.line_height ``` ```` ````{py:property} ascender :canonical: simvx.core.text.font.Font.ascender :type: float ```{autodoc2-docstring} simvx.core.text.font.Font.ascender ``` ```` ````{py:property} descender :canonical: simvx.core.text.font.Font.descender :type: float ```{autodoc2-docstring} simvx.core.text.font.Font.descender ``` ```` `````