3 }\ @sDddlmZddlZddlmZmZdZddZGdd d eZ dS) )print_functionN)Image_binaryi cCs2x,|D]$}|dkr|d7}|jtj|qWdS)Nri)writerZo16be)fpvaluesvr d/private/var/folders/pf/wv4htv3x0qs2c2mp0dnn0kchsvlck3/T/pip-install-i584jbuk/Pillow/PIL/FontFile.pyputi16s r c@s0eZdZdZddZddZddZdd ZdS) FontFileNcCsi|_dgd|_dS)N)infoglyph)selfr r r __init__(szFontFile.__init__cCs |j|S)N)r)rixr r r __getitem__-szFontFile.__getitem__cCs|jr dSd}}}d}xp|D]h}|r |\}}}} t||d|d}||d|d}|tkr~|d7}|d|d}t||}q W|} ||} | dkr| dkrdS||_tjd| | f|_dgd|_d} } xtdD]}||}|r|\}}}} |d|d}| | }}| |} | tkrFd| |} } | | }}|} |d||d||d||d|f}|jj| j |||||f|j|<qWdS) zCreate metrics and bitmapNrr1r) bitmapmaxWIDTHysizernewmetricsrangeZpasteZcrop)rhwZmaxwidthlinesrddstsrcZimZxsizerxyiZxxZx0Zy0sr r r compile0sF        ,zFontFile.compilec Cs|j|jjtjj|dddttjj|ddd}|jd|jd|jj d|jd xNt d D]B}|j |}|st |dgd qvt ||d|d |d qvWWdQRXdS)z Save fontrz.pbmZPNGz.pilwbsPILfont z ;;;;;;%d; asciisDATA r rrN) r*rsaveospathsplitextopenrrencoderrr )rfilenameridmr r r r._s   z FontFile.save)__name__ __module__ __qualname__rrrr*r.r r r r r $s /r ) __future__rr/rrrrr objectr r r r r s