MCPcopy Index your code
hub / github.com/matplotlib/matplotlib / _get_glyph

Method _get_glyph

lib/matplotlib/_mathtext.py:501–522  ·  view source on GitHub ↗
(self, fontname: str, font_class: str,
                   sym: str)

Source from the content-addressed store, hash-verified

499 _slanted_symbols = set(r"\int \oint".split())
500
501 def _get_glyph(self, fontname: str, font_class: str,
502 sym: str) -> tuple[FT2Font, CharacterCodeType, bool]:
503 font = None
504
505 if fontname in self.fontmap and sym in latex_to_bakoma:
506 basename, num = latex_to_bakoma[sym]
507 slanted = (basename in ("cmmi10", "cmti10")) or sym in self._slanted_symbols
508 font = self._get_font(basename)
509 elif len(sym) == 1:
510 slanted = (fontname in ("it", "normal"))
511 if fontname == "normal" and sym.isdigit():
512 # use digits from cmr (roman alphabet) instead of cmm (math alphabet),
513 # same as LaTeX does.
514 fontname = "rm"
515 slanted = False
516 font = self._get_font(fontname)
517 if font is not None:
518 num = ord(sym)
519 if font is not None and font.get_char_index(num) != 0:
520 return font, num, slanted
521 else:
522 return self._stix_fallback._get_glyph(fontname, font_class, sym)
523
524 # The Bakoma fonts contain many pre-sized alternatives for the delimiters. The
525 # Auto(Height|Width)Char classes will use these alternatives and select the best

Callers 2

_get_glyphMethod · 0.45
_get_glyphMethod · 0.45

Calls 2

get_char_indexMethod · 0.80
_get_fontMethod · 0.45

Tested by

no test coverage detected