§
    P/Phê	  ã                  ó¢   — d Z ddlmZ ddlZddlmZ ddlmZmZm	Z	  ej
        d¬¦  «         G d	„ d
¦  «        ¦   «         Zd„ Zej        dœd„ZdS )z"
Low-level text helper utilities.
é    )ÚannotationsNé   )Ú_api)ÚFT2FontÚKerningÚ	LoadFlagsT)Úfrozenc                  óB   — e Zd ZU ded<   ded<   ded<   ded<   ded	<   d
S )Ú
LayoutItemr   Ú	ft_objectÚstrÚcharÚintÚ	glyph_idxÚfloatÚxÚ	prev_kernN)Ú__name__Ú
__module__Ú__qualname__Ú__annotations__© ó    úX/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/matplotlib/_text_helpers.pyr   r      sE   € € € € € € àÐÐÑØ€I€IIØ€N€NNØ€H€HHØÐÐÑÐÐr   r   c           	     ó–  — t          j        d| › dt          | ¦  «                             dd¦  «                             d¦  «        › d|› d¦  «         d| cxk    rdk    rn nd	nÇd
| cxk    rdk    rn ndnµd| cxk    rdk    rn ndn£d| cxk    rdk    rn ndn‘d| cxk    rdk    rn ndnd| cxk    rdk    rn ndnmd| cxk    rdk    rn ndn[d| cxk    rdk    rn ndnId| cxk    rd k    rn nd!n7d"| cxk    rd#k    rn nd$n%d%| cxk    rd&k    rn nd'nd(| cxk    rd)k    rn nd*nd }|rt          j        d+|› d,¦  «         d S d S )-NzGlyph z (ÚasciiÚnamereplacez) missing from font(s) ú.i  iÿ  ÚHebrewi   iÿ  ÚArabici 	  i	  Ú
Devanagarii€	  iÿ	  ÚBengalii 
  i
  ÚGurmukhii€
  iÿ
  ÚGujaratii   i  ÚOriyai€  iÿ  ÚTamili   i  ÚTelugui€  iÿ  ÚKannadai   i  Ú	Malayalami€  iÿ  ÚSinhalaz&Matplotlib currently does not support z
 natively.)r   Úwarn_externalÚchrÚencodeÚdecode)Ú	codepointÚ	fontnamesÚblocks      r   Úwarn_on_missing_glyphr2      s†  € ÝÔð	-ð 	-ð 	-Ý	‰NŒN×!Ò! '¨=Ñ9Ô9×@Ò@ÀÑIÔIð	-ð 	-à )ð	-ð 	-ð 	-ñ.ô .ð .ð
   9Ð6Ð6Ò6Ð6°Ò6Ð6Ð6Ð6Ð6ˆXˆXØ 9Ð6Ð6Ò6Ð6°Ò6Ð6Ð6Ð6Ð6ˆXˆXØ# yÐ:Ð:Ò:Ð:°FÒ:Ð:Ð:Ð:Ð:ˆ\ˆ\Ø  IÐ7Ð7Ò7Ð7°Ò7Ð7Ð7Ð7Ð7ˆYˆYØ! YÐ8Ð8Ò8Ð8°&Ò8Ð8Ð8Ð8Ð8ˆZˆZØ! YÐ8Ð8Ò8Ð8°&Ò8Ð8Ð8Ð8Ð8ˆZˆZØ )Ð5Ð5Ò5Ð5¨vÒ5Ð5Ð5Ð5Ð5ˆWˆWØ )Ð5Ð5Ò5Ð5¨vÒ5Ð5Ð5Ð5Ð5ˆWˆWØ 9Ð6Ð6Ò6Ð6°Ò6Ð6Ð6Ð6Ð6ˆXˆXØ  IÐ7Ð7Ò7Ð7°Ò7Ð7Ð7Ð7Ð7ˆYˆYØ" iÐ9Ð9Ò9Ð9°6Ò9Ð9Ð9Ð9Ð9ˆ[ˆ[Ø  IÐ7Ð7Ò7Ð7°Ò7Ð7Ð7Ð7Ð7ˆYˆYØð 
ð ð HÝÔØF°UÐFÐFÐFñ	Hô 	Hð 	Hð 	Hð 	HðHð Hr   )Ú	kern_modec             #  óŠ  K  — d}d}|                      | ¦  «        }|}| D ]¢}|                     ||¦  «        }|                     t          |¦  «        ¦  «        }||                     |||¦  «        dz  nd}	||	z  }|                     |t          j        ¬¦  «        }
t          |||||	¦  «        V — ||
j	        dz  z  }|}Œ£dS )a  
    Render *string* with *font*.

    For each character in *string*, yield a LayoutItem instance. When such an instance
    is yielded, the font's glyph is set to the corresponding character.

    Parameters
    ----------
    string : str
        The string to be rendered.
    font : FT2Font
        The font.
    kern_mode : Kerning
        A FreeType kerning mode.

    Yields
    ------
    LayoutItem
    r   Né@   g        )Úflagsi   )
Ú_get_fontmapÚgetÚget_char_indexÚordÚget_kerningÚ
load_glyphr   Ú
NO_HINTINGr   ÚlinearHoriAdvance)ÚstringÚfontr3   r   Úprev_glyph_idxÚchar_to_fontÚ	base_fontr   r   ÚkernÚglyphs              r   ÚlayoutrF   .   sø   è è € ð( 	
€AØ€NØ×$Ò$ VÑ,Ô,€LØ€IØð #ð #ˆà×Ò  iÑ0Ô0ˆØ×'Ò'­¨D©	¬	Ñ2Ô2ˆ	ð Ð)ð ×!Ò! .°)¸YÑGÔGÈ"ÑLÐLØ/1ð 	ð 	
ˆT‰	ˆØ—’ 	µÔ1EÑFÔFˆÝ˜˜t Y°°4Ñ8Ô8Ð8Ð8Ð8Ø	ˆUÔ$ uÑ,Ñ,ˆØ"ˆˆð#ð #r   )Ú__doc__Ú
__future__r   ÚdataclassesÚ r   Úft2fontr   r   r   Ú	dataclassr   r2   ÚDEFAULTrF   r   r   r   ú<module>rN      sà   ððð ð #Ð "Ð "Ð "Ð "Ð "à Ð Ð Ð à Ð Ð Ð Ð Ð Ø 0Ð 0Ð 0Ð 0Ð 0Ð 0Ð 0Ð 0Ð 0Ð 0ð €Ô˜dÐ#Ñ#Ô#ðð ð ð ð ñ ô ñ $Ô#ððHð Hð Hð0 '.¤oð $#ð $#ð $#ð $#ð $#ð $#ð $#r   