
    &h	                         S r / SQrSSKJrJrJr  SSKJrJrJ	r
  SSKJr  SSKJrJrJr  SSKJr   " S S	\5      r\rS
 r	SS jrCCCg)zDpygame module for loading and rendering fonts (freetype alternative))Fontinitquitget_default_fontget_initSysFont
match_font	get_fonts    )r   r   get_default_resolution)r   r   r   )_internal_mod_init)r   r	   r   )encode_file_pathc                      ^  \ rS rSrSr\" \5      r\" \5      r	\" \
" 5       5      rSrSrSU 4S jjrSU 4S jjrS rS r\" \\5      rS	 rS
 r\" \\5      rS rS rS rS rS rS rS rS rSrU =r $ )r      zFont(filename, size) -> Font
Font(object, size) -> Font
create a new Font object from a file (freetype alternative)

This Font type differs from font.Font in that it can render glyphs
for Unicode code points in the supplementary planes (> 0xFFFF).
     c                   > [        US5      n[        U[        5      (       a   U R                  U[        5      nOUn[        U[
        5      (       a  X0R                  :X  a  S nUc%  [        U R                  5       S-  5      nUS:X  a  SnOSn[        TU ])  XUS9  SU l        SU l        SU l        SU l        SU l        S	U l        g ! [         a    Sn Nf = f)
N    g      ?r
   )size
resolutiongUUUUUU?FTg      ?)max
isinstancestr_Font__encode_file_path
ValueErrorbytes_Font__default_fontint_Font__get_default_resolutionsuper__init__strengthkerningoriginpaducs4underline_adjustment)selffiler   bfiler   	__class__s        E/var/www/auris/envauris/lib/python3.13/site-packages/pygame/ftfont.pyr!   Font.__init__%   s    4|dC  //jA EeU##1D1D(DD<T::<vEFJQ
JZ@"	$'!%  s   C CCc                 R  > Uc  Sn[        U[        5      (       a  U R                  U;   a  [        S5      e[        U[        5      (       a  U R
                  U;   a  [        S5      eU R                  n[        U5      U l         [        TU ]%  XU5      u  pgUXPl        $ ! XPl        f = f)zUrender(text, antialias, color, background=None) -> Surface
draw text on a new Surfacer   z&A null character was found in the text)
r   r   _Font__unullr   r   _Font__bnullantialiasedboolr    render)	r(   text	antialiascolor
backgroundsave_antialiaseds_r+   s	           r,   r3   Font.render>   s     <DdC  T\\T%9EFFdE""t||t';EFF 	  	?	07>$z:DA//s   B B&c                 $    [        U5      U l        g)z9set_bold(bool) -> None
enable fake rendering of bold textN)r2   wider(   values     r,   set_boldFont.set_boldR   s     K	    c                     U R                   $ )z6get_bold() -> bool
check if text will be rendered bold)r=   r(   s    r,   get_boldFont.get_boldX   s     yyrB   c                 $    [        U5      U l        g)z=set_italic(bool) -> None
enable fake rendering of italic textN)r2   obliquer>   s     r,   
set_italicFont.set_italic`   s     E{rB   c                     U R                   $ )z>get_italic() -> bool
check if the text will be rendered italic)rH   rD   s    r,   
get_italicFont.get_italicf   s     ||rB   c                 $    [        U5      U l        g)zIset_underline(bool) -> None
control if text is rendered with an underlineN)r2   	underliner>   s     r,   set_underlineFont.set_underlinen   s     erB   c                     U R                   $ )zLget_underline() -> bool
check if the text will be rendered with an underline)rO   rD   s    r,   get_underlineFont.get_underlinet   s     ~~rB   c                 $    U R                  U5      $ )zOmetrics(text) -> list
Gets the metrics for each character in the passed string.)get_metricsr(   r4   s     r,   metricsFont.metricsz   s     %%rB   c                 "    U R                  5       $ )z.get_ascent() -> int
get the ascent of the font)get_sized_ascenderrD   s    r,   
get_ascentFont.get_ascent   s     &&((rB   c                 "    U R                  5       $ )z0get_descent() -> int
get the descent of the font)get_sized_descenderrD   s    r,   get_descentFont.get_descent   s     ''))rB   c                 J    U R                  5       U R                  5       -
  S-   $ )z.get_height() -> int
get the height of the fontr   )r[   r_   rD   s    r,   
get_heightFont.get_height   s&     &&(4+C+C+EEIIrB   c                 "    U R                  5       $ )z9get_linesize() -> int
get the line space of the font text)get_sized_heightrD   s    r,   get_linesizeFont.get_linesize   s     $$&&rB   c                 8    U R                  U5      R                  $ )zQsize(text) -> (width, height)
determine the amount of space needed to render text)get_rectr   rW   s     r,   r   	Font.size   s     }}T"'''rB   )
r1   r#   rH   r$   r%   r"   r&   rO   r'   r=   )NN)!__name__
__module____qualname____firstlineno____doc__staticmethodr   r   r   r   r   r   r/   r0   r!   r3   r@   rE   propertyboldrI   rL   italicrP   rS   rX   r\   r`   rc   rg   r   __static_attributes____classcell__)r+   s   @r,   r   r      s     &&67+,BC%&6&89NGG(20(  Hh'D# j*-F%&)*J'( (rB   r   c                      [        5       $ )z9get_init() -> bool
true if the font module is initialized)	_get_init rB   r,   r   r      s     ;rB   Nc                 (    Uc  S n[        XX#U5      $ )a  pygame.ftfont.SysFont(name, size, bold=False, italic=False, constructor=None) -> Font
Create a pygame Font from system font resources.

This will search the system fonts for the given font
name. You can also enable bold or italic styles, and
the appropriate system font will be selected if available.

This will always return a valid Font object, and will
fallback on the builtin pygame font if the given font
is not found.

Name can also be an iterable of font names, a string of
comma-separated font names, or a bytes of comma-separated
font names, in which case the set of names will be searched
in order. Pygame uses a small set of common font aliases. If the
specific font you ask for is not available, a reasonable
alternative may be used.

If optional constructor is provided, it must be a function with
signature constructor(fontpath, size, bold, italic) which returns
a Font instance. If None, a pygame.ftfont.Font object is created.
c                 `    [        X5      nUR                  U5        UR                  U5        U$ rm   )r   r@   rI   )fontpathr   ru   rv   fonts        r,   constructorSysFont.<locals>.constructor   s)    'DMM$OOF#KrB   )_SysFont)namer   ru   rv   r   s        r,   r   r      s     . 	 Dk::rB   )r
   r
   N)rr   __all__pygame._freetyper   r   _Fontr   r   r   r   rz   r   pygame.sysfontr   r	   r   r   pygamer   FontTyper{   rB   r,   <module>r      sV    J	 I H J J / E E #G(5 G(T ;D 
!#3rB   