
    h                    b    S SK Jr  S SKrS SKJr  SSKJrJr  Sr      S
S jr	 " S S	5      r
g)    )annotationsN)BinaryIO   )Image_binaryi   c                v    U H3  nUS:  a  US-  nU R                  [        R                  " U5      5        M5     g)z0Write network order (big-endian) 16-bit sequencer   i   N)writer   o16be)fpvaluesvs      >/var/www/html/env/lib/python3.13/site-packages/PIL/FontFile.pyputi16r      s3     q5JA
q!"     c                  T    \ rS rSr% SrSrS\S'   SS jr  SS jrSS jr	SS	 jr
S
rg)FontFile$   z)Base class for raster font file handlers.NzImage.Image | Nonebitmapc                (    0 U l         S /S-  U l        g )N   )infoglyph)selfs    r   __init__FontFile.__init__)   s    .0	 FSL 	
r   c                     U R                   U   $ )N)r   )r   ixs     r   __getitem__FontFile.__getitem__5   s     zz"~r   c                   U R                   (       a  gS=n=p#SnU R                   HW  nU(       d  M  Uu  pgp[        XS   US   -
  5      nX(S   US   -
  -   nU[        :  a  US-  nUS   US   -
  n[        X25      nMY     Un
XA-  nU
S:X  a  US:X  a  gXl        [
        R                  " SX45      U l         S/S-  U l        S=p[        S5       H  nX   nU(       d  M  Uu  pgpUS   US   -
  nXnnX-   nU[        :  a
  SX-   pXnnUnUS   U-   US   U-   US   U-   US   U-   4nU R                   R                  U	R                  U5      U5        XgU4U R                  U'   M     g)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   compileFontFile.compile@   s    ;; AZZEu"'q6CF?+Q#a&)u9QJEAQAx+   	A:%1*
 iie^4 FSL 	 	sAGEu"'Vc!f_BFu9aeqBAFRKQ"c!frk3q6B;F!!"''#,2"#!)Q r   c                   U R                  5         U R                  (       d  Sn[        U5      eU R                  R                  [        R
                  R                  U5      S   S-   S5        [        [        R
                  R                  U5      S   S-   S5       nUR                  S5        UR                  SU R                   S	3R                  S
5      5        UR                  S5        [        S5       HA  nU R                  U   nU(       d  [        US5        M'  [        X5S   US   -   US   -   5        MC     SSS5        g! , (       d  f       g= f)z	Save fontzNo bitmap createdr   z.pbmPNGz.pilwbs   PILfont
z;;;;;;z;
asciis   DATA
r   )
r   r   r   r   r   r   r   r   r   r   r   r"   N)r<   r   
ValueErrorsaveospathsplitextopenr	   r&   encoder)   r(   r   )r   filenamemsgr   idms         r   rC   FontFile.saveq   s    	 {{%CS/!))(3A6?G "''""8,Q/&8$?2HH\"HHvdjj\-44W=>HHYCjLL$2y)2tad{QqT12 !	 @??s   B!E
E)r   r   r   r(   r&   )returnNone)r   intrN   z`tuple[tuple[int, int], tuple[int, int, int, int], tuple[int, int, int, int], Image.Image] | None)rI   strrN   rO   )__name__
__module____qualname____firstlineno____doc__r   __annotations__r   r   r<   rC   __static_attributes__ r   r   r   r   $   s/    3!%F%
			/,b3r   r   )r   r   r   z7tuple[int, int, int, int, int, int, int, int, int, int]rN   rO   )
__future__r   rD   typingr    r   r   r%   r   r   rY   r   r   <module>r]      sA     # 	  ##Q#	#b3 b3r   