o
    h
                     @   s6   d dl Z ddlmZmZ dZdd ZG dd dZdS )	    N   )Image_binaryi   c                 C   s.   |D ]}|dk r|d7 }|  t| qdS )z0Write network order (big-endian) 16-bit sequencer   i   N)writer   Zo16be)fpvaluesv r	   T/var/www/html/magazine_api/magazine_env/lib/python3.10/site-packages/PIL/FontFile.pyputi16   s
   r   c                   @   s4   e Zd ZdZdZdd Zdd Zdd Zd	d
 ZdS )FontFilez)Base class for raster font file handlers.Nc                 C   s   i | _ d gd | _d S )N   )infoglyph)selfr	   r	   r
   __init__&   s   zFontFile.__init__c                 C   s
   | j | S )N)r   )r   Zixr	   r	   r
   __getitem__+   s   
zFontFile.__getitem__c                 C   s  | j rdS d } }}d}| D ]4}|rC|\}}}}	t||d |d  }||d |d   }|tkr>|d7 }|d |d  }t||}q|}
|| }|
dkrT|dkrTdS || _td|
|f| _ dgd | _d }}tdD ]Y}| | }|r|\}}}}	|d |d  }||}}|| }|tkrd|| }}||}}|}|d | |d | |d | |d | f}| j |		|| |||f| j|< qndS )	zCreate metrics and bitmapNr   r          1r   )
bitmapmaxWIDTHysizer   newmetricsrangeZpastecrop)r   hwZmaxwidthlinesr   ddstsrcZimZxsizer   xyixxZx0Zy0sr	   r	   r
   compile.   sL   


,zFontFile.compilec                 C   s   |    | jtj|d d d ttj|d d dF}|d |d| j d	d	 |d
 t
dD ]!}| j| }|sNt|dgd  q<t||d |d  |d   q<W d   dS 1 siw   Y  dS )z	Save fontr   z.pbmZPNGz.pilwbs   PILfont
z;;;;;;z;
asciis   DATA
r   
   r   r   N)r*   r   saveospathsplitextopenr   r   encoder   r   r   )r   filenamer   idmr	   r	   r
   r.   ]   s   


 "zFontFile.save)	__name__
__module____qualname____doc__r   r   r   r*   r.   r	   r	   r	   r
   r   !   s    /r   )r/   r   r   r   r   r   r   r	   r	   r	   r
   <module>   s
   