o
    ¬+ ZÁ  ã                   @   s  d Z dZddlZddlZdddddœZi dd	“d
d“dd“dd“dd“dd“dd“dd“dd“dd“dd“dd“d d!“d"d!“d#d!“d$d!“d%d&“d&d&d&d'œ¥Zi Zee ¡ ƒD ]Z	ee	  
¡ Zeevrfe	ee< e	d  
¡ Zeevrte	ee< qVd(d)„ Zd*d+„ Zd,d-„ ZdS ).z3.3.0aœ  Utilities to associate bold and italic versions of fonts into families

Bold, italic and plain fonts are usually implemented in separate disk files;
but non-trivial apps want <b>this</b> to do the right thing.   We therefore
need to keep 'mappings' between the font family name and the right group
of up to 4 implementation fonts to use.

Most font-handling code lives in pdfbase, and this probably should too.

é    NÚtimesÚ	helveticaÚcourier)ÚserifÚ	sansserifÚ
monospacedÚarial)r   r   r   zTimes-Roman)r   é   r   z
Times-Bold)r   r   r	   zTimes-Italic)r   r	   r	   zTimes-BoldItalic)r   r   r   ÚCourier)r   r	   r   zCourier-Bold)r   r   r	   zCourier-Oblique)r   r	   r	   zCourier-BoldOblique)r   r   r   Ú	Helvetica)r   r	   r   zHelvetica-Bold)r   r   r	   zHelvetica-Oblique)r   r	   r	   zHelvetica-BoldOblique)Úsymbolr   r   ÚSymbol)r   r	   r   )r   r   r	   )r   r	   r	   )Úzapfdingbatsr   r   ÚZapfDingbats))r   r	   r   )r   r   r	   )r   r	   r	   c                 C   s$   |   ¡ } | tv rt|  S td|  ƒ‚)z(ps fontname to family name, bold, italicz-Can't map determine family/bold/italic for %s)ÚlowerÚ
_ps2tt_mapÚ
ValueError)Úpsfn© r   úE/var/www/html/env/lib/python3.10/site-packages/reportlab/lib/fonts.pyÚps2ttJ   s   r   c                 C   sd   |   ¡ ||f}|tv rt| S t|d ƒ\} }}| ||B ||B f}|tv r)t| S td| ||f ƒ‚)z+family name + bold & italic to ps font namer   z:Can't find concrete font for family=%s, bold=%d, italic=%d)r   Ú
_tt2ps_mapr   r   )ÚfnÚbÚiÚKÚb1Úi1r   r   r   Útt2psQ   s   r   c                 C   s&   |   ¡ ||f}|t|< |t|  ¡ < dS )z,allow a custom font to be put in the mappingN)r   r   r   )ÚfaceÚboldÚitalicÚpsnameÚkr   r   r   Ú
addMapping]   s   r$   )Ú__version__Ú__doc__ÚsysÚosÚ_family_aliasr   r   ÚsortedÚkeysr#   r   Úvr   r   r$   r   r   r   r   Ú<module>   sv   
üþýüûùø	÷
öôóòñîíìëèå€