î
úÙ XÚ
  ã               @   sN   d  d l  Z  d  d l m Z m Z d Z d d „  Z Gd d „  d e ƒ Z d S)é    N)ÚImageÚ_binaryi   c             C   sD   x= | D]5 } | d k  r& | d 7} n  |  j  t j | ƒ ƒ q Wd  S)Nr   i   )Úwriter   Zo16be)ÚfpÚvaluesÚv© r   úI/home/ubuntu/projects/ifolica/lib/python3.4/site-packages/PIL/FontFile.pyÚputi16   s    r
   c               @   sF   e  Z d  Z d Z d d „  Z d d „  Z d d „  Z d d	 „  Z d S)
ÚFontFileNc             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   Úixr   r   r	   Ú__getitem__+   s    zFontFile.__getitem__c             C   s"  |  j  r d Sd } } } d } x” |  D]Œ } | r( | \ } } } }	 t | | d | d ƒ } | | d | d } | t k r¢ | d 7} | d | d } n  t | | ƒ } q( q( W| }
 | | } |
 d k rä | d k rä d S| |  _ t j d |
 | f ƒ |  _  d g d |  _ d } } xù t d ƒ D]ë } |  | } | r/| \ } } } }	 | d | d } | | } } | | } | t k r³d | | } } | | } } | } n  | d | | d | | d | | d | f } |  j  j |	 j	 | ƒ | ƒ | | | f |  j | <q/q/Wd S)	zCreate metrics and bitmapNr   é   é   é   Ú Ú1r   )
ÚbitmapÚmaxÚWIDTHÚysizer   ÚnewÚmetricsÚrangeZpasteZcrop)r   ÚhÚwZmaxwidthÚlinesr   ÚdÚdstÚsrcZimZxsizer   ÚxÚyÚiZxxZx0Zy0Úsr   r   r	   Úcompile.   sF    	

	


	2zFontFile.compilec             C   sû   |  j  ƒ  |  j j t j j | ƒ d d d ƒ t t j j | ƒ d d d ƒ } | j d ƒ | j d |  j j	 d ƒ ƒ | j d	 ƒ x_ t
 d
 ƒ D]Q } |  j | } | sÈ t | d g d ƒ q˜ t | | d | d | d ƒ q˜ W| j ƒ  d S)z	Save fontr   z.pbmZPNGz.pilÚwbs   PILfont
z
;;;;;;%d;
Úasciis   DATA
r   é
   r   r   N)r)   r   ÚsaveÚosÚpathÚsplitextÚopenr   r   Úencoder   r   r
   Úclose)r   Úfilenamer   ÚidÚmr   r   r	   r-   ^   s    
'#%zFontFile.save)Ú__name__Ú
__module__Ú__qualname__r   r   r   r)   r-   r   r   r   r	   r   "   s
   0r   )r.   ZPILr   r   r   r
   Úobjectr   r   r   r   r	   Ú<module>   s   