§
    ¢”jp  ã                  ó`   — d dl mZ d dlZd dlmZ ddlmZmZmZ dZ	dd„Z
 G d„ d¦  «        ZdS )é    )ÚannotationsN)ÚBinaryIOé   )ÚImageÚ	ImageFontÚ_binaryi   Úfpr   Úvaluesú7tuple[int, int, int, int, int, int, int, int, int, int]ÚreturnÚNonec                ót   — |D ]4}|dk     r|dz  }|                       t          j        |¦  «        ¦  «         Œ5dS )z0Write network order (big-endian) 16-bit sequencer   é   N)Úwriter   Úo16be)r	   r
   Úvs      ú[/var/www/finuniver-perm.ru/html/portfolio/venv/lib/python3.11/site-packages/PIL/FontFile.pyÚputi16r      sN   € ð ð #ð #ˆØˆqŠ5ˆ5Ø�‰JˆAØ
�Š•”˜qÑ!Ô!Ñ"Ô"Ð"Ð"ð#ð #ó    c                  óR   — e Zd ZU dZdZded<   dd„Zdd„Zdd„Zdd„Z	dd„Z
dd„ZdS )ÚFontFilez)Base class for raster font file handlers.NzImage.Image | NoneÚbitmapr   r   c                ó*   — i | _         d gdz  | _        d S )Né   )ÚinfoÚglyph)Úselfs    r   Ú__init__zFontFile.__init__)   s   € Ø.0ˆŒ	ð ˆF�S‰Lð 	Œ
ˆ
ˆ
r   ÚixÚintú`tuple[tuple[int, int], tuple[int, int, int, int], tuple[int, int, int, int], Image.Image] | Nonec                ó   — | j         |         S )N)r   )r   r   s     r   Ú__getitem__zFontFile.__getitem__5   s   € ð Œz˜"Œ~Ðr   c                ó  — | j         rdS dx}x}}d}| j        D ]o}|rk|\  }}}}	t          ||d         |d         z
  ¦  «        }||d         |d         z
  z   }|t          k    r|dz  }|d         |d         z
  }t          ||¦  «        }Œp|}
||z  }|
dk    r|dk    rdS || _        t          j        d|
|f¦  «        | _         dgdz  | _        dx}}t          d¦  «        D ]ª}| |         }|rž|\  }}}}	|d         |d         z
  }||}}||z   }|t          k    rd||z   }}||}}|}|d         |z   |d         |z   |d         |z   |d         |z   f}| j          	                    |	 
                    |¦  «        |¦  «         |||f| j        |<   Œ«dS )zCreate metrics and bitmapNr   r   é   é   Ú1r   )r   r   ÚmaxÚWIDTHÚysizer   ÚnewÚmetricsÚrangeÚpasteÚcrop)r   ÚhÚwÚmaxwidthÚlinesr   ÚdÚdstÚsrcÚimÚxsizer*   ÚxÚyÚiÚxxÚx0Úy0Úss                      r   ÚcompilezFontFile.compile@   sú  € ð Œ;ð 	ØˆFð ÐˆÐˆA�ØˆØ”Zð 	,ð 	,ˆEØð ,Ø"'‘��3˜˜RÝ˜˜3˜qœ6 C¨¤F™?Ñ+Ô+�Ø˜˜Qœ # a¤&™Ñ)�Ø•u’9�9Ø˜Q‘J�EØ˜Aœ  Q¤™�AÝ˜x¨Ñ+Ô+�øàˆØ˜‘	ˆà�AŠ:ˆ:˜% 1š*˜*ØˆFàˆŒ
õ ”i  e¨U ^Ñ4Ô4ˆŒð ˆF�S‰Lð 	Œð ˆ	ˆˆAÝ�s‘”ð 	,ð 	,ˆAØ˜”GˆEØð ,Ø"'‘��3˜˜RØ˜”V˜c !œf‘_�Ø˜A�B�Ø˜‘F�Ø•u’9�9Ø˜a !™e�q�AØ ˜�BØ�AØ˜”F˜R‘K  Q¤¨"¡¨c°!¬f°r©k¸3¸q¼6ÀB¹;ÐF�Ø”×!Ò! "§'¢'¨#¡,¤,°Ñ2Ô2Ð2Ø"# S¨! )�”˜Q‘øð	,ð 	,r   Úbytesc                óV  — g }t          d¦  «        D ]T}| j        |         }|r.|                     |d         |d         z   |d         z   ¦  «         Œ?|                     d¦  «         ŒUt          ¦   «         }|D ]$}|dk     r|dz  }|t	          j        |¦  «        z  }Œ%t          |¦  «        S )Nr   r   r   r&   )
r   r   r   r   r   r   r   r   r   r   r   )r-   r,   ÚextendÚ	bytearrayr   r   rA   )r   r
   r;   ÚmÚdatar   s         r   Ú_encode_metricszFontFile._encode_metricsq   sº   € ØˆÝ�s‘”ð 	)ð 	)ˆAØ”˜Q”ˆAØð )Ø—’˜a œd Q q¤T™k¨A¨a¬DÑ0Ñ1Ô1Ð1Ð1à—’˜iÑ(Ô(Ð(Ð(å‰{Œ{ˆØð 	%ð 	%ˆAØ�1ŠuˆuØ�U‘
�Ø•G”M !Ñ$Ô$Ñ$ˆDˆDÝ�T‰{Œ{Ðr   ÚfilenameÚstrc                ó‚  — |                       ¦   «          | j        sd}t          |¦  «        ‚| j                             t          j                             |¦  «        d         dz   d¦  «         t          t          j                             |¦  «        d         dz   d¦  «        5 }|                     d¦  «         |                     d| j	        › d	� 
                    d
¦  «        ¦  «         |                     d¦  «         |                     |                      ¦   «         ¦  «         ddd¦  «         dS # 1 swxY w Y   dS )z	Save fontúNo bitmap createdr   z.pbmÚPNGz.pilÚwbs   PILfont
z;;;;;;z;
Úasciis   DATA
N)r@   r   Ú
ValueErrorÚsaveÚosÚpathÚsplitextÚopenr   r*   ÚencoderG   )r   rH   Úmsgr	   s       r   rP   zFontFile.save�   s]  € ð 	�Š‰Œˆð Œ{ð 	"Ø%ˆCÝ˜S‘/”/Ð!ØŒ×Ò�œ×)Ò)¨(Ñ3Ô3°AÔ6¸Ñ?ÀÑGÔGÐGõ •"”'×"Ò" 8Ñ,Ô,¨QÔ/°&Ñ8¸$Ñ?Ô?ð 	-À2Ø�HŠH�\Ñ"Ô"Ð"Ø�HŠHÐ-˜dœjÐ-Ð-Ð-×4Ò4°WÑ=Ô=Ñ>Ô>Ð>Ø�HŠH�YÑÔÐØ�HŠH�T×)Ò)Ñ+Ô+Ñ,Ô,Ð,ð		-ð 	-ð 	-ñ 	-ô 	-ð 	-ð 	-ð 	-ð 	-ð 	-ð 	-ð 	-øøøð 	-ð 	-ð 	-ð 	-ð 	-ð 	-s   Â$BD4Ä4D8Ä;D8úImageFont.ImageFontc                óÞ   — |                       ¦   «          | j        sd}t          |¦  «        ‚t          j        ¦   «         }|                     | j        |                      ¦   «         ¦  «         |S )zConvert to ImageFontrK   )r@   r   rO   r   Ú_loadrG   )r   rV   Ú	imagefonts      r   Úto_imagefontzFontFile.to_imagefont“   sd   € ð 	�Š‰Œˆð Œ{ð 	"Ø%ˆCÝ˜S‘/”/Ð!åÔ'Ñ)Ô)ˆ	Ø�Š˜œ T×%9Ò%9Ñ%;Ô%;Ñ<Ô<Ð<ØÐr   )r   r   )r   r    r   r!   )r   rA   )rH   rI   r   r   )r   rW   )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   Ú__annotations__r   r#   r@   rG   rP   r[   © r   r   r   r   $   s¦   € € € € € € Ø3Ð3à!%€FÐ%Ð%Ð%Ñ%ð
ð 
ð 
ð 
ð	ð 	ð 	ð 	ð/,ð /,ð /,ð /,ðbð ð ð ð -ð -ð -ð -ð$ð ð ð ð ð r   r   )r	   r   r
   r   r   r   )Ú
__future__r   rQ   Útypingr   Ú r   r   r   r)   r   r   ra   r   r   ú<module>re      s§   ðð  #Ð "Ð "Ð "Ð "Ð "à 	€	€	€	Ø Ð Ð Ð Ð Ð à 'Ð 'Ð 'Ð 'Ð 'Ð 'Ð 'Ð 'Ð 'Ð 'à€ð#ð #ð #ð #ð{ð {ð {ð {ð {ñ {ô {ð {ð {ð {r   