
    h                     4    d Z dZdZdZdZdZdZdZdZd	Z	dd
Z
y))pil2picti            i               c                    !"#$ ddl m$ ddlm} t	        |      }t	        |      } |       fd fd}$fd$fd}	fd}
|d	z  } |t
                d        |
dd||         t                d
        t                |	d        |
dddd        |
| d|d        |d        d        t                d        |
dd||        |dk7  re t                |dz	  dz  dz  dz          |dz	  dz  dz  dz          |dz  dz  dz          d        d        d        d        t                | dz          |
dd||         d        d        |	d        |
dddd        d        d        d        d        |	d        |	d        |	d        |	d        d        |dz
         t        |      D ]L  } |        |d	|z     dz  dz          |d	|z  dz      dz  dz          |d	|z  dz      dz  dz         N  |
dd||         |
dd||         |dk7  rdnd       d}t               }t               }|j                  !|j                  }|j                  }| dz
  }| dk\  r}d}n fd}d}d "d !"#fd}t        |      D ]  }|| z  }t        |||| z          |d d  t               |d d  dx#|}|d   |}|dk\  r*||   k(  r#dz  #n |        |dz  }||   |dz  }|dk\  r* |        dkD  r !              t	        |      }|||z   z  } ||        |        j!                  t#        |              |dz  r  d        t$               j'                         }|t
        z
  }j)                  t
                |dz         j+                         S )N    )pack)BytesIOc                 (    j                  |        y Nwrite)c__bs__s    B/home/dcms/DCMS/lib/python3.12/site-packages/rlPyCairo/pil2pict.pyputczpil2pict.<locals>.putc   s    Q    c                 .    j                  | dz         y )N    r   )nr   s    r   putFillzpil2pict.<locals>.putFill   s    QwYr   c                 6    j                   d|              y )Nz>Hr   vr   struct_packs    r   putShortzpil2pict.<locals>.putShort       [a()r   c                 6    j                   d|              y )Nz>lr   r   s    r   putLongzpil2pict.<locals>.putLong    r    r   c                 F     |         |        |        |       y r    )s0s1s2s3r   s       r   putRectzpil2pict.<locals>.putRect#   s    r      i  H         
      r   i        d   i   r         c                 (     t        | g            S r   )bytes)r   r   s    r   <lambda>zpil2pict.<locals>.<lambda>t   s    Ds, r   c                     d| z
  S )Ni  r$   r   s    r   r8   zpil2pict.<locals>.<lambda>w   s
    CE r   c                     | dz
  S )Nr   r$   r:   s    r   r8   zpil2pict.<locals>.<lambda>x   s
    AaC r   c                     dk  r2dkD  r*        dz  dz  dk(  r d       dz  dkD  r*dy dkD  r               ddkD  r-dkD  rdn}           |       dz         | z  dkD  r-dy )Nr*   r   r      r   r   r$   )repcbcountctcr_appendrtcruns    r   endrunzpil2pict.<locals>.endrunz   s    7a%q
#:SMSLE a% CQwU$Ea% 3YcCS$'s
	 a%
 Cr   r   )structr   ior   len	headerLen
picVersionheaderOpclipRgn
backgroundPackBitsRectrange	bytearrayappendextendreverser   r7   EndOfPicturetellseekgetvalue)%colsrowspixelspalettetcr   npixelscolorsr   r"   r)   iocdrr_extend	r_reversecols1putRLenrlirE   jj0kpclblpr   r?   r@   rA   r   r   rB   rC   rD   r   s%                              @@@@@@@@@@r   r   r      s   *&kG\FYF ** qLF I QKAq$ ZVXBKB2qD!T1AJ TNWRLAq$	2vBFD=%'#-.BE4<&,-2d7E/C'( \TF]Aq$QKQKAJB2qQKQKQKQKAJAJAJAJQKVAX 6] .'!A#,u$s*+'!A#a%.&,-'!A#a%.&,-	. Aq$Aq$BeA& 
BAAxxHxxH		I1HESy,
C
C , 4[ tV2d7+,!{!erUdQqTzqFA1BFA d 	7SZ V
bfU1X58 
AvtG}\	B	iB
KK	R&[??r   N)r+   )__all__rI   maxLenrJ   rM   rK   rL   rN   rT   	MAXCOLORSr   r$   r   r   <module>rq      sC   
 		 

	
	cr   